找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3657|回复: 3
收起左侧

求解释单片机74hc595驱动数码管程序的原理

[复制链接]
ID:326149 发表于 2018-5-9 18:12 | 显示全部楼层 |阅读模式
各位大佬能不能给我解释下这个程序的原理,还有他的流程图该怎么画,拜托了。
void SendData(unsigned char SDat)         // 74HC595传送一个字节的数据
{
        unsigned char i;
        for(i=0;i<8;i++)
        {        
                if((SDat&0x01)==0)          // 先发送最低位,若改为(SendDat&0x80)则先发送最高位
                        Dat=0;
                else               
                        Dat=1;
                _nop_();
                Clk=0;
                _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();            
                Clk=1;                                    // 时钟上升沿有效
                SDat=SDat>>1;            // 若改为SendDat<<1则先发送最高位                 
        }
}
/*------------------------------------------------
        段码显示
------------------------------------------------*/
void Display()
{
        unsigned char c=0;
        unsigned char i=0;
        RCK=0;                                                // 关闭存储寄存器的输入
        SendData(DispTab[c]);                // 送出字形码数据        
        RCK=1;                                                // 开启存储寄存器的输入
}

回复

使用道具 举报

ID:123289 发表于 2018-5-9 19:46 | 显示全部楼层
这么一点程序,也弄不清,为何还要学这个专业呢?改学CEO也比这个强。
回复

使用道具 举报

ID:111634 发表于 2018-5-10 18:25 | 显示全部楼层
本帖最后由 zl2168 于 2018-5-10 18:27 编辑

实例59  74LS595串行选通8位LED数码管动态显示
74HC595功能表.PNG
Proteus仿真一下,确认有效。
实例59 74LS595×2选通8位LED动态显示.rar (45.12 KB, 下载次数: 65)
595.jpg
以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil CProteus》清华大学出版社ISBN 978-7-302-41682-1内有常用的单片机应用100案例,用于仿真实验操作,电路与程序真实可靠可信可行。书中电路和程序设计有详细说明,程序语句条条有注解。
回复

使用道具 举报

ID:326149 发表于 2018-5-11 10:23 | 显示全部楼层
zl2168 发表于 2018-5-10 18:25
实例59  74LS595串行选通8位LED数码管动态显示

先Proteus仿真一下,确认有效。

非常感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表