51单片机快速入门之 LED点阵 结合74hc595 的应用 2024/10/16

news2024/10/17 7:12:03

51单片机快速入门之 LED点阵 结合74hc595 的应用 

74HC595是一种常用的数字电路芯片,具有串行输入并行输出的功能。它主要由两个部分组成:一个8位的移位寄存器和一个8位的存储寄存器。数据通过串行输入管脚(DS)逐位输入,然后通过并行输出管脚(Q0-Q7)并行输出。74HC595还具有一个使能控制管脚(OE),用于控制输出的使能和禁用状态。

以下是74HC595的一些主要特点和功能:

  1. 串行输入并行输出:74HC595可以将串行数据转换为并行数据输出,适用于需要扩展输出端口的应用场合。

  2. 级联功能:通过级联多个74HC595,可以扩展输出端口的数量,从而实现更多的输出功能。

  3. 节省单片机引脚资源:使用74HC595可以减少单片机的引脚使用数量,提高系统的可靠性和稳定性。

  4. 简化电路设计:使用74HC595可以简化电路设计,减少电路中的逻辑门数量和电路复杂度。

  5. 提高数据传输效率:通过串行方式输入数据,然后通过并行方式输出,可以提高数据传输的效率。

取模软件为STC官网下载工具内的 

程序代码: 

#include <STC89C5xRC.H>
sbit dspH =P1^6   ;
sbit mcpH= P1^7   ;
sbit scpH =P1^5   ;
sbit dspL= P1^1    ;
sbit mcpL= P1^0    ;
sbit scpL= P1^2     ;
void delay(unsigned int t);
void pH(unsigned char date);//控制行
void pL(unsigned char dateL);//控制列
void pHPL(unsigned char datH,unsigned char datL);//同时控制行和列


void main()
{
    unsigned char y[]= {0xC3,0xBD,0x7E,0x7E,0x7E,0x7E,0xBD,0xC3,   //0
                        0xE7,0xC7,0xE7,0xE7,0xE7,0xE7,0x81,0x81,      //1
                        0xC1,0xDD,0xF9,0xE3,0xCF,0x9F,0xBF,0x81,        //2
                        0x83,0xFB,0xFB,0x83,0xFB,0xFB,0x83,0xFF,          //3
                        0xFF,0xB7,0xB7,0xB7,0xB7,0x81,0xF7,0xF7,            //4
                        0xFF,0xC3,0xDF,0xC3,0xFB,0xFB,0xC3,0xFF,              //5
                        0xF7,0xEF,0xDF,0xBF,0x83,0xBB,0xBB,0x83,               //6
                        0x83,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFF,                //7
                        0xC1,0xDD,0xDD,0xC1,0xC1,0xDD,0xDD,0xC1,                 //8
                        0xC1,0xDD,0xDD,0xC1,0xFD,0xFD,0xFD,0xC1                   //9
                       };
    unsigned char x=0,j=0;
    unsigned char datt=0x80;

    while(1) {

        for(; j<8; j++) {
            pHPL(datt,y[x]) ;    //第一行
            delay(1000);
            pHPL(0x00,0XFF);//复位
            datt>>=1;
            x+=1;

        }
        if(j==8) {
            datt=0x80;
            j=0;
        }
        if(x==80) {
            x=0;
        }









    }
}

void pH(unsigned char date)
{
    unsigned char i;
    for(i=0; i<8; i++) {
        mcpH=0;
        dspH=date&0x80;
        mcpH=1;
        date<<=1;


    }
    scpH=0;
    delay(100);
    scpH=1;
}

void pL(unsigned char dateL)
{
    unsigned char i;
    for(i=0; i<8; i++) {
        mcpL=0;
        dspL=dateL&0x80;
        mcpL=1;
        dateL<<=1;


    }
    scpL=0;
    delay(100);
    scpL=1;



}

void pHPL(unsigned char datH,unsigned char datL)
{

    pH(datH);//行
    pL(datL);//列


}



