|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
采用8段数码管,有一半以上的英文字母无法显示,本文介绍用15段数码管来显示英文字母的方法,显示清晰,全部显示大写字母。
+ B& _2 L% ?' b* N P 一、硬件 硬件电路如附图。采用扫描显示,二片74HC595串/并转换移位寄存器作段显示,占用P1.5、P1.6、P1.7口,一片74LS164串/并转换移位寄存器作位显示,可控制8位数码管,数码管为共阴管。如果用0.8英寸管,段位无需加驱动,整个硬件电路较简单,且可利用串行口上的74LS164扩展键盘。
$ _# F3 o+ N" V) i( A 二、软件 首先将数字或英文字母分为高8位和低8位,数字部分最好都设计在低8位,在传送段位数据时先送高8位后送低8位,并锁存在74HC595内,再通过串行口传送位数据。显示“ABCDEF14”的软件清单如下:
: O6 G: S2 K# X7 U3 H ORG 06 M. `. W) w, t
AJMP MAI
# a3 o( y" Z3 K4 U1 r; L ORG 0030H
* |! |2 S) M2 ]+ LMAI: MOV SP,#65H
) V g8 O3 f3 b( g( G [- t! V9 t3 d MOV 30H,#0AH" v; ]& N6 \' z" h) h% y
MOV 31H,#0BH
; A' [6 Y9 B5 \! \9 Y2 _ MOV 32H,#0CH0 f `! M& `$ I8 @
MOV 33H,#0DH
9 F/ P% G; M E MOV 34H,#0EH, B/ h7 }8 F( F$ E; A
MOV 35H,#0FH7 v& p4 y- Z5 h8 S+ e: T
MOV 36H,#01H, B3 }& N$ T) Y6 v( h S* S
MOV 37H,#04H6 m, j' H4 c$ S% M
MOV 40H,#1AH
) x; l% v b$ r q MOV 41H,#1BH
4 i) d+ d0 t; N; [6 O1 z" Y8 a MOV 42H,#1CH I1 W( ]5 R$ k) M( @3 w
MOV 43H,#1DH. W0 [" d- p! i2 a. |
MOV 44H,#1EH9 K, |, B) T3 i! |* S2 A7 l0 x/ M
MOV 45H,#1FH
! q4 e" U( l) J( c3 _- { MOV 46H,#11H
' e% _. n$ [4 m MOV 47H,#14H
9 w0 E% w5 e7 D+ q) g4 b* _DIS: CLR C S" C& u5 j* ~1 m
MOV SCON,#00H/ {6 T) \2 U! ?! `
MOV RO,#30H
4 o3 V- A3 f' w MOV R1,#40H
& C. g/ Z+ g: M# t MOV R2,#01H5 ?' u$ o+ V. C$ k/ R; M8 x
MOV R4,#08H
9 ~2 G# Z. o( c7 N" S2 E2 wDIS1:MOV A,@R1
, o2 d( ]0 s K- B9 F& ?$ ?0 M ACALL WRIT# w/ F5 F4 |! {. t& }
MOV A,@R0
6 k3 Y9 o' s+ F4 |* B7 F# Z: T2 U ACALL WRIT
) I; d8 J6 w; H2 I8 e- Q' C CLR P1.6& i* z2 x% ]+ X* v% [* }: u
NOP; B' E y( u1 U) d7 W; f
NOP
2 [* a; y' B. w/ Q7 q' x* h. A6 J3 \ SETB P1.6
( ]& K3 w; A7 ?+ ?: Y MOV A,R2) C; f& T2 B6 R% a, i1 m
MOV SBUF,A
4 t+ g+ Z. D' eTL1: JNB TI,TL1# R% T, w0 y3 R1 @- p
CLR TI
/ z w( _) N, w0 w2 H/ Y6 H ACALL DILO8 s! w0 g0 V% @6 T
INC R1
9 Z" z `: D7 p: j1 m/ P' b2 D INC R0: q3 ]4 u# \! j# t1 c0 q
MOV A,R2
! {9 o* v5 z$ t- q RL A8 m% [, `9 u6 T2 M
MOV R2,A8 J, K9 R) S" [, K) y2 q7 |
DJNZ R4,DIS1
5 j' y2 [1 p. ~( ?* S1 m6 o% t! X. _ AJMP DIS9 O5 n( Z3 k* G1 w/ k3 l
WRIT:MOV R3,#08H) A- K! C! o& G3 d$ O
ADD A,#13H. N5 Y+ G& i5 z7 p5 M8 ]
MOVC A,@A+PC$ H6 u$ P' w6 T* U6 s- q- B9 D1 Y
LD2: RLC A% U3 `, X# F; V. m5 l
MOV P1.5,C
5 T( C5 E4 p: n- M( _9 M CLR P1.7: I* v0 ^& ~$ M! e2 h9 z! _
SETB P1.72 j5 |0 ~. a T: V# k) \
DJNZ R3,LD2
1 q! {$ ~, T' g/ ]' ?9 } RET- f# _: H. t/ ~. i
DIL0:MOV R7,#02H
+ M6 k9 i" t$ \- E% \ MOV R6,#0FFH8 h9 ^* { Z$ L G- J& h
DIL1:DJNZ R6,DIL18 y7 u* g: X, E) l, a
DJNZ R7,DIL1
8 l3 u1 Y: P7 Z8 f) B V( a" A RET7 ~5 [! ]$ Y# N8 v4 p
DTAB:DB 0C0H,0FFH,24H,30H,1FH& i. p# |8 H, G) ?
DB 12H,02H,0D8H,00H,10H
- q. C( S5 F/ K% \/ v8 X! G- i DB 0B9H,0B0H,0C6H,5 [+ m# v5 b) T2 ~2 y" _
DB 0F0H,46H,4EH
! v3 `' [ P" t7 s R2 G* E DB 0FFH,0F9H,0FFH,0FFH,0F9H
8 F5 h; [0 J4 ` DB 0FFH,0FFH,0FFH,0FFH
$ X' h& R& I! B DB 0FFH,0EEH,0F9H,0FFH
+ N2 h4 F. ?( R, ] DB 0F9H,0FFH,0FFH
1 I! Q( U: N4 a( ?& N0 k' j8 l END |
|