下载

0下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 实验九8255扫描键盘、显示实验一

实验九8255扫描键盘、显示实验一.doc

实验九8255扫描键盘、显示实验一

人鱼梅
2018-01-05 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《实验九8255扫描键盘、显示实验一doc》,可适用于IT/计算机领域

实验九扫描键盘、显示实验一实验九扫描键盘、显示实验一实验要求利用可编程并行口做一个扫描键盘实验把按键输入的键码显示在由控制的七段数码管上。PA口做键盘输入线PB口作扫描线。二实验目的掌握编程方法。掌握扫描键盘和显示的编程方法。三实验电路及连线CS接H则命令字地址为H,PA口地址为HPB口地址为HPC口地址为H。CS接H则的状态口地址为H的数据口地址为H模块中的十个短路套都套在侧。四实验说明在PA口与PB口组成的点阵列上把按键接在不同的点上将得到不同的键码本实验采用×的阵列共可按个键。显示部分由控制由驱动位数码管显示。五实验程序框图主程序框图读键显示部分框图六实验程序:DEQUH状态数据口地址DAEQUHPA口地址DBEQUHPB口地址ZEQUH状态口地址DEQUH数据口地址DISPTREQUH当前显示位置KEYVALEQUH读到的键码ORGHLJMPSTARTORGHSTART:MOVSP,#HLCALLDELAY延时MOVDISPTR,#H显示缓冲区头指针MOVDPTR,#DMOVA,#H置状态方式,PB,PC口输出,PA口输入MOVXDPTR,AMOVDPTR,#Z置命令字MOVA,#DHMOVXDPTR,A清LED显示MOVA,#HMOVXDPTR,AMOVA,#HMOVXDPTR,AMOVA,#DHKBDIS:LCALLRDKB读键盘MOVA,#FFHCJNEA,KEYVAL,DISBUF判读到键SJMPKBDIS没有则继续读键DISBUF:LCALLDISP把键移入显存LCALLDELAY延时消抖LCALLDELAYSJMPKBDISDISP:显存依次前移MOVR,#H在最后加入新键值MOVE:MOVA,RDECRMOVR,AINCRINCRCJNER,#H,MOVEMOVH,KEYVALMOVKEYVAL,#FFHMOVDPTR,#ZMOVA,#HMOVXDPTR,AMOVR,#HMOVR,#HMOVDPTR,#DLP:MOVA,RMOVXDPTR,AINCRDJNZR,LPRETRDKB:键盘扫描MOVA,#H扫描第一行MOVDPTR,#DBMOVXDPTR,AMOVDPTR,#DAMOVXA,DPTRMOVR,#HCJNEA,#FFH,KEYCAL判键是否按下MOVA,#H扫描第二行MOVDPTR,#DBMOVXDPTR,AMOVDPTR,#DAMOVXA,DPTRMOVR,#HCJNEA,#FFH,KEYCALSJMPNOKEY无键按下KEYCAL:计算键码MOVR,#HSHIFT:RRCAJNCCALCINCRDJNZR,SHIFTCALC:换算显示码MOVDPTR,#DLDATMOVA,RMOVCA,ADPTRMOVKEYVAL,ARETNOKEY:MOVKEYVAL,#FFH返回无键标志RETDELAY:MOVR,#H延时子程序DELAY:MOVR,#HDJNZR,$DJNZR,DELAYRETDLDAT:DBFH,H,BH,FH,H,DH,DH,H,,,,,,,DBFH,FH,H,CH,H,EH,H,H,,A,B,C,D,E,FEND实验十显示实验一实验要求编制程序利用及键盘显示接口电路编程实现按键的读取并将按键值显示在数码管上。二实验目的.掌握在系统中扩展键盘显示接口的方法。.掌握工作原理和编程方法。三实验电路及连线CS接H。模块中的十个短路套都套在侧。四实验说明利用可实现对键盘显示器的自动扫描以减轻CPU负担并具有显示稳定、程序简单、不会出现误动作等特点。本实验系统中的状态命令口地址位H数据口地址位H。示例程序运行将显示""并等待按键输入将键值显示在数码管上(只响应F按键)。五实验程序框图六实验程序:ZEQUH状态命令口地址DEQUH数据口地址LEDMODEQUH右端输入八位字符显示外部译码键扫描方式,双键互锁LEDFEQEQUH扫描速率LEDCLSEQUDH清除LEDWREQUH设定的将要写入的显示RAM地址ORGHAJMPSTARTORGHSTART:MOVSP,#HLCALLINIT初始化WAIT:MOVDPTR,#ZMOVXA,DPTRANLA,#FHJZWAITMOVA,#HMOVXDPTR,AMOVDPTR,#DMOVXA,DPTRANLA,#FHMOVR,#HMOVR,ALCALLDISLEDSJMPWAITINIT:初始化子程序PUSHDPH保存现场PUSHDPLPUSHACCLCALLDELAY延时MOVDPTR,#ZMOVA,#LEDMOD置工作方式MOVXDPTR,AMOVA,#LEDFEQ置键盘扫描速率MOVXDPTR,AMOVA,#LEDCLS清除LED显示MOVXDPTR,ALCALLDELAY延时MOVDPTR,#ZMOVA,#HMOVDPTR,#DMOVA,#HMOVXDPTR,AMOVA,#HMOVXDPTR,AMOVA,#HMOVXDPTR,AMOVA,#HMOVXDPTR,AMOVA,#EFHMOVXDPTR,AMOVA,#HMOVXDPTR,AMOVA,#BHMOVXDPTR,AMOVA,#FHMOVXDPTR,APOPACC恢复现场POPDPLPOPDPHRET显示字符子程序输入:R,位置R,值DISLED:PUSHDPH保存现场PUSHDPLPUSHACCMOVA,#LEDWR置显示起始地址ADDA,R加位置偏移量MOVDPTR,#ZMOVXDPTR,A设定显示位置MOVDPTR,#LEDSEG置显示常数表起始位置MOVA,RMOVCA,ADPTR查表MOVDPTR,#DMOVXDPTR,A显示数据POPACC恢复现场POPDPLPOPDPHRETDELAY:延时子程序PUSH保存现场PUSHMOV,#HDELAY:MOV,#HDJNZ,$DJNZ,DELAYPOP恢复现场POPRETLEDSEG:DBFH,H,BH,FH,H,DH,DH,H',,,,,,,'DBFH,FH,H,CH,H,EH,H,H',,A,B,C,D,E,F'DBDH,H,H,H,H,FH,H'U,,,,I,O,P,'END实验十一显示电子钟实验一实验要求利用键盘显示接口电路做成一个电子钟。该钟使用T作ms的定时中断。利用可实现对键盘显示器的自动扫描以减轻CPU负担其有显示稳定、程序简单、不会出现误动作等特点。本实验利用实现显示扫描自动化。操作命令字较多根据需要来灵活使用通过本实验可初步熟悉使用方法。电子钟做成如下格式:XXXXXX由左向右分别为:时、分、秒。二实验目的掌握在系统中扩展键盘显示接口的方法。掌握工作原理和编程方法。进一步掌握中断处理程序的编程方法。三实验电路及连线CS接H。模块中的十个短路套都套在侧。四实验说明通用接口芯片根据应用需要可以在多种模式下工作详见有关手册。五实验程序框图ISLED子程序框图DISPLAY子程序框图六实验程序见:ZEQUH状态命令口地址DEQUH数据口地址LEDMODEQUH左边输入八位字符显示外部译码键扫描方式,双键互锁LEDFEQEQUFH扫描速率LEDCLSEQUCH清除显示RAMLEDWREQUH设定的将要写入的显示RAM地址ORGHAJMPSTARTORGBHINTT入口地址AJMPINTTORGHSTART:MOVSP,#HLCALLINIT初始化MOVR,#H时MOVR,#H分MOVR,#H秒MOVR,#H标志MOVTMOD,#HMOVTL,#HmS的时间常数MOVTH,#CHMOVR,#SETBTRSETBETSETBEA允许中断WAIT:CJNER,#FFH,WAITLCALLDISPLAYMOVR,#SJMPWAITINIT:初始化子程序PUSHDPH保存现场PUSHDPLPUSHACCLCALLDELAY延时MOVDPTR,#ZMOVA,#LEDMOD置工作方式MOVXDPTR,AMOVA,#LEDFEQ置键盘扫描速率MOVXDPTR,AMOVA,#LEDCLS清除LED显示MOVXDPTR,ALCALLDELAY延时POPACC恢复现场POPDPLPOPDPHRET显示字符子程序输入:R,位置R,值DISLED:PUSHDPH保存现场PUSHDPLPUSHACCMOVA,#LEDWR置显示起始地址ADDA,R加位置偏移量MOVDPTR,#ZMOVXDPTR,A设定显示位置MOVDPTR,#LEDSEG置显示常数表起始位置MOVA,RMOVCA,ADPTR查表MOVDPTR,#DMOVXDPTR,A显示数据POPACC恢复现场POPDPLPOPDPHRETDELAY:延时子程序PUSH保存现场PUSHMOV,#HDELAY:MOV,#HDJNZ,$DJNZ,DELAYPOP恢复现场POPRETINTT:INTT中断服务子程序PUSHDPH保护现场PUSHDPLPUSHACCPUSHPSWCLRTRMOVTL,#HmS定时常数MOVTH,#CHSETBTRDJNZR,EXIT判断毫秒=MOVR,#DELAYSECONDMOVR,#FFH置秒标志CJNER,#H,SECOND判断秒=MOVR,#HCJNER,#H,MINUTE判断分=MOVR,#HCJNER,#H,HOUR判断时=MOVR,#HHOUR:MOVA,RADDA,#时加DAAMOVR,AMINUTE:MOVA,RADDA,#分加DAAMOVR,ASECOND:MOVA,RADDA,#秒加DAAMOVR,AEXIT:POPPSW恢复现场POPACCPOPDPLPOPDPHRETI中断返回DISPLAY:MOVA,RANLA,#FHMOVR,AMOVR,#LCALLDISLED显示小时低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示小时高位MOVA,RANLA,#FHMOVR,AMOVR,#LCALLDISLED显示分钟低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示分钟高位MOVA,RANLA,#FHMOVR,AMOVR,#LCALLDISLED显示秒低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示秒高位RETLEDSEG:DBFH,H,BH,FH,H,DH,DH,H',,,,,,,'DBFH,FH,H,CH,H,EH,H,H',,A,B,C,D,E,F'DBDH,H,H,H,H,FH,H'U,,,,I,O,P,'END实验十二键盘显示实验(电子秒表)一实验要求利用实验机上提供的键盘电路数码显示电路设计一个电子钟用小键盘控制电子钟的启停及初始值的预值。电子钟做成如下格式:XXXXXXXX由左向右分别为:时、分、秒、百分之一秒C键:清除显示A键:启动电子钟计时D键:停止电子钟停止计时B键:设置初值:由左向右依次输入预置的时、分、秒、百分之一秒值同时应具有判断输入错误的能力若输入有错则显示:按B键即可重新输入预置值:E键:程序退出。二实验目的进一步掌握键盘显示电路的编程方法。进一步掌握定时器的使用和编程方法。进一步掌握中断处理程序的编程方法。三实验电路及连线CS接H。模块中的十个短路套都套在侧。四实验说明通用接口芯片根据应用需要可以在多种模式下工作详见有关手册。五实验程序框图主程序框图SETT子程序框图GETWORD子程序框图六实验程序见:ZEQUH状态命令口地址DEQUH数据口地址LEDMODEQUH左边输入八位字符显示外部译码键扫描方式,双键互锁LEDFEQEQUFH扫描速率LEDCLSEQUCH清除显示RAMLEDWREQUH设定的将要写入的显示RAM地址READKBEQUH读FIFORAM地址的命令字ORGHAJMPSTARTORGBHINTT入口地址AJMPINTTORGHSTART:MOVSP,#HLCALLINIT初始化MOVR,#H时MOVR,#H分MOVR,#H秒MOVR,#H毫秒MOVR,#FFH标志MOVTMOD,#HMOVTL,#H毫秒的时间常数MOVTH,#DCHLCALLDISmSSETBETSETBEA允许中断WAIT:LCALLGETKEY读键盘CJNEA,#FFH,CONT判断是否有键输入MOVA,BCJNEA,#CH,KEYG输入键是'C',转CLEARTLCALLCLEARTKEYG:CJNEA,#AH,KEYD输入键是'G',转STARTTLCALLSTARTTKEYD:CJNEA,#DH,KEYP输入键是'D',转STOPTLCALLSTOPTKEYP:CJNEA,#BH,KEYE输入键是'P',转SETTLCALLSETTKEYE:CJNEA,#EH,CONT输入键是'E',转MONITORAJMPMONITORCONT:CJNER,#FFH,WAIT若无秒标志则循环LCALLDISPLAY显示时间MOVR,#清标志SJMPWAIT循环MONITOR:NOPSJMP$等待回到监控CLEART:时间清零子程序CLRTR关计数器MOVR,#H小时清零MOVR,#H分钟清零MOVR,#H秒清零MOVR,#H毫秒清零MOVR,#FFH置秒标志LCALLDISmS显示毫秒RETSTARTT:电子钟计时子程序SETBTRRETSTOPT:电子钟停止计时子程序CLRTRRETSETT:设置初值子程序CLRTR关计数器MOVR,#LCALLGETWORD读小时数CJNEA,#FFH,INVALID判断输入合法性MOVA,BADDA,#JCINVALID判断输入小时值<MOVA,BMOVB,#DIVABSWAPAADDA,BMOVR,A保存输入的值MOVR,#LCALLGETWORD读分钟数CJNEA,#FFH,INVALID判断输入合法性MOVA,BADDA,#JCINVALID判断输入分钟数<MOVA,BMOVB,#DIVABSWAPAADDA,BMOVR,A保存输入的值MOVR,#LCALLGETWORD读分钟数CJNEA,#FFH,INVALID判断输入合法性MOVA,BADDA,#JCINVALID判断输入分钟值<MOVA,BMOVB,#DIVABSWAPAADDA,BMOVR,A保存输入的值MOVR,#LCALLGETWORD读毫秒数CJNEA,#FFH,INVALID判断输入合法性MOVA,BMOVB,#DIVABSWAPAADDA,BMOVR,A保存输入的值AJMPSETTOKINVALID:LCALLCLEART时间清零SETTOK:LCALLDISmS显示毫秒LCALLDISPLAY显示时间RETGETWORD:读数子程序WKEY:LCALLGETKEY读键盘CJNEA,#FFH,WKEY无键输入,则再读MOVA,BADDA,#CHJCERROR判断输入是否大于MOVA,BSUBBA,#HJCERROR判断输入是否小于MOVR,ALCALLDISLED显示输入的字符MOVB,#MULABPUSHACC保存输入的值WKEY:LCALLGETKEY读键盘CJNEA,#FFH,WKEY无键输入则再读MOVA,BADDA,#CH判断输入是否大于JCERRORMOVA,BSUBBA,#H判断输入是否小于JCERRORDECRMOVR,ALCALLDISLED显示输入的字符MOVB,APOPACCADDA,BMOVB,A把得到的值存在BMOVA,#FFH置合法输入标志AJMPKEYOKERROR:POPACCERROR:MOVA,#置非法输入标志KEYOK:RETINIT:初始化子程序PUSHDPH保存现场PUSHDPLPUSHACCLCALLDELAY延时MOVDPTR,#ZMOVA,#LEDMOD置工作方式MOVXDPTR,AMOVA,#LEDFEQ置键盘扫描速率MOVXDPTR,AMOVA,#LEDCLS清除LED显示MOVXDPTR,APOPACC恢复现场POPDPLPOPDPHRET读取键盘子程序输入:无输出:B:读到的键码A:按键的标志GETKEY:PUSHDPH保存现场PUSHDPLPUSHPSWMOVDPTR,#ZMOVXA,DPTR读状态ANLA,#H屏蔽DDJNZGETVAL判断是否有键输入MOVA,#H置标志(无键输入)SJMPNKBHITGETVAL:MOVA,#READKB读FIFORAM命令MOVXDPTR,AMOVDPTR,#DMOVXA,DPTR读键ANLA,#FH屏蔽SHIFT和CTRL键MOVDPTR,#KEYCODE键码表起始地址MOVCA,ADPTR查表MOVB,A置返回键值MOVA,#FFH置标志(有键输入)NKBHIT:POPPSW恢复现场POPDPLPOPDPHRET显示字符子程序输入:R,位置R,值DISLED:PUSHDPH保存现场PUSHDPLPUSHACCMOVA,#LEDWR置显示起始地址ADDA,R加位置偏移量MOVDPTR,#ZMOVXDPTR,A设定显示位置MOVDPTR,#LEDSEG置显示常数表起始位置MOVA,RMOVCA,ADPTR查表MOVDPTR,#DMOVXDPTR,A显示数据POPACC恢复现场POPDPLPOPDPHRETDELAY:延时子程序PUSH保存现场PUSHMOV,#HDELAY:MOV,#HDJNZ,$DJNZ,DELAYPOP恢复现场POPRETDISmS:MOVA,RANLA,#FHMOVR,AMOVR,#LCALLDISLED显示毫秒低位MOVA,RSWAPA高低半字节交换ANLA,#FHMOVR,AMOVR,#LCALLDISLED显示毫秒高位RETINTT:INTT中断服务子程序PUSHDPH保护现场PUSHDPLPUSHACCPUSHPSWCLRTRMOVTL,#H毫秒定时常数MOVTH,#DCHSETBTRMOVA,RADDA,#毫秒数加DAAMOVR,ALCALLDISmS显示毫秒CJNER,#,EXIT判断毫秒=MOVR,#FFH置秒标志CJNER,#H,SECOND判断秒=MOVR,#HCJNER,#H,MINUTE判断分=MOVR,#HCJNER,#H,HOUR判断时=MOVR,#HHOUR:MOVA,RADDA,#时加DAAMOVR,AMINUTE:MOVA,RADDA,#分加DAAMOVR,ASECOND:MOVA,RADDA,#秒加DAAMOVR,AEXIT:POPPSW恢复现场POPACCPOPDPLPOPDPHRETI中断返回DISPLAY:MOVA,RANLA,#FHADDA,#HMOVR,AMOVR,#LCALLDISLED显示小时低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示小时高位MOVA,RANLA,#FHADDA,#HMOVR,AMOVR,#LCALLDISLED显示分钟低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示分钟高位MOVA,RANLA,#FHADDA,#HMOVR,AMOVR,#LCALLDISLED显示秒低位MOVA,RSWAPAANLA,#FHMOVR,AMOVR,#LCALLDISLED显示秒高位RETLED显示常数表LEDSEG:DBFH,H,BH,FH,H,DH,DH,H',,,,,,,'DBFH,FH,H,CH,H,EH,H,H',,A,B,C,D,E,F'DBBFH,H,DBH,CFH,EH,EDH,FDH,H',,,,,,,'DBFFH,EFH,FH,FCH,BH,DEH,FH,FH',,A,B,C,D,E,F'DBDH,H,H,H,H,FH,H'U,,,,I,O,P,'键盘键码表KEYCODE:DBH,H,H,H,H,H,H,H',,Q,W,A,S,,Z'DBH,H,AH,BH,CH,DH,EH,FH',,E,R,D,F,X,C'ENDF

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/34

VIP

意见
反馈

免费
邮箱