CLR P2.7 ;送低电平到第一个数码管,开启数码管。 CLR P2.6 ;送低电平到第二个数码管,开启数码管。
MOV P0,#06H;让数码管显示“1” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0FDH;点亮第二个发光二极管。 MOV P0,#5bH;让数码管显示“2” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0FBH;点亮第三个发光二极管。 MOV P0,#4fH;让数码管显示“3” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0F7H;点亮第四个发光二极管。 MOV P0,#66H;让数码管显示“4” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0EFH;点亮第五个发光二极管。 MOV P0,#6dH;让数码管显示“5” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0DFH;点亮第六个发光二极管。 MOV P0,#7dH;让数码管显示“6” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#0BFH;点亮第七个发光二极管。 MOV P0,#07H;让数码管显示“7” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#7FH;点亮第八个发光二极管。 MOV P0,#7fH;让数码管显示“8” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P1,#00H;灭了所有的发光二极管。 MOV P0,#3FH;让数码管显示“0” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#06H;让数码管显示“1” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#5bH;让数码管显示“2” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#4fH;让数码管显示“3” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#66H;让数码管显示“4” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#6dH;让数码管显示“5” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7dH;让数码管显示“6” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#07H;让数码管显示“7” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“8” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#6fH;让数码管显示“9” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“A” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“b” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“C” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“d” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“E” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“F” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV P0,#7fH;让数码管显示“Y” 。 LCALL DELAY;调用延时子程序,起到延时的目的。
MOV R4,#9;送蜂鸣器的报警次数。
LOOP:SETB P2.0;不发声
LCALL DELAY;调用延时子程序,起到延时的目的。
CLR P2.0;发声。
LCALL DELAY;调用延时子程序,起到延时的目的。
DJNZ R4,LOOP;发声九次后向下执行。
SETB P2.0;关闭发声
LJMP START;跳转到标号为START处执行,循环本程序。
DELAY:MOV R7,#200;这是延时子程序。
D1:MOV R6,#200 D2:MOV R5,#200 D3:DJNZ R5,D3
DJNZ R6,D2 DJNZ R7,D1
RET;延时子程序返回指令。
END;结束伪指令。
相关推荐: