1、开题报告目录前言技术指标。方案选择。具体设计。应用案例。检测。结论。前言:本实验是通过 89c51 单片机最小系统做扩展键盘。然后通过键盘按键控制 LED 数码管的显示。键盘实际上是由排列成矩阵形式的一系列开关组成的,它是单片机系统中最常用的人机联系的一种输入设备。用户可以通过键盘向 CPU 输入数据,地址和命令。键盘按其结构可分为编码式键盘和非编码式键盘两大类。本实验采用的事非编码式键盘设计。采用线反转法进行键盘的识别,用延时程序来消除键的抖动。线反转法可以可到防止几个单触点开关同时按下对硬件的损害,起到保护作用。线反转法的工作原理 如下:首先将行线作为输出线,列线作为输入线。先通过行线输出
2、全”0”信号,读入列线的值。如果此时有某一个键被按下,则必然是某一列线值为“0” 。然后将行线和列线的输入输出关系互换,并且将刚才读到的列线值从列线所接的并行端口输出,再读取行线的输入值。那么在闭合键所在的行线值必定为 0.这样,当 1 个键被按下时,必定可以读得唯一的行值和列值。需要说明的是,若用线反转法来确定闭合键时,如果遇到多个键闭合的情况,则输入的行值和列值中一定有 1 个以上的 0.由于预先建立的键值代码表中不会有这样的值,因而可以判断为重建丢弃,由此可见,用这种方法可以很方便地解决重建问题。国内外的应用实例:译码器扩展输入方式目前在工业设备,汽车电子及仪器仪表中普遍使用以单片机为控
3、制核心的控制器,在开发系统中常常会由于 MCU资源不足而不得不采用扩展键盘输入 I/O 来满足应用系统的需要,而出现这种情况的原因之一是键盘输入 I/O 口占用了太多的系统资源。扩充键盘输入通常采用以下两种方式:1采用并行接口专用芯片 8279,但 8279 所需外围元件多,占用电路板面积大综合成本较高;2采用通用译码器与 I/O口进行连接扩展,这种方式利用低成本的外围芯片,可以节省 I/O 口的资源,同时软件编程也比较容易实现。技术指标:扩展键盘的电源要求:直流+5 伏扩展键盘的环境温度要求:-100500 摄氏度89C51 芯片的工作温度:-40 摄氏度85 摄氏度,针脚数:40技术指标:
4、扩展键盘的电源要求:直流+5 伏扩展键盘的环境温度要求:-100500 摄氏度89C51 芯片的工作温度:-40 摄氏度85 摄氏度,针脚数:40方案选择:总原理图:3*3 键盘相当于九个单触点开关,三行线分别接入p7p5,三列线分别接入 p4p2,采用线反转法接入。当有开关按下时,通过单片机载入的扫描程序扫描,确定触点的标号及对应的键特征值,然后通过特征值链接控制 p1 端口的输出从而用 LED 显示所按开关的标号。LED:共阳极 LED 数码管;晶振:频率为 12MHz 的晶振一个采用采用+5 伏的电源 89C52 单片机一个八路反向驱动集成块5 个一千欧姆的电阻九个单触点开关具体设计:软件功能流程图:软件实现键位扫描、消除抖动、键码转换、键码发送等功能。另外软件也实现了换档、按键连发功能。软件功能流程图如图 4 所示。扫描子程序:KEYZ:LCALL KS2;JNZ MK1;LJMP MK7;MK1:LCALL DIR;LCALL DIR;LCALL KS2;JNZ MK2;LJMP MK7;MK2: MOV P0,#1CH;MOV A, P0;ANL A,#1CH;CJNE A,#1CH,MK3;LJMP MK7;MK3: MOV R2, A;ORL A, #E3H;MOV P0, AMOV A, P0ANL A,#0E0H;ADD A