基于51单片机实现74LS164串入并出移位寄存器
时间:04-10 15:44 阅读:1341次
*温馨提示:点击图片可以放大观看高清大图
简介:对于串入并出移位寄存器以下是我个人的理解和实际开发工程中得出的经验。一个8位串入数据输入, 8位并行输出。可以看出先移的是高位,就是第一个位进去的到最后会在最高位。
图一:

由我上图所画 可以得出 一个8位串入数据输入, 8位并行输出。可以看出先移的是高位,就是第一个位进去的到最后会在最高位。

图为时序图
AB 是输入
clean是清0端,低电平有效。就是如果给个低电平那么输出都为0 强制都输出0。一般接高电平
clock 是时钟 上升沿有效
由上图可以得出如果 A B 有一个为低电平 ,那么阻止新数据的进入,并在下一个时钟上升沿时,将 QA 端清0.
如果A B端都为高电平则会使能信号输入,并在下一个时钟脉冲的上升沿之前使输出端QA 置1.每一个时钟脉冲上升沿到来时,输出端的数据会移动一个位,既QA的数据会移动到QB,一直到QH。
经过我实际操作发现上电未初始化的时候输出是不固定的。我试了好多次基本都是 0X80输出概率比较大,不知道有什么方法让他未初始化的时候输出0X00呢?请思考?