void delay(unsigned int t)
{
    while(t--);

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2216885.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

unity Gpu优化

不一样的视角&#xff0c;深度解读unity性能优化。unity性能优化&#xff0c;unity内存优化&#xff0c;cpu优化&#xff0c;gpu优化&#xff0c;资源优化&#xff0c;资源包、资源去重优化&#xff0c;ugui优化。 gpu优化静态批处理静态批处理原理规则静态合批的原理静态合批的…

Spring Boot视频网站:安全与可扩展性设计

4 系统设计 4.1系统概要设计 视频网站系统并没有使用C/S结构&#xff0c;而是基于网络浏览器的方式去访问服务器&#xff0c;进而获取需要的数据信息&#xff0c;这种依靠浏览器进行数据访问的模式就是现在用得比较广泛的适用于广域网并且没有网速限制要求的B/S结构&#xff0c…

Appium环境搭建、Appium连接真机

文章目录 一、安装Android SDK二、安装Appium-desktop三、安装Appium Inspector 一、安装Android SDK 首先需要安装jdk&#xff0c;这里就不演示安装jdk的过程了 SDK下载地址&#xff1a;Android SDK 下载 1、点击 Android SDK 下载 -> SKD Tools 2、选择对应的版本进行下…

mysql 慢查询日志slowlog

慢查询参数 slow log 输出示例 # Time: 2024-08-08T22:39:12.80425308:00 #查询结束时间戳 # UserHost: root[root] localhost [] Id: 83 # Query_time: 2.331306 Lock_time: 0.000003 Rows_sent: 9762500 Rows_examined: 6250 SET timestamp1723127950; select *…

云栖实录 | 智能运维年度重磅发布及大模型实践解读

本文根据2024云栖大会实录整理而成&#xff0c;演讲信息如下&#xff1a; 演讲人&#xff1a; 钟炯恩 | 阿里云智能集团运维专家 张颖莹 | 阿里云智能集团算法专家 活动&#xff1a; 2024 云栖大会 AI 可观测专场 -智能运维&#xff1a;云原生大规模集群GitOps实践 2024 …

【c++】c++11多线程开发

2 C多线程 本文是参考爱编程的大丙c多线程部分内容&#xff0c;按照自己的理解对其进行整理的一篇学习笔记&#xff0c;具体一些APi的详细说明请参考大丙老师教程。 代码性能的问题主要包括两部分的内容&#xff0c;一个是前面提到资源的获取和释放&#xff0c;另外一个就是多…

使用rabbitmq-operator在k8s集群上部署rabbitmq实例

文章目录 前言一、rabbitmq-operator二、进行部署1.部署cluster-operator2.创建自己需要的特定命名空间3.创建rabbitmq的instance4.创建nodeport访问 结果验证 前言 使用rabbitmq-operator在k8s集群上部署rabbitmq实例。时区设置为上海 一、rabbitmq-operator 官网地址&#…

数学建模算法与应用 第16章 优化与模拟方法

目录 16.1 线性规划 Matlab代码示例&#xff1a;线性规划求解 16.2 整数规划 Matlab代码示例&#xff1a;整数规划求解 16.3 非线性规划 Matlab代码示例&#xff1a;非线性规划求解 16.4 蒙特卡洛模拟 Matlab代码示例&#xff1a;蒙特卡洛模拟计算圆周率 习题 16 总结…

java代码生成器集成dubbo,springcloud详解以及微服务遐想

摘要 今天终于有了点空闲时间&#xff0c;所以更新了一下代码生成器&#xff0c;修复了用户反馈的bug&#xff0c;本次更新主要增加了dubbo和springcloud脚手架的下载功能&#xff0c;架子是本人亲自搭建&#xff0c;方便自由扩展或者小白学习使用&#xff0c;你也许会问为什么…

红日安全vulnstack (二)

目录 环境搭建 网卡设置 修改Kali网段 IP 分布 WEB渗透 Weblogin服务开启 漏洞扫描 CVE工具利用 MSF上线 内网渗透 域内信息收集 凭证横向移动 权限维持 黄金票据 参考文章 https://www.cnblogs.com/bktown/p/16904232.htmlhttps://blog.csdn.net/m0_75178803/ar…

leetcode54:螺旋矩阵

给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,2,3],[4,5,6],[7,8,9]] 输出&#xff1a;[1,2,3,6,9,8,7,4,5]示例 2&#xff1a; 输入&#xff1a;matrix [[1,2,3,…

