维修网

 找回密码
 注册

QQ登录

只需一步,快速开始

微信扫码 , 快速开始

查看: 265|回复: 2

最近做得LED时钟和计数器

[复制链接]

classn_11

发表于 2010-2-2 21:24:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x

  k4 \' }" g3 g img0440a.jpg
  K* f' s$ U) j2 `/ W* c. h; y4 j* D" w
0 Q' z# V2 N: [( H" t 0bbf59ca.jpg
; e' a9 P; j3 i2 V6 q- l5 r
( F; U* x- t% F% A+ z 7 F- s& N$ Y+ t0 b
        ! l2 j9 h4 p5 _" R& N9 v

+ A/ O8 {) N1 \- A4 K5 B! m' I       
) O: p8 H3 ^/ U5 q5 }$ e! p( s 4 q% m, Y3 X4 y
       
8 m- G, i+ k# x! s 在下刚学单片机,客户需要做得单片机计数器。不用的时候还可以当表用。如感兴趣可以分享源程序。
( ]& _7 r: d+ Q, J6 s$ x' g          R. t; D" w2 l; u* h

7 v& B2 S5 [4 ^. X! `       
6 y9 H, {2 o- [& [. y7 N* V# g9 K 0 h+ ~; }, [0 g1 Z
        ; {( w9 d" M  l; N2 v, y6 U

" {3 d; G3 |/ Q5 i       
4 j& A2 B5 Z. ]8 q
5 `0 h* y' O0 s* v! b8 {8 h        ' |# }, o5 Y% d

! l4 {! e* R! g- F' {$ n        # L+ P$ l% ?) w  ^& N+ Z/ r" K
8 z2 W$ V8 K' O* {, h6 y* P
       
5 t3 K0 h0 ?$ Q- X# ]+ a1 C 谢谢大家

手机扫码浏览

classn_11

 楼主| 发表于 2010-2-2 21:24:06 | 显示全部楼层

  p9 k, [8 n8 k/ `8 X" y img0442a.jpg
& D8 Y. O4 C; o6 t3 q; b
- I7 b3 t! _" t6 o5 I 866fa068.jpg 6 V: }# q' D) y. B: n# ?; ^6 p

) m$ N7 x3 t+ B  m- N/ J 7 s0 e! T$ p7 _7 P
) P7 ~* O# v* e$ e
- e- s! S7 v9 J8 L2 T$ G
3 n- f. b0 y8 @- m/ q+ [
img0441a.jpg# T! o6 A3 m8 K; v- r
( G( I# F' e6 e
92a9f933.jpg

classn_11

 楼主| 发表于 2010-2-2 21:24:07 | 显示全部楼层
a_bit equ 20h ;个位寄存器
" f# @* w/ ^* D7 C" |) l$ [ b_bit equ 21h ;10位寄存器
0 u& A9 {7 m9 c" D8 `& P c_bit equ 22h ;百位寄存器( B3 ]3 k! a8 a) L' X' i' i0 j7 g
d_bit equ 23h
5 g0 C) K# _9 H e_bit equ 24h4 u2 G7 d+ U, U4 w' l
f_bit equ 25h
6 X9 E" |) Z' w7 O9 B, }org 0000h4 G. g2 I0 C. T( k
ajmp star7 ]+ n' E. c* ]
org 0020h: W+ ?4 B0 q# ]
star: ;初始化把所有的位全部清零' l3 n, B9 c2 _8 w- n( e5 `! C
mov a,#00h
6 ?' {+ H$ M: A4 | mov a_bit,a
: p5 V1 A) l( A mov b_bit,a7 `% C: W0 R7 {' W: X
mov c_bit,a
. p! n# U+ j! b* I: ` mov d_bit,a
; Q2 _% m" ]( D+ \- Q9 a+ H mov e_bit,a
& c  \# W6 [" M7 @! C/ J. v" e mov f_bit,a& S- l8 t4 S) x4 g/ @
stlop: acall display ;调用显示
. s# p, O' U: t8 \+ ?4 d jb p3.2,stlop ;监测键盘,如果p3.2按下那么执行显示
2 h8 A* r- \& `7 q, lwe: acall display ;显示保持!
7 J; p) ~6 N; }- g; O, t! v8 ~6 { acall d1ms ;延时1ms避免键盘误动作0 n; x! m* Y/ R
jnb p3.2,we ;如果p3.2还没有放开继续延时! l4 F0 S' N- {, x
count: ;计算数据部分
+ u  }9 Y# {, L- ~ inc a_bit ;个位加1( J' B0 A1 M; i& H( I4 H
mov a,a_bit) R; E& V2 k' ?+ ~& w6 u5 m2 [- W: v
cjne a,#10,stlop ;如果在10以内显示  A" O/ Q1 e0 L4 q3 {; W
mov a_bit,#00h ;如果到了10则清除/ z/ F" |' {0 J* \: ~8 M
inc b_bit ;10位加1
% \0 m% a9 R+ @9 w mov a,b_bit$ K6 o( E$ u* q/ R" Q2 }/ u9 L
cjne a,#10,stlop ;如果在10以内显示
5 X$ c; m5 L* w7 c+ h6 \7 D mov b_bit,#00h ;如果到了10则清除  _/ l% w4 Y' g& n
inc c_bit ;百位加1
$ M1 h0 L( Y' M mov a,c_bit3 I, ?% s2 j1 z+ T  W8 @3 l
cjne a,#10,stlop, K: O2 x3 Z8 i
mov c_bit,#00h
$ A, O8 c8 R/ g" U+ v+ o; I inc d_bit
' l0 W6 ^- ]. t  T( o: w5 M+ r0 H) h mov a,d_bit) |9 q' J+ B" z, c$ B; s
cjne a,#10,stlop, P- v1 b& Y" R# X0 }3 L& y
mov d_bit,#00h
% a( O" x# [) `) G" V, @# x/ m6 b* Z, J inc e_bit
/ q& D8 x- A+ Z% { mov a,e_bit5 K0 g+ b. g4 t8 y9 }
cjne a,#10,stlop$ e) g3 ^3 C8 Q) Q2 U
mov e_bit,#00h1 y# q$ K' G/ ^1 e4 }
inc f_bit; S% \# D/ ~/ B, ^4 @# |! i
mov a,f_bit8 ~9 a+ l/ ], |+ ?- h* \& c, N
cjne a,#10,stlop1 ^' _5 ?  H3 K+ @
mov f_bit,#00h# G; \7 z4 }6 y% U' j
ajmp stlop
( O5 T, A: G. A  A! z- qdisplay: ;显示8 s! _! [, Z7 c, p. w. n" B
mov dptr,#numtab ;送数据表??
" B2 D- N; ?0 o2 f) mmov a,a_bit ;送个位数据
1 m- B) ^4 k8 L  {2 l8 G MOVC A,@A+DPTR ;查表- N3 E8 J# E# y
mov p0,a ;送p0口显示
  X5 s3 C1 d) e+ \5 p) M clr p2.6 ;选中第一个数码管
