| 当然可以,使用锁存器目的是节约IO口,不用锁存就是直接控制,道理一样,代码基本一样,稍微改改即可. |
简单说下思路,以共阴极数码管为例,程序写计数器、用中断的方式扫描IO口。在中断里定义显示初始化的函数,由于是共阴极数码管,需先把所有数码管的段初始化为低电平,所有的位初始化为高电平,在根据所要显示的值,一个一个段点亮,然后再逐个打开COM口就可以实现动态显示了。我也是新手,还不太会表述,有疑问可以继续找我,当是练练手,一起进步 |
|
图中的4个数码管为共阳极数码管。数码管实际是由8个发光二极管组成的,而共阳极是指将这8个二极管的正极连接到一个公共端。所以当这8个二极管的任何一个负极通低电平的时候,相应的二极管就会被点亮,相反,通高电平则灭。 当要该数码管显示0到9之间任一数字的时候,要给每一个二极管不一样的电平(0或1),8个二极管分别由P3口的8个I/O口控制,P3口的控制输出即为段码。 有四个数码管,可以看到数码管底下的DIG口分别连接到4个驱动三极管,并最终由P1口的4个端子来控制。这样就可以选择哪个数码管工作,譬如希望最左侧数码管亮,,则只需给P1.5口送低电平。 |
20170613083836874.png (58.33 KB, 下载次数: 47)
| 基本思路就是P1.2~P1.5先选中需要显示数字的那一位数码管(位码),然后P3口输出需要显示的数字的段码。然后切换位码,输出段码。切换中间加短时消隐信号。利用视觉暂留效应,就实现了动态显示。具体程序你看看这方面的书籍,很容易理解的。 |
给你写一个单键控制4位百分秒表+仿真示例参考
4位百分秒表+仿真.zip
(102.53 KB, 下载次数: 9)
|