设计一个由使用sTm32实现按键的控制S0控制的共阳极数码管控制系 统,要求:系统上电,数码管上显示“

1、74HC595是一个8位串行输入、并行/串行輸出移位寄存器具有可控3态输出。本文主要使用595的级联功能

74HC595锁存功能:串行输入后,8位锁存可以一直保持输出的8位不变,等待新的8位就位连同级联的其他74HC595一起更新,然后再次锁存依次循环。

74HC595的级联功能:例如串行输入16位前8位会被挤出,从9脚Q7S同样串行输出至下一級芯片后8位留在本身的Q0-Q7中。

74HC595的使能功能:将每一个74HC595芯片的使能脚一起接受CPU同一个管脚控制以达到收到新数据的所有74HC595同时输出8位数据,顯示一种效果

2、下面是74HC595使用实例原理图:

图中只用3个CPU管脚控制多个4位数码显示,UM1为一级芯片即发出数据的最后8位,用于选择所有4位数碼管的第N位显示UM2-UM5用于控制每一个4位数码管8段。

当发出0x9F、0x9F、0x9F、0x9F、0x08使能后,由于0x08片选所有每个4位数码管的第一位会显示1。

当发出0x25、0x25、0x25、0x25、0x04使能后,由于0x04片选所有每个4位数码管的第二位会显示2。

当发出0x0D、0x0D、0x0D、0x0D、0x02使能后,由于0x02片选所有每个4位数码管的第三位会显示3。

當发出0x99、0x99、0x99、0x99、0x01使能后,由于0x01片选所有每个4位数码管的第四位会显示4。

依次循环显示每位显示时长为四分之一周期。

定时程序选择2-5毫秒为宜也可自己根据自己程序的运行效果尝试着设置。循环显示4位数码管每位显示时长为四分之一周期。

上图为显示第一位的子程序其他类似。

在定时器(2-5ms)程序中加入下图语句

5.1 举例中UM1只用到了Q4-Q7四位可将Q0-Q3一起用上,添加4组74HC595+数码管可得到8x4=32位数码管显示。

5.2 将其中一位数碼管变成8个二极管可显示8个运行状态,其中4位数码管可变32个指示灯

5.3 CPU加一个IO,可以最多增加8个使用sTm32实现按键的控制UM1输出Q0-Q7分别加一个使鼡sTm32实现按键的控制,使用sTm32实现按键的控制另一端共同接在IO上在分时复用显示每位数码管时,检测IO是否被按下类似扫描使用sTm32实现按键的控制程序。

欢迎拍砖欢迎指正,欢迎私信

}

我要回帖

更多关于 使用sTm32实现按键的控制 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信