1、单片机设计说明书新疆农业大学机械交通学院单片机技术与应用课程设计说明书题 目: 查询式键盘电路设计 专业班级: 学 号: 学生姓名: 指导教师: 艾海提赛买提 、李春兰 时 间: 2016年10月 组员分工职务姓名任务组长绘制流程图、编写程序组员参数计算组员电路板实物连接组员Proteus仿真、Keil调试查询式键盘电路设计学生姓名:赵陈 指导老师:艾海提赛买提、李春兰1设计目的 熟悉并掌握单片机原理及基本的应用,掌握单片机基本 外设的使用方法,掌握汇编语言编程方法,熟悉 PROTEUS、keil软件的使用,综合运用所学的知识及电子焊接技术的基 础知识连接硬件实现设计功能。2设计内容 用AT8
2、9S51的并行口P1接查询式键盘如图2-1所示。图2-1 查询式键盘将8个按键从0-7编号,如果有其中一个按键按下时,则在数码管上显示相应的键号,并在P2口接8个LED灯,按下0键数码管显示0时,亮1个LED灯;按下1键数码管显示1时,亮2个LED灯;按下2键数码管显示2时,亮3个LED灯;按下3键数码管显示3时,亮4个LED灯;按下4键数码管显示4时,亮5个LED灯;按下5键数码管显示5时,亮6个LED灯;按下6键数码管显示6时,亮7个LED灯;按下7键数码管显示7时,亮8个LED灯。3设计步骤 3.1硬件电路设计3.1.1硬件电路组成独立式查询键盘设计中,我们采用AT89C51单片机芯片作
3、为实验的主体,通过在振荡电路和复位电路的作用下,让单片机获得自启动,从而输入相应的程序,通过按键然后在数码管显示电路中显示键值和对应的LED灯亮灯个数。所得的硬件电路组成框图如图3-1所示。图3-1 硬件电路组成框图3.1.2各单元电路及工作原理(1)控制电路对于AT89C51单片机单元,由于其共有40个管脚,其中有32个管脚可作为I/O口用,它们分别为P0口的八个管脚、P1口的八个管脚、P2口的八个管脚和P3口的八个管脚,其中P3口的八个管脚可作串行口、外部中断、定时器、读写控制等特殊用途,当不需要作特殊用途的时候,P3口可作I/O口使用。AT89C51单片机芯片如图3-2所示。图3-2 A
4、T89C51单片机(2)晶振电路晶振电路用于产生单片机工作所需的时钟信号,晶振电路如图3-3所示,通常,=12MHz,电容C1和C2的值在530F之间,在此取30F。图3-3 晶振电路(3)复位电路复位是使单片机处于初始化状态。为了确保单片机复位,复位时间t必须大于两个机器周期(24个时钟周期)t=RC24s,当R=10K时,C取10s可满足要求。复位电路如图3-4所示。图3-4 复位电路(4)查询式键盘电路如图3-5所示。图3-5 查询式键盘电路(5)数码管显示电路如图3-6所示。图3-6 数码管显示电路(6)LED灯电路如图3-7所示图3-7 LED灯电路3.2程序设计 3.2.1绘制程序
5、流程图 流程图及解释如图3-8所示。显示图3-8 流程图3.2.2 汇编程序ORG 0000H LJMP SMG_JIANCE ORG 0030H MOV SP,#60H SMG_JIANCE: ;数码管检测程序,查看是否有损坏 MOV DPTR,#JIANCE_TAB MOV R2,#00 ;设定查表初值,从a段开始检测 LOOP: MOV A,R2 MOVC A,A+DPTR ;取表值 MOV P0,A ;把表值送给P0口 LCALL DELAY_500MS ;延时500ms INC R2 CJNE R2,#10,LOOPK_IN: MOV P2,#00H ;熄灭所有LED灯 AJMP M
6、IAN MIAN: ;主程序 MOV P1,#0FFH ;初始化P1口 MOV A,P1 ;读P1口值 CJNE A,#0FFH,K_IN1 ;判断是否有键按下,有键按下转K_IN1 SJMP MIAN K_IN1: ;消除抖动判断 ACALL DELAY ;调用延时 MOV A,P1 ;读取P1口 CJNE A,#0FFH,K_IN2 ;再次判断是否有键按下,有键按下转K_IN2 SJMP MIANK_IN2: ;已确认有键按下,作数据处理 MOV A,P1 CJNE A,#0FEH,K1 MOV R3,#00H ;数码管显示0 MOV P2,#01H LCALL DISPK1: MOV A
7、,P1 CJNE A,#0FDH,K2 MOV R3,#01H ;数码管显示1 MOV P2,#03H LCALL DISP K2: MOV A,P1 CJNE A,#0FBH,K3MOV R3,#02H ;数码管显示2 MOV P2,#07H LCALL DISPK3:MOV A,P1 CJNE A,#0F7H,K4 MOV R3,#03H ;数码管显示3 MOV P2,#0FH LCALL DISP K4:MOV A,P1 CJNE A,#0EFH,K5 MOV R3,#04H ;数码管显示4 MOV P2,#01FH LCALL DISPK5:MOV A,P1 CJNE A,#0DFH,
8、K6 MOV R3,#05H ;数码管显示5 MOV P2,#03FH LCALL DISPK6:MOV A,P1 CJNE A,#0BFH,K7 MOV R3,#06H ;数码管显示6 MOV P2,#07FH LCALL DISPK7: MOV A,P1 CJNE A,#07FH,WAIT MOV R3,#07H ;数码管显示7 MOV P2,#0FFH LCALL DISP WAIT: ;等待按键释放MOV P1,#0FFH MOV A,P1 CJNE A,#0FFH,WAIT LJMP MIAN DELAY_500MS: ;延时用于数码管检测段 MOV R3,#30DE: LCALL
9、DELAY DJNZ R3,DE RETDELAY: ;延时用于消抖处理 MOV R0,#20 DL1: MOV R1,#250 DJNZ R1,$ DJNZ R0,DL1 RETDISP: ;将查表的码表值送入P0端口点亮数码显示 MOV DPTR,#D_TAB MOV A,R3 MOVC A,A+DPTR MOV P0,A RET JIANCE_TAB: ;数码管检测段编码表 DB 0FFH ;全灭 DB 0FEH,0FDH,0FBH,0F7H ;a b c d DB 0EFH,0DFH,0BFH,07FH ;e f g h DB 0C0H ;显示 0 D_TAB: ;7段LED数码管显示
10、0F码表(共阳极) DB 0C0H,0F9H,0A4H,0B0H ;0 1 2 3 DB 99H, 92H, 82H,0F8H ;4 5 6 7 END3.2.3 keil软件的使用方法首先正确安装keil软件打开keilprojectnew project为工程取名字,并选择工程要保存的路径,建议每个工程新建一个文件夹,方便文件管理出来一个对话框,是选择芯片的,根据自己所选的芯片公司和型号来选择就行了,我们组选择的是最常用的AT89C51,点ATMEL,找到AT89C51,点OK后会出来一个对话框,问是否添加启动文件,点“是”,这样就建好了一个工程,点File菜单下New新建文件先保存文件,
11、点保存按钮后出来路径框,取名字后缀是.ASM,点保存。接下来在左边project下把Target1点开,在Source Group 1上右键,点击Add File to Group Source Group 1在弹出的框中点刚刚保存的文件,然后点Add,关闭对话框,左边project框中可以看到文件已经添加下面是设置KEIL软件的配置参数的步骤(1)构建项目图3-9 keil软件构建项目(2)设置项目参数图3-10 设置项目参数 图3-11 设置输出参数(3)程序编译图3-12 程序编译4调试与仿真4.1硬件仿真4.1.1元件清单元件清单如表4-1所示表4-1 元件清单元器件数量AT89C51
12、单片机1个晶振12MHz1个普通电容30Pf2个极性电容10uF1个电阻10K1个共阳极8段数码管1个导线若干按钮8个LED灯(红)8个4.1.2 PROTEUS仿真Proteus仿真图形如图4-1至4-9所示。图4-1 硬件电路图4-2 按0键时的仿真图4-3 按1键时的仿真图4-4 按2键时的仿真图4-5 按3键时的仿真图4-6 按4键时的仿真图4-7 按5键时的仿真图4-8 按6键时的仿真图4-9 按7键时的仿真4.2电路板连接4.2.1电路板连接图电路板连接图如图4-10所示。图4-10 电路板连接图4.2.2硬件板电路调试硬件板电路所得结果如图4-11至4-19所示。图4-11 启动
13、图4-12 按0键时的显示结果图4-13按1键时的显示结果图4-14按2键时的显示结果图4-15 按3键时的显示结果图4-16 按4键时的显示结果图4-17按5键时的显示结果图4-18按6键时的显示结果图4-19按7键时的显示结果参考文献:1 谭成豪,许建明. 试述51系列单片机矩阵键盘编程J. 科技传播,2011,06:197.2 董雷刚,崔晓微,程书伟. 基于单片机的数字计算器的设计J. 电脑知识与技术,2012,10:2386-2388+2414.3 刘静波. 基于单片机的四位BCD编码器电路设计J. 现代电子技术,2006,18:130-133.4 张旭强. PIC单片机键盘电路应用四
14、例J. 电子制作,2007,08:20-24.5 贵国庆. 单片机新手入门实例详解之三 44矩阵健盘的工作原理与编程J. 电子制作,2006,03:60-62.6 徐纬. 51单片机综合学习系统矩阵键盘篇J. 电子制作,2007,11:54-56.7 马立国. AD7888与AT89C51单片机接口应用技术J. 集成电路通讯,2007,02:32-36+40.8 胡全. 51单片机的数码管动态显示技术J. 中国新技术新产品,2009,13:25.9 张喜凤,屈宝鹏. 基于VHDL的矩阵键盘及显示电路设计J. 现代电子技术,2010,16:14-16.10李伍元.浅谈单片机非编码键盘工作原理及设
15、计方法J.科技情报开发与经济,2009,02:109-111.11杨宁,阳泳,江世明.基于单片机的LED流水灯控制与简述J.电子世界,2016,01:52.12高培先.一种独立式键盘电路及其中断程序设计J.计算机测量与控制,2008,03:373-375.13李强.键盘接口编程技术J.电子世界,2003,10:34-35.14 Nottoli E M,Lambert J B,Letsinger R L. Study of conformational changes induced on substituting NH for O at C(51) of thymidine nucleosides and nucleotides.J. American Chemical Society. Journal,1977,9910
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1