|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
采用8段数码管,有一半以上的英文字母无法显示,本文介绍用15段数码管来显示英文字母的方法,显示清晰,全部显示大写字母。$ u. }0 M& w J, q
一、硬件 硬件电路如附图。采用扫描显示,二片74HC595串/并转换移位寄存器作段显示,占用P1.5、P1.6、P1.7口,一片74LS164串/并转换移位寄存器作位显示,可控制8位数码管,数码管为共阴管。如果用0.8英寸管,段位无需加驱动,整个硬件电路较简单,且可利用串行口上的74LS164扩展键盘。
2 E, D2 Y2 `* n1 b 二、软件 首先将数字或英文字母分为高8位和低8位,数字部分最好都设计在低8位,在传送段位数据时先送高8位后送低8位,并锁存在74HC595内,再通过串行口传送位数据。显示“ABCDEF14”的软件清单如下:4 p8 S* H+ f) v& w% o) r" [3 K
ORG 0
! |5 i1 v0 c7 y# I AJMP MAI
0 A" x- \3 g' j ORG 0030H
# ^6 A9 S% b: I1 BMAI: MOV SP,#65H7 C! m4 {7 D- w8 J
MOV 30H,#0AH
3 Z/ n9 i0 V4 J" r# j! j MOV 31H,#0BH/ p/ r/ l- _, \7 k
MOV 32H,#0CH1 t- q4 `- }8 L5 ? Q% m! _
MOV 33H,#0DH
/ _+ U. }1 i. y5 e MOV 34H,#0EH* O8 z+ s- l' a, ?. D; Q
MOV 35H,#0FH2 g( V: c& o$ s+ f4 ]( z) b
MOV 36H,#01H
' D' D3 g/ r$ a# r% c MOV 37H,#04H7 S: [# s# Y$ z6 H% e) ~$ \
MOV 40H,#1AH* P3 C6 S: A3 [9 V* I1 i$ ^
MOV 41H,#1BH
3 A8 l( N7 A) e* i4 g [4 U MOV 42H,#1CH
* H' ^% |, p( T& B: K/ E/ G MOV 43H,#1DH
% W7 C9 ?$ R2 ^ MOV 44H,#1EH& r/ ~, K) z: S: c0 `2 Q
MOV 45H,#1FH
, z2 s( j5 ]+ v: V# T- t MOV 46H,#11H; M' ?0 P4 O1 C% N
MOV 47H,#14H4 f p4 I7 t1 _5 Q' m; O
DIS: CLR C/ Q9 k S8 z! s% D9 z
MOV SCON,#00H
, ^( F3 Z4 x) h MOV RO,#30H( s; A" p5 z; l0 s, U, B
MOV R1,#40H
/ U* U& Y7 B' Q, p0 | MOV R2,#01H
# l8 Q: u1 p, Q6 V/ s4 C% O% { MOV R4,#08H) _9 H- X) |6 L7 W) ?& C
DIS1:MOV A,@R16 p3 s% A/ K4 L$ ~
ACALL WRIT! m+ j/ ]# v, d) c
MOV A,@R07 i9 Q8 B" v' v. s: U' L- c
ACALL WRIT
! m3 R. x, I1 T+ W CLR P1.6
% y5 z, t+ a" _+ ?( ?9 }3 n0 \ NOP
+ G. T6 {& U; _8 ] d5 s NOP
0 l# O# @! O: N- y: v; h+ g e SETB P1.6
3 V) V1 [0 c) `4 N1 S/ N C1 m MOV A,R21 r, Q# p8 _' K4 Y* \( z7 I
MOV SBUF,A
' o. a9 t- ]1 ?4 ]0 _) s, ^TL1: JNB TI,TL1
5 M: N) M, y9 E1 u5 q0 P CLR TI9 U; n* q, c: C+ k! u% G7 r
ACALL DILO
/ j) ?" i! t) R. E8 o( f3 Y$ j INC R1
, U- a# \% @2 V3 f! d& ~ INC R05 l. o0 z1 q5 I2 r& j
MOV A,R2
) }6 G X9 T9 o1 P" Y0 L7 c RL A; l8 i% D2 D, s4 E
MOV R2,A9 T$ j2 O) E# W9 k( b9 W
DJNZ R4,DIS1+ C7 d, X: f% z
AJMP DIS
0 L0 \$ H: e% R# DWRIT:MOV R3,#08H3 f0 d% _& r" j* w' J
ADD A,#13H) w$ y3 W: ^6 y t; g# R
MOVC A,@A+PC
% Y2 |2 y1 M7 Z5 a& pLD2: RLC A
0 K: H7 J( J% b! O MOV P1.5,C( d, X* ?( G- f# s _4 O% T
CLR P1.7- V5 Q- \+ A/ z
SETB P1.7/ M( ~- t4 o3 _+ Z% [4 K
DJNZ R3,LD2/ H8 ~; O' s& ]$ `" q6 J0 \- p
RET2 h0 h9 i! |) X" \( ]3 n1 J4 i
DIL0:MOV R7,#02H
4 e6 @9 z# l0 q9 b MOV R6,#0FFH
0 J$ E" J, B0 E3 H8 o9 ~DIL1:DJNZ R6,DIL1
0 u& j* X! g; z' r5 g. X DJNZ R7,DIL1
4 ^. ^- ^* x# X3 B" ~8 _ RET1 L. S" N/ p0 L9 s
DTAB:DB 0C0H,0FFH,24H,30H,1FH% @+ N/ K: d+ F) U' N
DB 12H,02H,0D8H,00H,10H
/ p1 z+ A1 W, n4 N DB 0B9H,0B0H,0C6H,
8 O# J+ H1 N" P, }) M: P& j DB 0F0H,46H,4EH) q, U. k }4 D7 p: U
DB 0FFH,0F9H,0FFH,0FFH,0F9H3 C2 m- \4 N& A W5 c" ` d
DB 0FFH,0FFH,0FFH,0FFH
# @# L! G! h5 M4 @; ^* b DB 0FFH,0EEH,0F9H,0FFH, I1 f/ B' U" @; ]0 g
DB 0F9H,0FFH,0FFH8 O2 t2 _1 r7 y# L
END |
|