! e( J* g7 b7 [- `2 {; U! h9 b3 q acall d1ms ;显示1ms7 }+ l2 K8 q4 X) t
setb p2.6 ;关闭显示0 X  l! g9 R: g
mov a,b_bit ;送10位数据' u( p$ u6 i" w& E3 @) O
MOVC A,@A+DPTR ; 查表$ B0 e& T, f8 ~/ Y9 r0 U$ v2 X
mov p0,a ;送p0口显示
1 l4 L( D  x! H1 ]! B clr p2.5 ;选中第二个数码管
) X- D( e' o& a! J" x1 b acall d1ms ;显示1ms
6 X2 }2 V& F1 |& ~0 F$ Z5 T# l setb p2.5 ;关闭显示
* t2 h$ d; q* J# ^' c' n& [mov a,c_bit5 ]  b# d, b* r  k
MOVC A,@A+DPTR( s% d. g: L9 b! Q9 `
mov p0,a3 Z# P1 v% ]$ w" n3 E0 r! V
clr p2.4
  c! [$ R9 \+ K3 K+ S  ] acall d1ms
& t# s% T9 ]3 ?9 R" r- B setb p2.4% e! A# u* I3 r$ F4 k
mov a,d_bit
, s/ Q2 g6 ?, I4 g/ K3 ~' F3 T; x MOVC A,@A+DPTR* K: t) h+ R# V9 Y' E+ w  p
mov p0,a# w, h! Q) a1 P" g" e/ P
clr p2.3
6 Y# N& g; W) |/ B! h1 x$ Z acall d1ms
: y+ y9 u& |, [/ b8 k+ Y' X" O setb p2.3
- v% z7 _, q# O7 ]( Zmov a,e_bit0 o4 }. A' t( P/ r8 D- N: w  A
MOVC A,@A+DPTR9 n4 e$ Q5 U. s" I
mov p0,a
. D( r8 d+ s$ m2 N/ _1 X clr p2.2: v2 q, m+ K1 y% \
acall d1ms" ]5 t9 B! t& M. @- K; B6 a
setb p2.24 ]- [! \8 g( Y, K
mov a,f_bit5 H; k' ?7 j$ l4 R- E4 J, q5 I( W
MOVC A,@A+DPTR9 ^/ q* n. O- e( a' H2 B
mov p0,a; L6 `5 R" o* ~
clr p2.1( ^8 [1 I; P- E: K
acall d1ms
5 j; k" u0 e: @: ? setb p2.1
: |' H8 r/ T$ i2 \2 g% n, j& @ ret
9 P8 @- ^+ B; l5 a3 S% ?+ XD1MS: ;数码管延时0 h) _9 h: y$ z( ], q: [' I+ \5 f
MOV R7,#27 K6 e6 d9 y+ ]4 }2 ~# j" q# @, `1 K
DJNZ R7,$( D; }" q& h( c% @
RET
: ]. |3 X/ r9 \  c7 B ;数码管代码表
! W& [: @, o1 e) T7 A/ _; U. Fnumtab: db 28h,7eh,0a2h,62h,74h,61h,21h,7ah,20h,60h; w7 J. J- b  A  o$ T
;0 1 2 3 4 5 6 7 8 95 \4 \3 @) M% @- C
end
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|手机版|小黑屋|最新贴|维修网 ( 粤ICP备09047344号

GMT+8, 2024-5-21 15:16 , Processed in 0.287163 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表