首页 > 编程语言 >同时显示多个数字程序~实验板上的数码管从左到右同时显示“1”、“2”、“3”

同时显示多个数字程序~实验板上的数码管从左到右同时显示“1”、“2”、“3”

时间:2022-10-17 17:59:18浏览次数:48  
标签:0FFH 74164 djnz 从左到右 mov DELAY 数码管 call 板上

 1     DAT_74164    BIT    P0.6
 2     CLK_74164    BIT    P0.7
 3 
 4     org    0000H        
 5     jmp    MAIN
 6 
 7 ;*******************************************    
 8     org    0030H        ;Start program from 0030H        
 9 MAIN:
10     mov    P0,#0FFH      ;四个端口初始化,关闭外围
11     mov    P1,#0FFH    
12     mov    P2,#0FFH
13     mov    P3,#0FFH
14 
15 MAIN_LOOP:    
16     mov    P0,#11111110B    ;The first to show 1,位选
17     mov    a,#0F9H      ;段选,给a设一个F9:1111 1001,共阳0有效
18     call    sendTo74164    ;约等于60微秒
19     call    MIN_DELAY    ;约等于10000微秒
20 
21     mov    P0,#11111101B    ;The second to show 2
22     mov    a,#10100100B
23     call    sendTo74164
24     call    MIN_DELAY
25 
26     mov    P0,#11111011B    ;The third to show 3
27     mov    a,#10110000B
28     call    sendTo74164
29     call    MIN_DELAY
30 
31     jmp    MAIN_LOOP
32 
33     ret
34 ;*******************************************
35 ;Send data of A to chip 74LS164
36 sendTo74164:
37     push    07h
38     push    acc
39 
40     mov    r7,#08        ;send 8 bits      
41 SEND164_LOOP:
42     clr    CLK_74164    ;clear clock-line for reading data
43     rlc    a
44     mov    DAT_74164,c    ;move data-bit to data-line    
45     setb    CLK_74164    ;send data to 74164
46     djnz    r7,SEND164_LOOP
47         
48     pop    acc
49     pop    07h
50 ret
51 ;*******************************************
52 ;Dealy for a interval
53 DELAY:    
54     mov    r5,#20H
55 DELAY_2:
56     mov    R6,#0FFH    
57 DELAY_1:
58     
59     mov    R7,#0FFH
60 DELAY_0:
61     nop
62     nop
63     djnz    R7,DELAY_0
64 
65     djnz    R6,DELAY_1
66 
67     djnz    R5,DELAY_2
68 
69 ret
70 ;*******************************************
71 ;Dealy for a interval
72 MIN_DELAY: (内循环1ms)   
73     mov    R6,#8
74 DELAY_02:
75     mov    R7,#250
76 DELAY_01:
77     nop
78     nop
79     djnz    R7,DELAY_01
80     djnz    R6,DELAY_02
81 ret
82 ;*******************************************
83     END    

 

标签:0FFH,74164,djnz,从左到右,mov,DELAY,数码管,call,板上
From: https://www.cnblogs.com/luoxiaoluo/p/16800036.html

相关文章