资源描述:
《51单片机简单程序汇集》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、流水灯程序;使用杜邦线连接P1与LED端口J9ORG00HSTART:MOVA,#0FFH;赋初值CLRCMOVR2,#8LOOP1:RRCA;带进位右移MOVP1,ACALLDELAYDJNZR2,LOOP1MOVR2,#7LOOP2:RLCA;带进位左移MOVP1,ACALLDELAYDJNZR2,LOOP2JMPSTARTDELAY:MOVR3,#20;延时0.2秒D1:MOVR4,#20D2:MOVR5,#248DJNZR5,$DJNZR4,D2DJNZR3,D1RETEND查表法流水灯;使用
2、杜邦线连接P1与LED端口J9ORG00HSTART:MOVDPTR,#TABLE;将表的地址存入数据指针LOOP:CLRAMOVCA,@A+DPTR;到数据指针所指的地址取码CJNEA,#01,LOOP1;取出的码是否01H?否则跳到LOOP1JMPSTARTLOOP1:MOVP1,A;取出的值输出到P1端口MOVR3,#20;用于改变延时长度CALLDELAYINCDPTRJMPLOOPDELAY:MOVR4,#20D1:MOVR5,#248DJNZR5,$DJNZR4,D1DJNZR3,DELA
3、YRETTABLE:DB0FEH,0FDH,0FBH,0F7H;左移DB0EFH,0DFH,0BFH,7FHDB0FEH,0FDH,0FBH,0F7H;左移DB0EFH,0DFH,0BFH,7FHDB7FH,0BFH,0DFH,0EFH;右移DB0F7H,0FBH,0FDH,0FEHDB7FH,0BFH,0DFH,0EFH;右移DB0F7H,0FBH,0FDH,0FEHDB00H,0FFH,00H,0FFH;闪烁DB01H;结束码END动态扫描两位数码管;利用中断的99秒计时器,动态扫描两位数码管;P
4、0口接J3,数据端口;P2.2接J2B端子,表示段码锁存;P2.3接J2A端子,标志位码锁存LATCH1BITP2.2LATCH2BITP2.3ORG00HJMPSTARTORG0BHJMPTIM0START:MOVR3,#00;中断循环次数MOVR4,#0;时间初值MOVDPTR,#TABLEMOVSP,#40HMOVTMOD,#01H;定时器工作方式MOVTH0,#HIGH(65536-3800)MOVTL0,#LOW(65536-3800);初值4MSSETBTR0MOVIE,#82H;开中断T
5、IM0:MOVTH0,#HIGH(65536-3800)MOVTL0,#LOW(65536-3800)INCR3CJNER3,#250,X1;1SMOVR3,#0MOVA,R4;十进制转换MOVB,#10DIVABMOV20H,B;个位MOV21H,A;十位INCR4CJNER4,#100,LEDSCAN;到100则清零MOVR4,#0LEDSCAN:CALLSCAN;调用数码管扫描X1:PUSHACCPUSHPSWCALLSCANPOPPSWPOPACCRETISCAN:MOVA,21HMOVCA,
6、@A+DPTRMOVP0,ASETBLATCH1CLRLATCH1MOVP0,#11111110B;扫描子程序SETBLATCH2CLRLATCH2CALLDELAY1MOVA,20HMOVCA,@A+DPTRMOVP0,ASETBLATCH1CLRLATCH1MOVP0,#11111101B;0代表选通该位数码管SETBLATCH2CLRLATCH2CALLDELAY1RETDELAY:MOVR5,#50;典型延时程序D1:MOVR6,#40D2:MOVR7,#248CALLSCANDJNZR7,$
7、DJNZR6,D2DJNZR5,D1RETDELAY1:MOVR6,#4;扫描延时D3:MOVR7,#248DJNZR7,$DJNZR6,D3RETTABLE:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;共阴字码表END倒计时演示1;P0口接J3,数据端口;P2.2接J2B端子,表示段码锁存;P2.3接J2A端子,标志位码锁存;这是一个99994位数倒计时,为了方便观察,定时时间稍短。LD1BITP2.7LD2BITP2.6LD3BITP2.5LD4BITP2.
8、4LED1BITP2.3LED2BITP2.2LED3BITP2.1LED4BITP2.0BEEPBITP3.6LATCH1BITP2.2LATCH2BITP2.3SUBBIT01H;减位标志位BUF_LED1EQU24H;LED1缓存BUF_LED2EQU25H;LED2缓存BUF_LED3EQU26H;LED3缓存BUF_LED4EQU27H;LED4缓存BIN_LED1EQU28HBIN_LED2EQU29HBIN_LED3EQU2AHBIN_LE