1 / 7
文档名称:

单片机键盘显示实验报告.doc

格式:doc   大小:58KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机键盘显示实验报告.doc

上传人:63229029 2017/1/18 文件大小:58 KB

下载得到文件列表

单片机键盘显示实验报告.doc

文档介绍

文档介绍:单片机的键盘和显示实验报告㈠实验目的 I/O 的工作方式; 0工作的 LED 显示; LED 显示的编程方法。㈡实验器材 1. G6W 仿真器一台 2. MCS — 51实验板一台 3. PC 机一台 ㈢实验内容及要求实验硬件线路图见附图从线路图可见, 8051 单片机的 P1 口作为 8 个按键的输入端,构成独立式键盘。四个 LED 显示器通过四个串/ 并移位寄存器 74LS164 接口至 805 1 的串行口,该串行口应工作在方式 0 发送状态下, RXD 端送出要显示的段码数据, TXD 则作为发送时钟来对显示数据进行移位操作。编写一个计算器程序,当某一键按下时可执行相应的加、减、乘、除运算方式,在四个显示器上显示数学算式和最终计算结果。注: ①通过按键来选择加、减、乘、除四种运算方式。②输入两个数字均为一位十进制数,可预先放在内存中。㈣实验框图( 见下页)㈤思考题 ,硬件电路应怎样连接? ~ 是键输出线, ~ 是扫描输入线。输入与门用于产生按键中断,其输入端与各列线相连,再通过上拉电阻接至+5V 电源,输出端接至 8051 的外部中断输入端。 移位寄存器的移位速率是多少? 实验中要求计算的式子和结果之间相差一秒,移位寄存器的移位速率应该是每秒一位吧。其实这个问题确实不知道怎么回答。。。。。 LED 显示用的段码与教科书所提供的不同,本实验采用如下段码: 显示数符段码显示数符段码 0 BBH A DBH 否有否 P1 口置输入读 P1口开始显示“ 0000 ”是否有键按下? 延迟消抖是否有键按下? 是读键码加法运算减法运算除运算 109H B F1H 2 EAH C B2H 3 6BH D E9H 459H E F2H 573H F D2H 6 F3H — 40H 7 0BH .04H 8 FBH ┗┛ A1H 9 7BH ┗┛ 1AH 灭00H P DAH 实验代码: ORG 0000H AJMP 0030H MAIN:MOV 41H,#0BBH ; 对几个存放地址进行初始化 MOV 42H,#0BBH MOV 43H,#0BBH MOV 44H,#0BBH MOV SCON,#00H ; 初始化串行口控制寄存器,设置其为方式 0 LCALL DISPLAY ; 初始化显示 KEY:MOV R3,#08H ; 用来存放两个数据 MOV R4,#02H MOV P1,#0FFH ; 初始化 P1口 MOV A,P1 ; 读取按键状态 CPL A; 取正逻辑,高电平表示有键按下 JZ KEY ;A=0 时无键按下,重新扫描键盘 LCALL DELAY1 ; 消抖 MOV A,P1 ; 再次读取按键状态 CPL A JZ KEY ; 再次判别是否有键按下 PUSH A KEY1:MOV A,P1 CPL A ANL A,#0FH ; 判别按键释放 JNZ KEY1 ; 按键未释放,等待 LCALL DELAY1 ; 释放,延时去抖动 POP A JB ,ADD1 ;K1 按下转去 ADD1 JB ,SUB1 ;K1 按下转去 SUB1 JB ,MUL1 ;K1 按下转去