9-21新概念单片机程序练习

9-21新概念单片机程序练习

ID:35523411

大小:122.97 KB

页数:16页

时间:2019-03-25

9-21新概念单片机程序练习_第1页
9-21新概念单片机程序练习_第2页
9-21新概念单片机程序练习_第3页
9-21新概念单片机程序练习_第4页
9-21新概念单片机程序练习_第5页
资源描述:

《9-21新概念单片机程序练习》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、新概念单片机程序练习:按键的抖动与防抖实验A-0:显示按键的次数(在P1.0用短路线替代按键,没冇防抖)ORG8000H;实验板开始执行的第一条指令所处的地址LJMPMAIN;跳转到主程序ORG800BH;定吋器0中断入口地址LJMPTINTO;跳转到定时器0屮断服务子程序ORG8100H;主程序开始的地址;避开中断入口地址MAIN:MOVSP,#0D0H;设置堆栈起始地址LCALLINI_8288;初始化CPU,注意用不同的子程序完成一定的功;能,这是模块化LCALLCLR_IN_RAM;清除内部RAMLCALLINI_CP

2、U;编程技术之一,方便程序的开发、管理和维护9L1:JNBFO,L2;F0为PSW中用户标志,在中断中置1表示中;断过。在此用于显示与中断同步CLRFO;次中断显示…位LCALLLED;调LED子程序■LJMPL1L2:JBP1.0,L1;无键按下则跳转L1INC70H;有键按下,70H加1计数MOVA,70H;将16进制数转换成BCD码MOVB,#100DIVABMOV52H,AMOVA,BMOVB,#10DIVABMOV51H,AMOV50H,BMOV53H,#19MOV54H,#19MOV55H,#19MOV56H,#1

3、9MOV57H,#19LJMPL2INI_8288:MOVP2,#58H;使89C52P2指向8255PA的控制寄存器接口结;构,89C52P0口地址应与低8位无关口输MOVA,#82H;8255A的控制字(82H),8255PC口输出PB;入,PA口输出MOVX@R0,A;送8255A控制字RETINI_CPU:MOVR7,#OFEHMOV50H,#16MOV51H,#16MOV52H,#16MOV53H,#0MOV54H,#17MOV55H,#17MOV56H,#0EHMOV57H,#18;显示位指针,从第一位开始显示;5

4、0H开始为显示缓冲区MOVRO,#50H;显示缓冲区指针MOV70H,#0SETBETO;T0开中断SETBEA;CPU开中断ORLTMOD,#01H;设置定时器0工作在模式1MOVTHO,#0FCH;设定定时器初值,定时时间为4ms。赋TH0MOVTLO,#67H;值为#0FCH,赋TLO初值为#67HSETBTRO;启动TORETCLR_IN_RAM:MOVRO,#OCFHCLRINRAM1:MOV@R0,#0DJNZRO,CLR_IN_RAM1RETTINTO:MOVTLO,#67H;重赋定时器初值,先赋低位字节更精确M

5、OVTH0,#OFEHPUSHPSW;保护现场PUSHACC;可以加入英他需要定时操作的程序RETURN:POPACCPOPPSWSETBFOTOPRETI;恢复现场■;设置用户标志以表示屮断过一次,不能在PSW”指令前设置LED:MOVP2,#50H;送位选码入PC口MOVA,R7MOVX@R0,ARLA;指向下一显示位MOVR7,A;保存显示位指针MOVA,@R0;读出待显示值LED1:MOVDPTR,#TAB;指向显示码查表区MOVCA,@A+DPTR;得到显示码MOVP2,#40H;指向PA口输出七段显示码INCR0;

6、修改显示缓冲区指针ANLOOH,#57H;比较指针;保证显示缓冲区指针在50H〜57H的范围内RET====================================七段显示码的表格TAB:DBOCOH,0F9H,0A4H,OBOH,99H,92H,82H,0F8H;0~F的显示DB80H,90H,88H,83H,0C6H,0A1H,86H,8EHDBOBFH,0C7H,89H,OFFH;一,L,HEND实验A-1:显示按键的次数(在P1.0用短路线替代按键,具冇延时防抖)ORG8000H;实验板开始执行的第一条指令所处

7、的地址LJMPMAIN;跳转到主程序ORG800BH;定时器0中断入口地址LJMPTINTO;跳转到定时器0中断服务子程序ORG8100H;主程序开始的地址;避开中断入口地址MAIN:MOVSP,#0D0H;设置堆栈起始地址LCALLINI_8288;初始化CPU,注意用不同的子程序完成一定的功;能,这是模块化LCALLCLR_IN_RAM;清除内部RAMLCALLINICPU;编程技术之一,方便程序的开发、管理和维护L1:JNBFO,L2FO为PSW屮用户标志,在屮断屮置1表示屮CLRF0LCALLLEDLJMPL1L2:J

8、BP1.0,L1;断过。在此用于显示与中断同步;一次中断显示一位;调LED子程序;无键按下则跳转L1MOV6EH,#100L3:DJNZ6FH,$DJNZ6EH,L3JNBP1.O,L3INC70HMOVA,70HMOVB,#100;有键按下,70H加1计数;将16进制数转换

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。