1 / 7
文档名称:

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

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

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

分享

预览

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

上传人:459972402 2020/9/1 文件大小:37 KB

下载得到文件列表

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

文档介绍

文档介绍:单片机的键盘和显示实验报告㈠实验目的掌握单片机I/O的工作方式;掌握单片机以串行口方式0工作的LED显示;掌握键盘和LED显示的编程方法。㈡—㈢实验内容及要求实验硬件线路图见附图从线路图可见,8051单片机的P1口作为8个按键的输入端,构成独立式键盘。四个 LED显示器通过四个串/并移位寄存器 74LS164接口至8051的串行口,该串行口应工作在方式 0发送状态下,RXD端送出要显示的段码数据,TXD则作为发送时钟来对显示数据进行移位操作。编写一个计算器程序,当某一键按下时可执行相应的加、减、乘、除运算方式,在四个显示器上显示数学算式和最终计算结果。注:①通过按键来选择加、减、乘、除四种运算方式。②输入两个数字均为一位十进制数,可预先放在内存中。㈣实验框图 (见下页)㈤思考题当键盘采用中断方式时,硬件电路应怎样连接?~, ~。输入与门用于产生按键中断,其输入端与各列线相连,再通过上拉电阻接至 +5V电源,输出端接至 8051的外部中断输入端。?实验中要求计算的式子和结果之间相差一秒, 移位寄存器的移位速率应该是每秒一位吧。其实这个问题确实不知道怎么回答。 。。。。开始显示“0000”P1口置输入P1口否是否有键按下?有延迟消抖否是否有键按下?是读键码加法运算 减法运算 除运算LED显示用的段码与教科书所提供的不同,本实验采用如下段码:显示数符 段码 显示数符 段码0 BBH A DBH109HBF1H2EAHCB2H36BHDE9H459HEF2H573HFD2H6F3H—40H70BH.04H8FBH┗┛A1H97BH┗┛1AH灭00HP0030HMAIN:MOV41H,#0BBH;对几个存放地址进行初始化MOV42H,#0BBHMOV43H,#0BBHMOV44H,#0BBHMOVSCON,#00HLCALLDISPLAY;初始化串行口控制寄存器,设置其为方式;初始化显示0KEY:MOVR3,#08H;用来存放两个数据MOVR4,#02HMOVP1,#0FFH;初始化P1口MOVA,P1;读取按键状态CPLAJZKEY;取正逻辑,高电平表示有键按下;A=0时无键按下,重新扫描键盘LCALLDELAY1MOVA,P1;消抖;再次读取按键状态CPLAJZKEY;再次判别是否有键按下PUSHAKEY1:MOVA,P1CPLAANLA,#0FHJNZKEY1;判别按键释放;按键未释放,等待LCALLDELAY1;释放,.0,.1,.2,MUL1;K1;K1;K1按下转去按下转去按下转去.3,DIV1;K1按下转去DIV1LJMPKEYADD1:LCALLBUFFER;显示加数和被加数MOV43H,#049HLCALLDISPLAY;显示加号MOVA,R3ADDA,R4DAAMOVR3,A;相加结果放入R6ANLA,#0FHMOVR4,A;结果个位放入R7MOVA,R3SWAPA;半字节交换,高四位放入低四位ANLA,#0FHMOVR3,A;结果的高位放入R6LCALLL;显示缓存区设置