FPGA设计与实战演练课件:矩阵键盘实验电路搭建与驱动程序设计.pptx
矩阵键盘实验电路搭建与驱动程序设计基于口袋机综合实验设计
01实验目的02实验设备03实验原理04实验代码解析05实验步骤06实验现象目录07拓展思考08应用领域
一、实验目的了解软件。程序的下载和仿真了解如何正确分配和配置单片机的I/O口三、掌握矩阵键盘原理。
二、实验设备口袋机口袋机下载线JC-PM49模块JC-PM15实验扩展板
三、实验设备?实验器件简介: 矩阵键盘是单片机外部设备中所使用的排布类似于矩阵的键盘组。矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。
三、实验原理?矩阵键盘模块原理图:原理图说明共16个按键,分4行4列。功能说明Col0~Col3是扫描端口,依次输出低电平,同时Row0~Row3位输入端(单片机读取)。
三、实验原理?扫描原理:一般电子设备中,如果按键不多的话,使用直接读端口方式,几个按键就使用几个端口如果按键比较多,而单片机的端口资源不多的情况下,就会使用矩阵键盘的方式扫描原理:COL0-3是输入ROW0-3是输出ROW0-3依次输出低电平例如:ROW0输出低,其他输出高,当按键S1按下后,COL0端口为0其他为高,就说明按键S1被按下了然后,ROW1输出低,其他输出高,当按键S6被按下,COL1端口为0,其他为高,就说明按键S6被按下了一个采样周期循环4次,每次采集COL0-3端口的电平,判断对应的按键是否按下
三、实验原理?程序分析:unsignedcharkey_scan_fun(void)就是键盘扫描函数key_dat默认为0,如果有按键按下,就将key_dat赋值成对应的按键编号,作为函数的返回值
四、实验原理?模块引脚说明:
五、参考代码分析主函数
五、参考代码分析实验程序key_scan_fun(); ////扫描键盘button_dis_on_fun(u8button); ////按键按下,显示被按下的颜色button_dis_off_fun(u8button);////按键抬起,恢复原来的颜色
五、实验步骤??1、将实验模块插在扩展模块的位置32、打开程序3、下载程序?
六、实验现象开机后LCD显示16个按键按下键盘的任意按键,屏幕上对应的按键会改变颜色
感谢大家的认真学习!祝大家生活、工作愉快!