|
以共阴数码管,段/位共用P0为例,只传消隐码不锁存,起不到消隐作用。
- y( h, ^* V t& W! K //显示第一位! _1 k) F+ b$ ?' B: {$ D: b: d
P0=0x00;//消隐段码
1 j% {: e1 Q+ j' s8 b7 w DU=1; //送段码到锁存器
' h" E; w, C8 n* t- D6 X DU=0; //锁存# F) |/ V6 s1 x7 b0 m) f
//在段码消隐期间更改位码
y$ {- Z( R. L* x( Y, O! ?' ^ P0=0XFE;//位码
) ^% V! w. V/ n; A WE=1; //送位码到锁存器
$ |4 S) b6 w% F WE=0; //锁存- Y. c" X: y( p' C
//此时显示位已改变1 }" J+ J& _3 S
P0=0x06;//要显示的段码,例'1': ?9 [0 ]% j( m. ]
DU=1; //送段码到锁存器" Z6 j1 i1 O C5 g }
DU=0; //锁存
# G! h# Y5 \: A0 k delay(5)//延时(保持一小段时间显示内容)/ ~3 s$ }3 ]% s# E* A O
//显示第二位: `1 n7 Z/ ?9 e- N9 t" y0 ?
P0=0x00;//消隐段码
( X8 ?. Y: p8 w4 B/ d' A2 V DU=1; //送段码到锁存器
; X& J8 q' V( A8 R/ S, M$ E5 ^6 @ DU=0; //锁存
B, V' m; c# o //在段码消隐期间更改位码' H4 _: D! Q) }0 |$ B6 f
P0=0XFD;//位码/ G0 U% J3 `- V. s1 a* m6 h$ f
WE=1; //送位码到锁存器- o6 O8 i% a) E4 k2 x( `" F' N
WE=0; //锁存
5 G8 Y4 S- C3 I4 E2 t' i2 n //此时显示位已改变
4 ~9 G. f0 h) @ R4 s ^) V+ e: A P0=0x5b;//要显示的段码,例'2'* G6 |! C8 \& Z
DU=1; //送段码到锁存器
* H! ] Q4 d9 `% n7 o% N DU=0; //锁存
% N0 C k' Y$ k: S1 F delay(5)//延时(保持一小段时间显示内容)+ k6 y3 @; P% i
1 ~' V% z7 b. J) I; x% b6 X* N
//显示第N位,以此类推 |
|