74HC595 的输出子函数

[复制链接]
3784|12
 楼主| soch 发表于 2010-3-3 20:55 | 显示全部楼层 |阅读模式
void Out_595()
{

ST_CP = 0;
        _nop_();

ST_CP = 1;

_nop_();

ST_CP = 0;
}这个子函数的前两条语句 有什么用不用不行吗?
 楼主| soch 发表于 2010-3-3 21:15 | 显示全部楼层
那位高手指点一下,谢谢
 楼主| soch 发表于 2010-3-3 22:08 | 显示全部楼层
怎么没人回啊
HWM 发表于 2010-3-3 22:17 | 显示全部楼层
其作用是保证每次调用都有上升沿,以构成一个完整的正脉冲。
老老实实 发表于 2010-3-3 22:21 | 显示全部楼层
595是在由低到高的电平下,数据移位的,好像是这样吧,具体我也记不清楚啦,但是这两句是必须的

你可以看看595的数据手册,看看他的时序图嘛
 楼主| soch 发表于 2010-3-3 22:29 | 显示全部楼层
多谢指点
c4fantasy 发表于 2010-3-4 08:30 | 显示全部楼层
本帖最后由 c4fantasy 于 2010-3-4 08:33 编辑

看看数据手册里面的时序图。。很明朗。当与595通讯结束后,也就是已经把串行数据发给595了,那么让其将移位寄存器内的数据所存到输出寄存器,并显示,就是需要ST_CP的一个上升沿

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
sharpstar 发表于 2010-3-4 08:54 | 显示全部楼层
造出一个上升沿
acer007 发表于 2010-3-4 11:14 | 显示全部楼层
感谢共享
 楼主| soch 发表于 2010-3-4 17:07 | 显示全部楼层
不是一个st_cp=1就能使移位寄存器上的数送到存储器吗,时序图为什么是8个上升沿才使Q1---Q7变化完呢。
老老实实 发表于 2010-3-4 19:54 | 显示全部楼层
你自己是理解错啦!

上面的8个上升沿是将数据依次的输入到595中,

然后ST_CP = 0;
        _nop_();

ST_CP = 1;
就表示将移入的数据所存起来的啦!

再好好考虑哈,看是不是这样子的
520810 发表于 2010-3-4 20:41 | 显示全部楼层
学习了
lcmcu 发表于 2010-8-14 12:36 | 显示全部楼层
可以那样做
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

41

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部