控制数码管,位选是选择哪几个数码管亮,段选是决定显示的是什么数字。 你所问的锁存体现在我可以只用8位的io同时接在 段选和位选的输入io上,再加上两个锁存控制端就能,分别给段选和位选送数据,就能显示了。 这里要注意你的数码管是共阳的还是共阴的,假设是共阳的,那么你需要先打开位选的锁存开关,(573是拉高为数据导通) 然后8位的io送位选数据,比如说是0x01,就是打开最低位的数码管,这个时候拉低573锁存段,数据锁存,这个时候io的变化不会影响位选输出端的结果,然后同样的,拉高段选锁存段,io送段选数据,然后拉低段选锁存,数据就业锁存进段选的锁存器了。 数字也就显示出来了
锁存器有一个锁存使能端EXABLH,“锁存”了以后,锁存器的输出端不再受输入端数据变化的影响,直到再次接收到单片机发送的锁存触发信号后更新。先送出段码->锁存,在送出位码->锁存,有N位数码管就送N次段码和位码并锁存N次,如此往还循环的扫描,扫面的速率<=人眼的暂留视觉就可以了。
我假设只用了P0,P0同时接到74HC573的D[7:0],动态扫描时,先给位码控制的573发送需要显示的位的数据,然后锁存位数据,接着发送给段码数据给段码控制的573,位打开的数码管就显示段数字,显示给点延时,释放锁存。每次如此反复,就体现了动态扫描的锁存。