实例结合8255A的使用,说明翻转法行列式键盘的运用及七段数码管。本例采用单个七段数码管显示当前按键名,若采用动态法接多位数码管显示连续按键,电路图应该如何修改?
时间: 2023-11-25 18:07:47 浏览: 31
翻转法行列式键盘是一种常用的输入方式,可以通过它实现对键盘输入的检测和处理。8255A是一款常用的输入输出接口芯片,可以方便地实现对键盘输入的检测和处理。
以下是一个基于8255A的翻转法行列式键盘的示例电路图:
![8255A翻转法行列式键盘示例电路图](https://img-blog.csdnimg.cn/2021070216155370.png)
该电路中使用了一个8255A芯片,其中PA口作为行输入,PB口作为列输入,PC口作为输出。具体的实现方式是,将PA口配置为输出模式,输出高电平;将PB口配置为输入模式,内部上拉,接入按键;将PC口配置为输出模式,用于控制七段数码管的显示。
当某一个按键按下时,对应的行会输出低电平,此时通过检测列输入的电平可以确定按下的是哪一个按键。根据行列对应表可以得到按键的编号,从而进行后续处理。
在本例中,使用了一个单个七段数码管来显示当前按键名。每当有按键按下时,对应的按键名会在数码管上显示。具体的实现方式是,将数码管的七个段分别接到PC口的7~1脚,将数码管的公共端接到PC口的0脚。每当有按键按下时,通过查表可以得到对应的按键名,将其转换为对应的七段数码管显示码,然后输出到PC口对应的脚上,实现数码管的显示。
若采用动态法接多位数码管显示连续按键,需要修改的地方如下:
1. 将PC口的输出扩展到多个数码管的对应脚上,每个数码管的七个段和公共端都需要接到对应的脚上。
2. 将数码管的控制信号改为动态扫描方式,具体实现方式可以采用74HC138等译码器进行控制。
3. 在程序中添加动态扫描的逻辑,实现多个数码管的动态显示。