发光二级管控制程序~发光二极管按L1-L8逐个发光
实验板发光二极管电路原理图:
程序源代码:
1 org 0000H 2 jmp MAIN 3 4 ;******************************************* 5 org 0030H ;Start program from 0030H 6 MAIN: 7 8 MAIN_LOOP: 9 mov P1,#0FFH ;Shutdown all led 将立即数送到累加器p1中 10 lcall DELAY 11 12 clr P1.0 ;Light the L1, 13 call DELAY 14 clr P1.1 ;Light the L2 15 lcall DELAY 16 clr P1.2 ;Light the L3 17 lcall DELAY 18 clr P1.3 ;Light the L4 19 lcall DELAY 20 clr P1.4 ;Light the L5 21 lcall DELAY 22 clr P1.5 ;Light the L6 23 lcall DELAY 24 clr P1.6 ;Light the L7 25 lcall DELAY 26 clr P1.7 ;Light the L8 27 call DELAY 28 29 ljmp MAIN_LOOP ;Next loop,无条件长转移到MAIN_LOOP
30 31 ret 32 ;******************************************* 33 ;Dealy for a interval,间隔的延迟 34 DELAY: 35 mov R6,#0FFH ;累加器R6传送到直接地址#0FFH 36 DELAY_1: 37 38 mov R7,#0FFH 39 DELAY_0: 40 nop 41 nop 42 djnz R7,DELAY_0 ;寄存器-1,若不为0则转到DELAY_0 43 44 djnz R6,DELAY_1 ;寄存器-1,若不为0则转到DELAY_1 45 46 ret 47 ;******************************************* 48 END
solution:
1 clr灯亮?
LED灯亮:有电压差(高电频减低电频),LED是一般0.7V左右;
共阳极接法:LED阳极接电源,阴极接单片机引脚;
单片机引脚输出高电频,没有电压差,灯不亮;
单片机引脚输出低电频,有电压差,灯亮;
共阴极接法:LED阴极接电源,阳极接单片机引脚;
2 机器周期的计算?
DELAY有几个周期:
3 mov P1,#0FFH ;Shutdown all led ?