hackmyvm-Hundred靶机

主机发现 sudo arp-scan -l 以sudo权限执行arp-scan -l 扫描并列出本地存在的机器&#xff0c;发现靶机ip为192.168.91.153 nmap扫描 端口发现 21/tcp open ftp 22/tcp open ssh 80/tcp open http web信息收集 我们先尝试一下ftp端口的匿名登录 FTP:是文件传输协议的端…

个人博客系统_测试报告

1.项目背景 基于SSM框架实现的个人博客系统&#xff0c;由五个页面构成&#xff1a;用户登录页、博客发表页、博客编辑页、博客列表页以及博客详情页。登录即可查看自己与其他用户已发布的博客&#xff0c;也可以使用自己的账号发布博客&#xff0c;通过使用Selenium定位web元…

《人工智能:CSDN 平台上的璀璨之星》

一、CSDN 上的 AI 热门话题 GPT-3 作为 CSDN 上的热门话题&#xff0c;其应用极为广泛。GPT-3 是 OpenAI 开发的一种基于 Transformer 架构的大规模预训练语言模型&#xff0c;拥有惊人的 1750 亿个参数。它具有多任务处理能力&#xff0c;能够执行多种自然语言处理任务&#x…

保护企业终端安全,天锐DLP帮助企业智能管控终端资产

为有效预防员工非法调包公司的软硬件终端资产&#xff0c;企业管理员必须建立高效的企业终端安全管控机制&#xff0c;确保能够即时洞察并确认公司所有软硬件资产的状态变化。这要求企业要有一套能够全面管理终端资产的管理系统&#xff0c;确保任何未经授权的资产变动都能被迅…

Ajax处理错误信息(处理响应报文)

<!DOCTYPE html> <html><head><meta charset"utf-8" /><title></title></head><body><form action""><div>用户名<input type"text" class"username"></div>…

【2024-10-16】某小破站w_rid参数分析

声明:该专栏涉及的所有案例均为学习使用,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!如有侵权,请私信联系本人删帖! 文章目录 一、前言二、参数分析三、代码一、前言 看一下小破站的参数加密 网址: aHR0cHM6Ly9zcGFjZS5iaWxpYmlsaS5jb20vNDA1Nz…

c++就业1.1.3海量数据去重的Hash与BloomFilter

找到具体的位置 通过映射 当前需要插入的指向 上一层最后一个 方便头插 布隆过滤器 - 查找是否有这个值 但是不能够返回value 服务器和过滤器进行网络交互 我们要知道这个key在不在mysql中 去查询并且在mysql中进行查询 所以在服务器部署布隆过滤器 为了节约内存 用位图 对str…

Linux权限理解及环境基础开发工具使用

前言 Linux中有两种用户&#xff0c;一种是root用户&#xff0c;另一种是普通用户&#xff0c;二者的权限不一样&#xff0c;即能做的事情不一样。下面我们来细讲一下这些不同。 root用户能在Linux系统下做任何事情&#xff0c;而普通用户只能做有限的事情。 root用户的命令…

FPGA采集adc,IP核用法,AD驱动(上半部分)

未完结&#xff0c;明天补全 IP核&#xff1a;集成的一个现有的模块 串口写好后基本不会再修改串口模块内部的一些逻辑&#xff0c;将串口.v文件添加进来&#xff0c;之后通过他的上层的接口去对他进行使用&#xff0c;所以我们打包IP&#xff0c;之后就不用去添加源文件了&a…