


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、扩展键盘电路及其编程摘 要:本文介绍采用 AT89C2051构成多达128键的键盘扩展电路及其编程。该电路是采用串行口与上位机进行通讯的。经长期使用,证明这一方法是可行和可靠的,有较强的实用价值。关键词:AT89C2051; 键盘;串行口1. 扩展键盘电路AT89C2051是美国ATMEL公司采用CMOS:艺生产的20脚八位单片机。它带有2k字节flash ROM和 128字节的片内RAM 15根I/O线,2个16位定时/计数器,5个两级中断源,一个全 双工串行口。另外还带有精确的模拟比较器、 片内振荡器和时钟电路。 其指令集和输出管脚与工 业标准的MC& 51系列器件兼容,是当前性
2、/价比较高的一种八位单片机。L十or !IBB tr?nPTI卩一IH1 !''.yaTIWM ulb和 i.1;pi. fVTlFitH-1Pi輕ll-llPhFIT4UPI IIT1IFMPI Ttv;二IDQtrmtnrrhSItfl虽然采用8279/8155等芯片扩展键盘较为方便,但在某些场合,特别是电路要求较为紧凑、印刷电路板较小的情况下,AT89C2051扩展键盘较为合适。其优点是体积小、成本低,同时在合理安排15根I/O 口线的情况下,可以获得与8279/8155相同数量甚至更高的键盘数。其难点在 于,在软件中必须妥善解决键盘扫描、去抖动、双键同时按下、与上位机通
3、讯等问题。图 1 所示为采用 AT89C2051 构成的键盘扩展电路。 AT89C2051 的串行口作为上位机的通讯口, 以减轻多机通讯时上位机的串行负担, P1.0 口线向上位机申请中断。为提高电路工作的可靠性, 可以采用 MAX705/706、MAX813L等看门狗电路,负责对 CPU进行监视。本文采用 MAX706复位/ 看门狗电路,并采用 P3.7 口线对其定时刷新,即“喂狗” 。采用 74LS138 扩展行扫线, 使用 P1. 1 、 P1.2 、 P1.3 对其进行控制,使行扫线依次改变状态。采用这种方法,行扫线最多为八根。由 于本文键盘仅为 20 键,因此采用 P1.4 、 P1
4、.5 、 P1.6 、 P1.7 作为列扫线已经足够。对于所需键盘 数更多的情况,可以补充 P3.5 、 P3.4 、 P3.3 、 P3.2 等口线作为列扫线。在此情况下,可以扩展 的键盘数为 64 键。如不存在多机通讯的要求, 可以继续补充 P1.0 口线作为列扫线。 在此情况下, 可扩展的键盘数为 72 个。 如以 P1.0 扩展行扫线, 采用两片 74LS138 或其它 416 译码器, 则可 扩展的键盘数最多可达 128 个。本电路中采用 AT89C52 作为上位机。2. 软件结构2.1 软件去抖动处理按键的触点在闭合和断开时均会产生抖动, 这时触点的逻辑电平是不稳定的, 如不妥善处
5、理, 将会引起按键命令的错误执行或重复执行。 本文采用软件延时的方法来避开抖动阶段, 在延时开 始和结束时读取列扫线状态,如果一致,则判断有键按下。延时时间为10ms。2.2 按键连击的处理连击是指操作者按下某一键但没有释放该键, 则该键对应的功能将反复被执行, 好象操作者 在连续操作该键一样。 由于单片机的速度较快, 这种情况很容易发生。 连击在很多情况下是不允 许的,它使操作者很难准确地进行操作。解决连击的关键是一次按键只让它响应一次,该键不释放就不执行第二次。2.3 键盘扫描本文采用的键盘为 20 键的小键盘,其扫描码较为简单,可参见图1,在此不作专门介绍。2.4 与上位机通讯本文提出的
6、方法是采用串行口进行通讯的。采用定时/ 计数器 1 为波特率发生器,具体数值为 1200bps 。 AT89C2051 采用串行中断方式与上位机进行通讯;而上位机的键盘响 应与处理则安排在外中断 1 服务程序中。上位机在 INT1 中断服务程序中首先应向键盘发送相应 的地址,然后再进入接收状态。在上位机的中断服务程序中,还可以设置接收键值的时间范围, 超时则认为此键值作废。try丄Y m 刖 J(*irfiBtm 、 <* 耳片* *i : .' " * t k h二C f J tL>耳£11!夏F 豐靜'【咼讣h ”丨、YJ>打 * cT
7、 “iyjT =<" >Ti 丄“£*屮鼻i<!霜 ; f n1斗事I2.5 MAX706的复位MAX706AT89C2051对MAX706的复位安排在定时/计数器0的中断服务程序中。而上位机对等监控电路的复位可以自由安排,但必须在1.6s之内完成。3. 软件程序清单软件的流程框图如图 2 所示。具体的程序清单如下:THIS_051 EQU 0AAHNO_KEY EQU 0F0HORG 0000HAJMP MAINORG 000BHAJMP INT_T0ORG 0023HAJMP INT_SERIESORG 0030HMAIN:MOV SP, 40HSET
8、B P1.0SETB P1.1SETB P1.2SETB P1.3CLR P3.7MOV TMOD, 21HMOV TL1, 0E6HMOV TH1, 0E6HMOV TL0, 00HMOV TH0, 80HCLR ET1SETB TR1SETB ET0SETB TR0MOV PCON, 80HMOV SCON, 0D0HSETB ESSETB EAREADKEY:CLR P1.1CLR P1.2CLR P1.3MOV R1, 00HLCALL DELAY10USMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,DEL_SHAKER1SJMP TEST_LINE2DEL_SHA
9、KER1:LCALL DELAY10MSMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_VALUETEST 桳 INE2:SETB P1.1MOV R1, 01HLCALL DELAY10USMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,DEL_SHAKER2SJMP TEST_LINE3DEL_SHAKER2:LCALL DELAY10MSMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_CALUETEST_LINE3:SETB P1.2CLR P1.1MOV A,P1ANL A, 0F0HCJNE A,NO_KEY,DE
10、L_SHAKER3SJMP TEST_LINE4DEL_SHAKER3:LCALL DELAY10MSMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_VALUETEST_LINE4:SETB P1.1MOV R1, 03HLCALL DELAY10USMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,DEL_SHAKER4SJMP TEST_LINE5DEL_SHAKER4:LCALL DELAY10MSMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_VALUETEST_LINE5:SETB P1.3CLR P1.1CLR P
11、1.2MOV R1, 04HLCALL DELAY10USMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,DEL_SHAKER5SJMP RET_READKEYDEL_SHAKER5:LCALL DELAY10MSMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_VALUERET_READKEY:AJMP READKEYKEY_VALUE:JNB ACC.7, FIRST_LINEJNB ACC.6, SECOND_LINEJNB ACC.5,THIRD_LINEJNB ACC.4, FOUTH_LINEAJMP READKEYFIRST_LINE:M
12、OV R0, 03HSJMP SEND_KEYSECOND_LINE:MOV R0, 02HSJMP SEND_KEYTHIRD_LINE:MOV R0, 01HSJMP SEND KEYFOUTH_LINE:MOV R0, 00HSEND_KEY:MOV A,R0MOV B, 05HMUL ABADD A,R1MOV DPTR, KBTABMOVC A,A DPTRMOV R3,ACLR P1.0LCALL DELAY10USSETB P1.0 KEY_LOOP:LCALL DELAY10USMOV A,P1ANL A, 0F0HCJNE A,NO_KEY,KEY_LOOPSETB P1.1SETB P1.2SETB P1.3AJMP READKEYINT 桾 0:MOV TL0, 00HMOV TH0, 80HCPL P3.7RETIINT_SERIES:PUSH ACCJNB RI,TRANSMISSIONCLR RIMOV A,SBUFCJNE A,THIS?051,RETURNMOV A,R3MOV SBUF,ATRANSMISSION:CLR TIRETURN:POP ACCRE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 1昼夜的形成 教学设计-2023-2024学年科学六年级下册冀人版
- 企业管理概论模拟题含参考答案
- 马工学与持续改进的关系试题及答案
- 《第三单元 用金山画王作图 12 背景与动画》教学设计-2023-2024学年人教版信息技术(三起)三年级下册
- 马工学与女性领导力的关系试题及答案
- 院感知识培训课件
- 医美知识培训课件
- 清淤工程施工合同
- 公司规章制度管理办法
- 私有云建设方案
- 门窗安装施工安全教育
- 《学习遵义会议精神》班会课件
- 干部基本信息审核认定表
- 2024年英语B级考试真题及答案
- 2024年社会工作者职业水平《社会工作实务(初级)》考试题及答案
- 施工升降机安装拆卸安全教育
- 长输管线焊接技术交底
- 污水的化学处理33化学沉淀法
- 医院保安服务方案(技术方案)
- 家长学校课程建设研究
- 韧性理论与韧性城市建设
评论
0/150
提交评论