下面以51单片机集成学习系统为硬件平台,介绍矩阵键盘的编程方法。具体功能是:按下其键后,键值将显示在数字管上。 0至16键分别显示0至F。
1、硬件原理
可以直接在支持的开发板上进行此实验。电路图如下图所示。

根据电路,键盘扫描方法为:行线P10〜P13为输出线,列线P14〜P17为输入线。首先,单片机将所有行线(P1O-P1 3))输出为低电平。此时,读取列线数据。如果列线均为高电平,则表示存在没有键连接。如果任何列线为低电平,则调用延迟程序以消除键抖动。延迟之后,读取列线以查看是否存在低电平。如果列线数据仍为低电平,则表示确实存在键连接,下一步是确定键值,以第二行中的S5键为例,了解连接到S5后如何获取此键值。确实存在键连接,根据列线读取的数据,将行线依次设置为低电平确定键值:首先,微控制器将P1O设置为低电平,将P11〜P13设置为高电平此时,读出的列线数据全部为高电平,表示第一行未输入键;然后微控制器将P11输出低电平,将P1O,P1 2、和P13设置为高电平,然后读取列线数据,此时列线值为1011(OxOB),即连接P11和P15的交点,而OxOB代表S5的键值。转到S5键的功能处理子例程以实现目标。

2.程序流程

软件流程图如下图所示。 51单片机集成学习系统资源丰富。该板具有:8位LED数字管,32通道LED,4x4矩阵键盘,4个直接控制键盘,蜂鸣器扬声器,继电器测试,I2C总线接口,SPI总线接口,l60x LCD,l28x64 LCD,红外接口,104支持PS / 2接口,步进电机驱动接口,ADCO832模拟/数字转换接口,PC817光电耦合器,串行时钟芯片DSl30 2、温度传感器DSl8B2O的按键式标准键盘,根据口,RS232串行通信,外部扩展接口等,可以轻松连接更多实验资源。

3.软件代码

相关软件代码如下:
/ *矩阵键盘测试程序* /


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/bofangqi/article-357415-1.html
说的没错
够了解还那么多无知的喷子
被发现核潜艇已经没有纯在的意义
小男神太棒了爱你