维修网

 找回密码
 注册

QQ登录

只需一步,快速开始

微信扫码 , 快速开始

查看: 379|回复: 9

本人刚做的时钟

[复制链接]

该用户从未签到

发表于 2010-1-29 21:12:31 | 显示全部楼层 |阅读模式

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

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

x
2051,4路闹铃,6位时间及日期显示,1位星期单独显示,段码P1.4-1.7输出 位码P1.1-1.3+138+9015输出,为了布线方便138的A接P1.3,C接P1.1,下面是源程序,有高手改下让程序小点为,多加一路闹铃,

手机扫码浏览

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:32 | 显示全部楼层
TIMERKEY BIT P3.1
) n. J, ~+ s* Q7 M; Y" BSETKEY BIT P3.2
, [1 J5 O* ~! F, ]MODEKEY BIT P3.30 l+ e" o, f! g( b
BEEPOUT BIT P3.0* B$ G+ y7 }1 a" g- _

* C$ J/ B) K# P- p2 ?3 j; B( ^" NSDISP0 EQU 10H
& J" \0 f( }0 jSDISP1 EQU 11H) ^& w4 C6 g* J" C" _' B2 v
MDISP0 EQU 12H4 r# p( b& h/ D
MDISP1 EQU 13H, k3 g5 t7 [! Y
HDISP0 EQU 14H8 ?# n# S8 g6 @% R% t
HDISP1 EQU 15H! e% m* I7 G9 |" p/ t/ f8 `7 W% F

( }7 ?' Z6 H; J4 J; ]% F. f& ]TIMER0M EQU 16H2 m& P, x1 |! L1 c. Q8 I
TIMER0H EQU 17H
9 N) r; J) d; b+ ]
$ s- M  C% z1 u! Z8 a: ITIMER1M EQU 18H
7 K3 x& ]6 P8 G( n" A4 J+ TTIMER1H EQU 19H8 T" P1 H0 |) M5 d/ i( b% V

6 ?$ L. [, }7 G- D9 fTIMER2M EQU 1AH) o3 F3 F7 n4 J. @- r& r
TIMER2H EQU 1BH; P$ Y/ _9 Y& ]1 k; m* o

9 @5 \8 W" X$ {. GTIMER3M EQU 1CH
$ U8 T8 X5 f; ?* j  y7 x3 Z7 h- uTIMER3H EQU 1DH
$ v0 _; b* a- x4 [2 }. O) l, s3 ?, p& ]
TM0DISP0 EQU 1FH
' g0 u. j: L/ r. e% @: wTM0DISP1 EQU 25H  i, w5 x0 E8 Y9 m" l* X
TH0DISP0 EQU 26H! B' \# [- g/ z. _2 c) Z' X
TH0DISP1 EQU 27H
2 L- ]" M$ w4 Z  u! b4 w) Y, P" }4 d8 y0 R3 ?( ~4 ?: ~) G' M5 Q. F
TM1DISP0 EQU 28H0 T8 ^* n! ?) l& k; {9 [" ~3 z, Y
TM1DISP1 EQU 29H3 W: ^+ a  f1 |- Z  b9 g7 Z$ B) O
TH1DISP0 EQU 2AH" z; K2 U* V- Z
TH1DISP1 EQU 2BH
7 W5 R0 ^. W4 @& v
* y( T$ @+ Z( q4 R3 iTM2DISP0 EQU 2CH
! ~; r. q: _/ y! }TM2DISP1 EQU 2DH
, e  l5 c* E8 w0 ITH2DISP0 EQU 2EH* R8 }# l3 e/ g. P* Y. ~
TH2DISP1 EQU 2FH
. o( r/ a1 M, x0 N3 X/ t! i" i0 c9 b0 l) o
TM3DISP0 EQU 30H
4 Z5 M# T+ t5 jTM3DISP1 EQU 31H
9 m0 S. \* p; DTH3DISP0 EQU 32H
3 K7 r' z4 [8 r& o$ z+ |TH3DISP1 EQU 33H4 i5 U* c! x3 t
5 r1 c; P! j" w- X) h& K7 j
- y5 A6 ^3 E/ P
TIMERTEMPM EQU 34H3 n, V6 w) h9 e; E0 p
TIMERTEMPH EQU 35H
+ [" }: {3 H7 [. a6 I- t; m2 [& U8 O4 ?% w
;TS1DISP0 EQU 31H; ]7 C2 y, k" G; o' i4 n
6 |, M) S0 x( U$ k
1 U9 @/ c- p1 M( W
;TS2DISP0 EQU 1BH, w; L" K& G& L  j2 e6 _
0 i5 ]; q# F2 j% I
! G4 d3 d2 {, |: E9 y
TMDISP0 EQU 36H
( |) K* p/ ?$ ]TMDISP1 EQU 37H
& w% v8 T0 Y; v* }3 i  |THDISP0 EQU 38H4 @9 i; i$ c3 A! J
THDISP1 EQU 39H , R- u+ F% H+ a" S1 p( j: @
WEEKDISP0 EQU 46H! C* Z( u2 Z. E
DADISP0 EQU 40H
3 k$ k7 g$ }0 x6 F' ]& @& w& |1 bDADISP1 EQU 41H
7 b) q1 \! z* qMODISP0 EQU 42H
5 h( d! R1 F' t! _) X+ nMODISP1 EQU 43H
4 s$ x& T& D5 H, yYEDISP0 EQU 44H4 f3 \4 G" F  K) e1 B8 U) q
YEDISP1 EQU 45H
7 I4 H+ M5 F5 _0 c4 F4 l# G
# ?: M) N: O" f6 fORG 0000H7 T+ L; J; u6 r' c- D/ I' F3 h
JMP START- [6 D* n' ?. |4 ]5 I$ m  {4 ~* `
ORG 000BH
6 I7 ^% _& p0 v5 C/ `JMP TOUT% d, `; v' H- F" T. R! ]/ L
ORG 001BH! A7 r$ C" A% H- u( U% A
JMP FLASHTOUT1 s3 c+ [5 o7 H
& M# ^7 p) ^# O: U' ]3 n8 ]. n
START: , n; {3 b! d" I* Q$ W! t2 f  X
MOV R0,#80H ;清寄存器
! ?% z7 S8 w& ICR0:
7 Q& @! G+ O- M DJNZ R0,CR1
! r* w8 q; |+ Q, k+ a( F/ ? NOP
3 H- N( R8 z+ Q5 c2 V, B JMP START1
% h: V# R) w4 ECR1:
  x) X2 m5 j( Z0 \# T MOV @R0,#00H
7 F! m" G8 i3 A, p: V NOP
3 M& t# ?; l0 L+ M9 g NOP+ h& L# W1 J; _3 X' g
JMP CR0
# Y% G# d9 U( I, U4 K  o; TSTART1:0 `8 B# R( o5 [) y$ t) P2 W- T
MOV IE,#0CAH ;设置定时时间(100ms)
* l7 x4 }+ X. R$ ]9 j+ M MOV IP,#0C2H
0 n) h1 r' W% e  m3 Y MOV SP,#47H ;设置找钱地址- z' j7 n$ k2 }8 `% J7 [1 t  s
MOV TMOD,#11H ;设置定时器0为定时定时模式1$ C" J# _, K/ W  b8 M- H9 t$ j
MOV 0FH,#1( x8 l( G; h) i0 }; v5 Y" h) @
MOV 0EH,#18 ?' R: e( ~/ E# @6 E  h
SETB 21H.0 ;DISPTIME ! }7 }6 Q1 i- E
MOV HDISP0,#8FH
/ n9 I5 ^+ t3 r6 j3 Q0 Q MOV WEEKDISP0,#7FH ;2007年1月1日星期18:00
) }0 L% G" s3 ~, o MOV TH0,#3CH
+ t1 ^# {  y/ _; k" t  J/ G9 s MOV TL0,#0B0H
0 o% B  }6 q1 \7 @/ w8 V/ b MOV TH1,#3FH
$ ~8 S* a9 S5 c4 S8 D4 U MOV TL1,#0B0H
' A$ Q0 ?  G, `- x: T MOV R5,#1H
( {7 c9 U  v1 Z% E7 I  s( o8 e MOV R6,#206 d- S+ `! r' \1 Z! l6 M+ ?
MOV R2,#8; T  k; d. H2 q( m0 Z+ C
MOV 23H,#0AAH
/ b' ?9 W% _( A$ M SETB 20H.0
. Q1 Z9 f+ q; f SETB RS05 B- L' P  ?# Z5 T& B
MOV R6,#1: V5 q' D8 S8 S! b) g
MOV R7,#1
4 W, v- q+ s6 w MOV R5,#0
, D) I, Q5 B% } CLR RS0
+ O# T9 c$ Y- Q; r1 B; S, K SETB TR0 ;开始定时7 ~$ }. s" l7 I+ i6 H2 R: @% K1 |/ T8 ~7 J

6 ?) @% j9 v& v: E' l& Q: RCDISP:: q1 P& i/ `: O
MOV SP,#47H& ]3 _1 g# s+ z3 Z. A; _5 x: M4 f
JNB 23H.0,KEY10;定时时间是否到
6 F8 J, Z, w6 n. w: b JB 23H.1,OUTBEEP;定时是否开启
1 `. T! ^+ F2 |) j. ~% uKEY10:
/ }$ O  g6 Q, B0 l JNB 23H.2,KEY20;定时时间是否到
  E7 ~: N$ L) M6 `8 s' z9 Z JB 23H.3,OUTBEEP;定时是否开启$ Z0 C# {) g3 y' b6 `
KEY20:8 Q( a' a& G% x4 I! R( P9 h9 P5 r
JNB 23H.4,KEY30;定时时间是否到$ Y* W& \* i$ f
JB 23H.5,OUTBEEP;定时是否开启
8 w, c6 F8 i  ^8 U1 e4 oKEY30:# x7 l6 C& M1 Q* i0 _' o8 m
JNB 23H.6,ALTM;定时时间是否到
$ Z. q( c; x! S2 V JNB 23H.7,ALTM;定时是否开启
, K" t7 u- Z# Y5 @% nOUTBEEP:
7 I/ z7 p: M! w3 n$ g, A CLR BEEPOUT;两个条件中考都满足,开启讯响器- f. g  g4 }8 ?. k& F3 a" ^4 Z5 g; Q
ALTM:, w2 G% ^, m- `4 c/ s
JB 21H.1,ZZ1 ; u! ~' @0 b+ l- A, q9 q( R
JB 21H.2,ZZ2
" Q  x6 M' m3 R9 E) W JB 21H.3,ZZ3
( D$ m( S. }, F9 R& L: x JB 21H.4,ZZ4
; N1 k0 T5 _! _' i# g: L JB 20H.4,ZZ5( Z" y* `- r2 k0 O4 w0 r# e
CALL WEEKDISP
" ~7 K+ y9 |2 c, w CALL TIMEDISP
) l; v7 B: ?: } JMP KEYSCAN
* s: [, v! T' @) vZZ1:
) g# S$ O+ Q" m, H0 q6 I/ t. S+ n$ C CALL WEEKDISP
. Y$ `+ ^, i/ r) v0 } CALL TIMER0DISP
, B% S6 M5 [. G- h' M* z4 o- I JMP KEYSCAN
0 e5 y* K  \+ n8 y5 ~9 GZZ2:
; Y  A; R( Z. M4 n6 U CALL WEEKDISP# d! u) O2 K' N
CALL TIMER1DISP; \3 G; |1 B: a
JMP KEYSCAN
6 g* A1 j& i! u& j8 @ZZ3:
& U  T; k2 o. H: u8 U- G CALL WEEKDISP. x/ w1 x. ?# X3 p4 K4 `) c
CALL TIMER2DISP
2 y' B  z; `1 {- e; A7 I" t/ c0 w8 [ JMP KEYSCAN
6 E4 h/ p; i0 W. I0 CZZ4:! ^" g- u  h! e2 X/ D; E9 x
CALL TIMER3DISP
, w2 W" x; U* F! K; f3 B  _ CALL WEEKDISP/ Y  u5 q7 V. p8 i( ?1 ^6 |
JMP KEYSCAN' Z) M. o1 E& q' a
ZZ5:8 }2 ?0 b, c! `1 K/ J9 d! r
CALL DATEDISP3 q" r# M" H+ S& a* a
CALL WEEKDISP
. z& K& ~6 r9 E5 kKEYSCAN:
) _  }- b5 Q% M/ p: X5 ?* J JNB SETKEY,TOSET
; g9 ?/ m5 z8 N JNB TIMERKEY,TOTIMER: u& {- P" x: W  |( L" U
JNB MODEKEY,TOMODE;模式按钮 20H.79 L* r6 a0 `. s5 b$ }5 y
JMP CDISP
& `0 u6 B7 F  f& o6 V; ?8 l) C5 _7 d# Z' H
TOMODE: & B3 X; t5 b: y- T8 d- h
NOP
: b6 I2 {- M6 f* S JNB MODEKEY,TOMODE * x7 @% |: }6 y! |: {) ?2 x
CALL MODE( a, J% a* t5 O! y. _
JMP CDISP1 h" e9 U1 t" p# L
TOTIMER:
. P3 ?, I9 z; X2 e" R( \8 d NOP
* g$ d& e8 l8 q& }1 ?2 Q" d2 v JNB TIMERKEY,TOTIMER
0 }- v6 {& Q+ w6 X$ p CALL TIMER
8 C( Q8 Y9 [7 Z  [, V JMP CDISP0 m' {2 ]0 j$ u! i' T+ }5 \1 B
TOSET:
7 d1 L& ?8 G8 e, g3 ^0 i3 U  v NOP  e9 O, s/ R! O1 K( L9 ?" g
JNB SETKEY,TOSET
7 P, [2 c7 n' v$ `# n1 _ CALL SETTOSET
, n6 O7 k# P1 t2 M6 I+ v JMP CDISP
' G2 c! C" A) MMODE:- @" m( A' {4 U0 k3 i
SETB TR1
) |8 v. S6 S8 Q# ]1 N! Z JB 21H.0,MODE1
; ~8 i' e% ?2 l JB 21H.1,MODE2* C, @3 q: g: T; ]% ^2 _1 D
JB 21H.2,MODE3- B- |* A9 S$ R
JB 21H.3,MODE4! \9 D; r8 R" ~" x# K" D4 w$ a2 L# H* }% V
JB 21H.4,MODE59 z/ \  n( ]! I( z) F1 Z
JB 20H.4,MODE61
( H& J& r$ W- m/ B3 Z3 ^+ g RET
5 Y& k% K' p9 q7 N% ^1 lMODE61:6 A" u7 U# H" C
JMP MODE6
* ^& g: R5 b$ I" A' x- IMODE1:
* s- G5 h6 L9 b# l6 s# l  }" O6 k JB 21H.5,MODE2' h& v9 W- [6 G) m- i; T
JB 21H.6,MODE2: k' E2 h# |9 n# N4 P
JB 21H.7,MODE2( @  E) C! |# p% t9 [7 J2 j
JB 20H.6,MODE2
* A% b& T) E) n! f- V' ]3 o& T CLR 20H.4
: Z! j0 d2 D% E  e0 G SETB 21H.0+ ^7 n7 f$ @3 Y& ?% z
CLR 21H.1
. a* q2 n* M! D8 t CLR 21H.2
+ g9 H1 F* n3 h5 k CLR 21H.3  p3 V2 G- l2 @8 i5 v
CLR 21H.4
7 c7 p0 ?( T- o, L8 h SETB 21H.5
! s( d1 _  r) S" R RET
" L( d- N5 `1 R7 a* Y* xMODE2:8 @! `2 e1 ~3 K. A! F1 F
CLR 21H.53 N& }' ~! b" E  |4 s
CLR 21H.62 C5 w3 r( o, x5 F
CLR 21H.7+ P4 B8 `% `3 ~- d  Z* ]# V  O
CLR 20H.6
% }0 Z7 S: }; |9 _( E- p JB 22H.0,MODE3
6 ^4 l2 a2 a$ ^ JB 22H.1,MODE3 * f7 _+ v1 S" V3 V) u
CLR 20H.4, M  x) S& n" y0 ]! d
CLR 21H.0
2 x7 G" p* I8 {7 y) ]( J SETB 21H.1 # W6 Q( e4 \. Q- }% J
CLR 21H.2
3 [$ h) z; b, n3 L: G CLR 21H.3
  _, x6 K$ X8 h- ^# I CLR 21H.4
+ L" [& r; K4 X9 l1 ^ SETB 22H.0
4 I3 L5 E& T- ^. v9 \ RET- e1 H: z& w! M
MODE3:) T$ \' z  p# y0 P" R
CLR 22H.0
: t& u" ^6 r( t( \9 Q$ s; c CLR 22H.1
. v# @. V  [2 W( I6 f  J JB 22H.2,MODE41 E* T' E6 I% N, f3 O- V
JB 22H.3,MODE4( X% E, M. O+ N8 N. Y- ~
CLR 20H.4* d1 I+ v3 m" B7 T! v- A2 x: i
CLR 21H.0
4 N9 [' @8 m1 e1 [  f3 b$ g CLR 21H.1
: D2 q2 r/ Y, W( o/ \; N8 \# P( A SETB 21H.2
% \* L5 x9 S1 _5 ]9 _ CLR 21H.3
$ Q( K0 X" ?) U/ F CLR 21H.4! |7 f+ ]4 j+ q- F1 X
SETB 22H.2
( c0 h/ e, ?/ t' C8 t RET
  R: |7 F# c9 o. K. r  I( PMODE4:, W' u9 _6 Y0 o; T- l* H
CLR 22H.29 E. D- b' q: a; \2 T  g1 C& E8 W
CLR 22H.34 G$ b$ \% Q# U4 e% V1 R, C( i
JB 22H.4,MODE54 ~: e% w  S) P7 V
JB 22H.5,MODE5% b9 _+ q+ r0 z
CLR 20H.42 S1 Z! \& A7 u5 D) ?; {
CLR 21H.0
8 W% e0 Q- V/ F) w! u CLR 21H.1, t7 y! X, A* i  g2 j
CLR 21H.2
4 Q) e( L; J0 _. {/ b7 T* n+ [ SETB 21H.3/ }* j( c( [) y7 Z/ m5 ~6 q6 k- v
CLR 21H.4  s2 [% H- A/ @6 p
SETB 22H.4
0 u7 W" s+ D7 ?' E RET# h& q% z3 }9 N1 i$ O8 l6 {, z6 Z" V4 A) z
MODE5:
5 _' y- x/ _$ v9 @. j$ P CLR 22H.4
1 R0 k/ c5 ?0 U/ t: G% C; C CLR 22H.5* C. |" N- S  L6 K3 i+ Z: ?- f
JB 22H.6,MODE6
3 R( K1 _3 r% n" [ JB 22H.7,MODE62 o# g" q' L" g- t6 h5 i
CLR 20H.43 d9 @% `2 t5 _3 e' ?" W' h( p
CLR 21H.0
/ g9 {( _" L0 C7 r1 ~) i! I) |6 c CLR 21H.1& ^2 q( @  c/ t# e4 s
CLR 21H.2
7 a. R! }8 e* z7 ] CLR 21H.3' Y7 E  R7 U, U% ^
SETB 21H.4 7 F' B1 S+ f& S& |& I6 `
SETB 22H.6
. X( {5 I0 k7 {4 ^- t) x' l6 t2 E RET2 e) g, f( P# Q5 S% o
MODE6:$ J# b9 w% P- k$ O! y8 L# |+ @
CLR 22H.6
7 _2 U0 _1 s/ r+ A8 o CLR 22H.73 l1 O% _- ~0 U. e' f7 F- {  ?
JB 20H.1,MODE7
- N; }+ @, F$ s* E8 Y4 [ JB 20H.2,MODE72 l4 K6 k; p: Y% K2 n0 f. i$ M
JB 20H.3,MODE7
% a1 R6 c2 ?2 a$ j SETB 20H.4
( a7 e( g- @% j CLR 21H.0
* _- x2 F( S! X, X  v  S% f CLR 21H.1) V4 F& Q' @2 g% q3 X% ?( ^0 g5 j1 ?' w
CLR 21H.2) E/ l6 `' C3 o) R3 u
CLR 21H.36 e+ \5 f1 P5 t+ g
CLR 21H.4
6 \4 }- y+ [$ W+ ?6 ~ SETB 20H.1
" o4 b! N+ J. |+ g' K RET 6 \: H# R6 M+ J/ h- N* W
MODE7:
+ r, S3 r6 g( o( Y1 K MOV 22H,#0H
. j- w8 _1 L( Q* N MOV 21H,#0H
  U" n3 W& u# l( \ SETB 21H.0 - M& ?3 f6 N8 K6 F3 F* t
CLR 20H.1 ' U! o1 U1 h, j, Z5 q  L& v- B
CLR 20H.2
- F2 D. A) r, M0 a CLR 20H.3, ]  Y& L( G; z0 E# w
CLR 20H.4 ( a( V! e& G( G: T
CLR TR1 $ K' B0 s9 b. M- `2 f0 D4 P. y
CLR 20H.7
$ u; B6 v% G* }% x% ~( b RET
* ]5 T6 ^# w  J( M  `
" d, ]# f  a1 ~8 ~SETTIMER31:
  V. X! `9 ^7 Y% k8 m: x6 Y MOV TIMERTEMPM,TIMER3M
" S9 [, c' p. u( h% @ CALL SETTRM
% k; n4 F) v/ ]1 p% s  r: \8 O MOV TM3DISP1,TMDISP1
5 T! X6 m( U& q4 D" B; s  v. U MOV TM3DISP0,TMDISP0 : x& @; E" C8 t& d. ~
MOV TIMER3M,TIMERTEMPM
$ j/ |. G; h7 K JMP CDISP
+ y. u9 T. e" ]9 \- aSETTIMER32:
% z2 D* L# q! Q7 |0 T MOV TIMERTEMPH,TIMER3H
: G0 w' M% A' K CALL SETTRH  ~5 e# ?+ \; ?! K; Y$ ]6 \
MOV TH3DISP1,THDISP1$ N. j8 I9 D5 J2 T* R% @
MOV TH3DISP0,THDISP0 4 J( r. C: }2 R: _5 Y$ I
MOV TIMER3H,TIMERTEMPH
1 d& ?- w. p# ~) I JMP CDISP4 ~& f  \, t. [# ^1 `
9 p  I0 i2 K$ M0 [5 m2 T- l
SETTOSET:
8 p6 }, o. T+ ^6 R- n6 {$ q JNB 21H.0,TOSET1% t8 f6 \4 V2 \/ ?' F
JB 21H.5,SETM * t7 w7 z% b# f# w. q1 k
JB 21H.6,SETH
$ L* D) B9 e8 ?6 A- u% {5 P; R JB 21H.7,SETWEEK
$ j4 h; I# d0 K/ _! }3 A7 { JB 20H.6,SETS
4 Y0 {" ]/ c4 c6 t( ?. H RET/ M& J. w/ T; y0 t/ G0 Y+ c
TOSET1:
  L7 A' p& n7 b; J# [+ M3 n JNB 21H.1,TOSET22 C# m+ i5 e; K  d% S
JB 22H.0,SETTIMER01# T" I* K3 |/ ?6 S( Z6 g  b
JB 22H.1,SETTIMER021 U2 o6 c( E% H' u* J" n: H: O
CPL 23H.1
8 s1 d: U9 k6 W- [+ G" e: w RET
6 m% _) ?+ h# J( D5 G* PTOSET2:4 n8 W# m9 M7 _
JNB 21H.2,TOSET3
; V0 c: P4 e! U3 R/ k JB 22H.2,SETTIMER11
- D( A7 F# P! Q- ~ JB 22H.3,SETTIMER12
" |$ `5 c# U3 n9 O: ~ CPL 23H.3
% s# z3 b0 |3 | RET
( j* V7 p, w# X! u9 q/ `$ _TOSET3:
1 f6 q6 a# k6 O7 D6 d! ~7 j JNB 21H.3,TOSET42 `/ [1 I  [2 f( M
JB 22H.4,SETTIMER21
: A9 S: m' ]4 Q! x1 m% i JB 22H.5,SETTIMER22
, {4 h8 ~6 v5 R7 C  r$ g; I2 T' H CPL 23H.5  n5 H! s' c* C3 _7 L% j0 ?! I8 s* [
RET4 {* e( D6 u! E8 u- d7 q
TOSET4:
* }/ w# z" M# ^5 J- z0 g JNB 21H.4,TOSET5, l2 Q7 n+ ~' h) U1 h3 l6 h% K
JB 22H.6,SETTIMER31
# J4 G9 u( I# C; t( L5 K3 q JB 22H.7,SETTIMER32* \( h  r4 B  y6 Q
CPL 23H.7
8 y. @# f, b1 R& D" D+ b0 TTOSET5:
$ n$ Q. ?6 |) H* d  @6 T JNB 20H.4,TOSET67 K% }- Q- s& i& p9 f  m& H  w) \
JB 20H.1,SETDATE
! c; Z/ x5 o( Y JB 20H.2,SETMONTH
3 ~- {9 E! F7 G' I* y JB 20H.3,SETYEAR! m7 Z$ o) S1 R; z5 C
TOSET6:( \5 u& N8 u7 D  N0 A0 G
RET' Y5 j! I! }8 Y# Y- i' |
SETM:
# F0 O2 b% S( g& C; f/ b CALL MINUTESET
6 P6 [% t/ ]  C9 i. K; @; | JMP CDISP
9 C& H0 P/ F% |/ g* _0 s4 iSETH:6 y  S- i* w& }: e
CALL HOURSET & f0 t) V6 f4 V( W
JMP CDISP
. V: S. ]7 \, M* J. Z! i& I! RSETS:
* M2 X7 J; {6 i  O9 F" x* m1 V CALL SECONDSET% Q9 x# k; S, L* P$ X$ }* q; ^6 X
JMP CDISP
6 [+ s7 [9 t4 ZSETWEEK:
3 x) f  v, N) I, x: Y CALL WEEKSET
9 `1 V7 d5 U: z3 T JMP CDISP
" {+ g0 I* Q8 T2 hSETTIMER01:
+ ~6 E1 R  E' w/ K MOV TIMERTEMPM,TIMER0M
+ X! {4 d6 e! r! J CALL SETTRM
! B3 K* L; q. b: d  w+ y- T7 S% U# P MOV TM0DISP1,TMDISP1: Q7 I+ d+ e* i# M) ?4 b
MOV TM0DISP0,TMDISP0 : T! W" y( O! K; Y" }
MOV TIMER0M,TIMERTEMPM
' ^) t2 D# {! u* K2 y* m/ w( ] JMP CDISP
  a+ F3 M* a) S5 M4 gSETTIMER02:+ g1 R. d  x) q
MOV TIMERTEMPH,TIMER0H1 H) X3 ?) d9 ~7 |
CALL SETTRH( ?; w5 l5 ?9 }! o! W4 A$ a
MOV TH0DISP1,THDISP1
: F$ I6 t: C. ?" C1 a MOV TH0DISP0,THDISP0 ' e4 B7 G$ J0 Y7 a  p! @
MOV TIMER0H,TIMERTEMPH
* L% _3 n* K- K, X JMP CDISP1 l) r' I7 N) @% ]& w1 u; s0 v
% N  S* R4 a5 O6 Z3 w
SETTIMER11:
8 L3 {( g3 e; E5 W+ Q MOV TIMERTEMPM,TIMER1M
' N. k: M5 \* p4 V CALL SETTRM
" C4 ~; I8 @% ^* r+ T& W MOV TM1DISP1,TMDISP1
1 D. X. h9 c' t MOV TM1DISP0,TMDISP0 " n6 b, x8 s3 [9 f4 C
MOV TIMER1M,TIMERTEMPM( M* A6 ^# A: x: j) ?( d* e  M  T
JMP CDISP' ~8 W' U9 _( k+ x/ M6 k
SETTIMER12:
" F: l# G9 ]5 P) s& ^' Z) Q" m MOV TIMERTEMPH,TIMER1H
/ Z( R6 r# w$ _- q CALL SETTRH7 D+ a3 s8 Z$ Y
MOV TH1DISP1,THDISP1
; Z; _) A0 a( L" C! h MOV TH1DISP0,THDISP0
8 ]7 O$ L  h: q MOV TIMER1H,TIMERTEMPH! Y- {! S( b$ L9 M: s* O3 Y# }
JMP CDISP" k6 x, x$ R. |7 }

$ `3 Q% C* x$ p7 n7 b: X: _SETTIMER21:
1 X2 l2 B% ~' W" [" q0 o1 g MOV TIMERTEMPM,TIMER2M
$ b" R% C7 P3 f* D* ~" G& _: E% a* D CALL SETTRM, S0 ~, a0 B) Y
MOV TM2DISP1,TMDISP1
8 R; A2 x+ l: n6 j  B MOV TM2DISP0,TMDISP0 ' L  G1 n1 X4 j- i/ i
MOV

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:32 | 显示全部楼层
TIMER2M,TIMERTEMPM
% L' c5 [) Z- M+ ?8 q8 n+ f JMP CDISP
( {. B% \1 c( b$ C4 ]SETTIMER22:
4 n) x% q( z0 X, t* u( a( A( V2 h MOV TIMERTEMPH,TIMER2H
4 v* Q" a2 ^" k& {* l7 f) F; }: | CALL SETTRH
5 v/ z" [) u2 j: ~  j0 f) a0 a' f* O MOV TH2DISP1,THDISP1
" b9 ?# b$ a6 Q3 i, Q/ B1 h MOV TH2DISP0,THDISP0 , U6 j/ E5 I4 ?! M. w
MOV TIMER2H,TIMERTEMPH' j8 ]5 O2 S9 I4 ]& k- s
JMP CDISP ; B7 B" U3 P3 A3 V# G, [
SETDATE:7 Y6 P$ O- Y# s- ^
CALL DATESET
8 n2 ~# F9 ~8 C5 U3 ^# H1 T* { JMP CDISP0 u* ]. q/ H) t7 M
SETMONTH:9 d/ w+ a8 c% K# d/ Y( W" h$ n
CALL MONTHSET
; n% T) \; D' y9 p) o, n$ \6 X JMP CDISP
# m& y( Q; W$ D1 D  J6 Z+ rSETYEAR:
: \" G; q! f! ]: V8 U, H! Y CALL YEARSET  G4 H$ Z0 A& H0 w0 m
JMP CDISP
/ s7 G& R# N: lSETTRH: 4 p5 `$ O1 G4 h
MOV A,TIMERTEMPH
: J4 |+ u3 L' e) |5 y0 C; \! k INC A0 {( V* R% w/ a" r6 K& J
MOV TIMERTEMPH,A : i7 C( m8 W1 A' P. j
MOV B,#100
$ u, s0 @, k0 I( T DIV AB6 e# g* H0 m  w# [, G2 f! g2 g
MOV A,#10;余数继续分离十位和个位
* m9 C4 Z% D' C. `/ U& T XCH A,B# {3 H& y  ]2 m! G% t% \8 S  u
DIV AB
* J% z  \% T9 Q6 M7 ?$ x) Z. z SWAP A
0 x$ K7 a8 u8 s+ P MOV THDISP1,A
; {7 F- E, h0 ~ MOV A,B  t# {; V6 ]  D4 G; C3 ?
SWAP A0 ?8 \2 }" x8 `( M
MOV THDISP0,A% K9 w& W! t; M
MOV A,TIMERTEMPH6 \8 Z- N5 V; z4 ~6 Y3 G
CJNE A,#24,SETTRHEND" Z$ c1 Y! ]6 }6 }! i
MOV A,#00H  _0 d4 r) P  \- ]! v- Q$ R
MOV THDISP0,#00H2 }' i# p' S5 P# o6 ~0 {
MOV THDISP1,#00H
$ Z) E: w# d& Q1 I' GSETTRHEND:8 @3 L2 A7 c: P+ n) ]! k2 }
MOV TIMERTEMPH,A7 Y, `) R* J) T$ S$ ?- j' A2 }
RET3 e/ `6 g3 r8 s! K' C" O! U
SETTRM:
# [# F5 o* M$ x: N7 S- ~ MOV A,TIMERTEMPM
) A" t8 }+ z6 E3 H6 m, a. Y INC A' Z: `' i3 |2 [
MOV TIMERTEMPM,A
4 W2 |% I! i! ?: _ MOV B,#1006 P. w) D+ Z; B0 N2 s
DIV AB* p8 F' d2 d% ~" `5 M; Q
MOV A,#10;余数继续分离十位和个位
% l( D0 j: {, c* {! }& } XCH A,B$ P+ o% }/ L. e* r0 e
DIV AB
/ |: p* a/ D# p0 @6 Z SWAP A' P7 `, [  b8 f' b) c7 e
MOV TMDISP1,A
" G4 F2 {* {# K3 X( u- \* M( D! j MOV A,B- X# p: p0 A2 i9 V$ r
SWAP A
5 ~' ^, J# F1 y& ~  I2 I MOV TMDISP0,A2 x& r% O. C- L, l8 R8 U# l
MOV A,TIMERTEMPM
7 L+ E/ u1 ^3 ?, d* A* q CJNE A,#60,SETTRMEND' [* ~6 @; a9 h; |1 N: u! O4 ?  d
MOV A,#00H5 h  C. @. X8 D* V( Y6 a
MOV TMDISP0,#00H! {- k" o3 x: o$ l" @9 z
MOV TMDISP1,#00H
& p" t) e" L4 Y) vSETTRMEND:: \1 e1 V1 H+ }* I
MOV TIMERTEMPM,A
4 ]3 g4 C4 a; C: U+ Z( L RET7 e2 ]* c2 _9 `8 K; S# H6 R
SECONDSET:
; {. p7 }/ G& G MOV R4,#00H5 s2 h" ]) d& B' u/ p0 N8 s
MOV SDISP0,#00H
- B, P+ x: G% M% c MOV SDISP1,#00H" C+ a0 Z0 M  B/ y' ^
JMP TSETBACK/ |# y+ L, Q$ T& }! [! Z: T+ E9 e; V
MINUTESET:  }3 z& t3 s" ~0 y
INC R3$ S, C% b7 |) \' F5 B+ b
MOV A,R3
% v' D% l, ^; I. P* U; W* t1 D  o( B MOV B,#100
- m8 `/ d" ]. `6 [ DIV AB  W* x: z/ h9 l
MOV A,#10;余数继续分离十位和个位2 S4 u" e9 \" o% o% r4 C$ k0 B7 N
XCH A,B
) Z, ]$ @$ k' u2 S8 w( u1 d DIV AB" @" `' B# [  Z" T( {/ n' q7 i
SWAP A
. |& m0 l+ I" W  g  x" ~5 R MOV MDISP1,A4 T  Y' U+ T$ e. A
MOV A,B: m5 I/ U" ]! h$ u) \
SWAP A
% m+ Y& u" P1 ? MOV MDISP0,A9 o& J  m; G) X9 b. c) l% F
CJNE R3,#60,TSETBACK
! c/ j& N+ W& l% Z6 W MOV R3,#00H
* o0 R" J  y( |# {9 v  ` MOV MDISP0,#00H
4 P- J: i9 g" D1 u+ X$ _2 }8 C MOV MDISP1,#00H
4 B, m2 a9 W" f: u  V' { JMP TSETBACK' [5 W+ W4 m6 O, M: K( m$ [. t8 B
HOURSET:
' ~6 t: t5 ~! X* Q, ^1 `$ x$ k INC R2# x; w- B6 T0 u! k* F/ j- {( x4 J
MOV A,R24 ~. D; _& m& b
MOV B,#100
8 r9 I) v% z" N  ^( L1 h! M( G DIV AB8 Q; Q1 r& Y! k5 H
MOV A,#10;余数继续分离十位和个位% I9 ?: ]; B0 S1 r. r
XCH A,B' T* c4 k  g, d& L) T3 {$ S
DIV AB" L* D$ W" K  K  Q1 c% n6 @
SWAP A8 @/ I' g# O0 E1 a. q* D; F- c
MOV HDISP1,A
, F% Q4 ~) U9 V3 V; @, f8 H MOV A,B$ e9 ^1 R( }- }# g+ o1 C: r2 \0 W
SWAP A
4 y  h. X, s( X+ d, t% S+ E MOV HDISP0,A+ y6 B* M+ `: {- E' w1 Q
CJNE R2,#24,TSETBACK
  L* N! P3 ~( M+ ^ MOV R2,#00H
# F' @% J/ |+ K. v! l* J MOV HDISP0,#00H# V( H7 p* E1 I6 u  ]4 s5 B
MOV HDISP1,#00H
+ q& ]1 _" f$ [) G JMP TSETBACK 2 f! H# ~; w( S" R$ Q
WEEKSET:, X9 K5 E1 o7 W; @
MOV A,WEEKDISP04 h, Q) A7 I0 h6 M/ D
ANL A,#0F0H
% G5 N5 l- K0 V5 w SWAP A 8 d3 F4 @/ R2 R; m4 b
CJNE A,#08H,WEEKSET1
# j6 q- @# G' x  ~, j8 f MOV A,#00H
& R" w, |8 O/ Y' gWEEKSET1:  y; j. V+ F* P- o* }" q
INC A% t! l$ K' R. i
CJNE A,#07H,WEEKSET2
$ K% I+ N" a  I6 d  A MOV A,#08H
; W" v% P6 _  H: h/ y. V6 H* jWEEKSET2:4 i: c5 z5 @9 M! Z* O, {
SWAP A! A9 o- \0 z2 A7 D+ m
ORL A,#0FH
7 C( Z% n  S7 U1 Y MOV WEEKDISP0,A 2 N2 t% s5 I" z
TSETBACK:
  c+ R' N, F2 o( F9 r9 J# z+ v RET

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:32 | 显示全部楼层
DATESET:1 ?3 S& J3 m# @  `
SETB RS0;设定子程序 ! {( k/ ^9 G0 f2 `5 T
INC R76 l7 R4 K% Y% s' g: ]/ t4 ~
MOV A,R70 L. ~, n! ]# X" N5 F
MOV B,#103 I, {* G! K8 O
DIV AB0 l- v0 n6 A" @7 a9 @- _
SWAP A
: k) u. k" N5 q MOV DADISP1,A. P9 ~/ F1 G6 A6 n
MOV A,B2 U6 ~6 e' X9 _& w$ e
SWAP A
% J) j/ i& w2 ^8 S% {7 y' B0 ^7 \3 B MOV DADISP0,A 6 q' y7 i) k- v6 M
MOV A,R5;润年判断
1 \7 m# k% V% Q JZ ISRUN19 e: K8 s5 o& f1 w/ Z5 f
MOV B,#4
( l' b9 i' K0 W6 A$ }: ` DIV AB
+ M0 m1 g& z9 ?* u MOV A,B% j5 ]- j' ^7 ^% f$ e
JNZ NOTRUN1
  N% J' G7 V- E' KISRUN1:
: |) |* C% i! S5 ~- y4 `; O CJNE R6,#2,MONTH11;是润年,当前月是否为二月0 t: A) R: p# M8 h+ _
CJNE R7,#30,DATESETBACK;是润年的二月,到29天?: w$ i* W  G: v/ }( T5 {1 N
MOV R7,#1;日第一天% J& M" l- A0 A% @. S1 a
MOV DADISP0,#1FH
+ f6 E- ~8 f7 G, ^- G! m' M MOV DADISP1,#0FH
5 a6 R) O. [4 k9 U4 S JMP DATESETBACK: ~- X$ w& p) x4 P& U9 D
NOTRUN1:
- Y. z9 a6 \7 }: {6 G- M) X7 H CJNE R6,#2,MONTH11;不是润年,是否当前月为二月' S3 P# C2 r2 b/ p1 ~  C
CJNE R7,#29,DATESETBACK;不是润年的二月,到28天?8 W: [4 i% E6 L+ L* x, q" r, r8 T3 ?
MOV R7,#1& T; p7 P$ o0 u2 B
MOV DADISP0,#1FH- }) B$ j! g5 N; R, a
MOV DADISP1,#0FH& R2 a  W! H6 h3 {
JMP DATESETBACK
, b/ j6 W" ?- Y& T- \4 r/ s5 ]MONTH11:  j( a; a( r2 \  }2 |
JB 20H.0,BIGMONTH1;大月吗?
& L5 Q6 `( b5 t CJNE R7,#31,DATESETBACK;小月是否到了月底) \# [5 q$ P: r
MOV R7,#1;日重新开始- L6 }/ \$ Z, i0 c  }
MOV DADISP0,#1FH7 o: i/ `; M/ |& L2 E
MOV DADISP1,#0FH; l+ x8 j: I) f  u- P( x  W, M
JMP DATESETBACK;跳到月加一% K$ m' _' V; U5 K4 n- Y
BIGMONTH1:9 ?' C7 q/ U9 x8 z& r
CJNE R7,#32,DATESETBACK;大月是否到了月底
1 R: u  t  ], i9 M" Y4 i MOV R7,#1;日重新开始
. W, X$ U9 W0 K2 @% i MOV DADISP0,#1FH
! P: p& V5 a, j MOV DADISP1,#0FH( Q% k# y# M" Y: X
DATESETBACK:. ]( s1 v  J+ r# v5 B
CLR RS0' ^# t1 c0 D$ V( V( I
RET+ g# e) k8 L9 V+ [
, Q; m' f1 l2 y: _6 X: t1 t' g
MONTHSET:
- D, ]/ G& W+ w3 n# N4 p SETB RS0
$ d+ Y( l3 v; ~$ S9 V INC R6;月加一3 r: ~5 C% r* i: c# R
MOV A,R69 u1 d  J( N# T% [" m* [
MOV B,#10;余数继续分离十位和个位
7 S0 p3 x& k5 ?/ T6 s/ R: Q% }& h" U* K DIV AB; f( ]2 R" q3 @; u0 z  `0 p
SWAP A 2 G, G& @+ U% W2 x! O' S; [9 F
MOV MODISP1,A
- K9 I! m  `7 M3 h$ I0 F MOV A,B; {, ?2 `: y9 B/ c; ]
SWAP A; ?$ B# h, [( |5 e. G
MOV MODISP0,A
9 L( j5 w" x4 V3 u, e/ R CJNE R6,#13,BIGSMALL1;判断是否到了年底0 ?  u5 L7 u3 N- v
MOV R6,#1;月重新开始
8 V. ^) [+ d7 b+ A1 G% c MOV MODISP0,#1FH
6 D7 K4 X. r/ Z MOV MODISP1,#0
& x+ z  g9 l& L# G1 W' |' c SETB 20H.0;一月大
4 c4 d( [4 K. x JMP MONTHSETBACK  x" J8 a5 E" {  P1 _6 z
BIGSMALL1:
  @# a9 R( f* c CJNE R6,#8,OTHERCON1;是八月,则仍为大月2 P: |9 f( z: c
SETB 20H.0
! U% H, U) _" d$ f, `" ^ JMP MONTHSETBACK: L1 W: g' ?: J: ]6 ?0 ~0 [6 b
OTHERCON1:
8 `; o" U% u1 |% Y4 g CPL 20H.0;不是八月,大小月与上一个取反
- f2 Q) ]" u4 r+ Y) M4 CMONTHSETBACK:
4 k) O% f0 @; e% ?( j CLR RS0
9 l0 q0 e: k2 c) Z RET
" U, ?/ f1 `2 w  F2 ^8 C$ [: P, K/ X0 ~: o+ A* f! g
YEARSET:
3 t" j) Z) c. J1 n8 H- @/ m- _1 y SETB RS0' W3 W9 d1 t9 l, q7 Y  \- t5 A
CALL YEARUP
' d5 i$ b- T. D3 x  O& u* z, o CLR RS0
: a  r/ i5 l* V. h. ]' T' U# m8 } RET
& T8 N. d2 f% N- V4 ?! w9 z% h/ a
;定时按钮
& B+ p5 E) T- Z+ c+ tTIMER:) {  ~3 q$ x/ ?
JNB 23H.0,TIMER01) _6 t" A0 e# X$ S( w3 c7 ?
CLR 23H.0! f( d6 q) Z+ @9 t! o% G# i/ o
SETB BEEPOUT
* G7 |0 r1 R2 d6 G" E) f8 { RET/ b2 F( h9 c% _8 _$ X
TIMER01:' _# x- s  _7 P% j
JNB 23H.2,TIMER02% J* M' O7 y# X4 |6 k" K
CLR 23H.2( {* v5 I. U: G+ y
SETB BEEPOUT
8 B. x4 S1 w. R+ C RET$ e" m  f( g; I! K( b
TIMER02:
: C& g  G; A+ H( H JNB 23H.4,TIMER03
* z7 q) w& [. K" o: T CLR 23H.4" P7 b9 c$ f& ^, H
SETB BEEPOUT) m  M; x: ^2 ~$ [2 w
RET
: j8 K* D  j! s5 k+ H+ S( JTIMER03:# ~8 k9 i" j$ E  }! W
JNB 23H.6,TIMER1& U7 A7 W5 a7 s6 S& E4 u2 q
CLR 23H.6
1 `2 j1 E+ F* W4 U SETB BEEPOUT& k, C% V3 P' ]) v
RET
3 ^# j9 a  R& @; j9 g. o, }) ^; W: f% h$ L" B5 D  ]/ [) h; |
TIMER1:
, P# ~8 {6 D( ~- n7 ~' S* q; H JNB 21H.0,TIMER2  J9 p* M" M% d8 }" L% m  r
JNB 21H.5,TIMER105 L. d1 I- i/ Y/ S
CLR 21H.5
( ?6 ~* h7 u5 P9 K SETB 21H.6
& V+ R5 S- g% o0 ~2 u/ u4 H4 x" } CLR 21H.7, m2 ^$ e3 g5 ]+ y1 N
CLR 20H.6 ( N4 d# C/ F) [; B  o* k
RET6 L9 B# E8 l* M. [* f( H
TIMER10:
! p& h1 [2 [8 L. ?" E JNB 21H.6,TIMER11
+ P& ]# t2 I0 a' ]( @. ? CLR 21H.5. a6 @) k4 L) ~0 z' M
CLR 21H.6
! I: v% V2 W* I" ]) X9 I0 i CLR 21H.70 W- [6 _) [6 Y+ o$ ~6 |6 g
SETB 20H.6; J1 Q; R5 z/ h, K- E5 E
RET
( ^- C. U: o; Z6 j& X% h+ K9 STIMER11:& B0 k9 e5 L; T& \+ [: i& C
JNB 20H.6,TIMER12
' X+ ]) R  K" X CLR 21H.57 h+ ^, m+ d: _# O, l
CLR 21H.64 \) J4 Q' O$ P9 ^6 w+ m
SETB 21H.7
3 |1 M$ V% t) Q7 T CLR 20H.63 u6 |: ?4 X2 V9 C" k
RET5 D" Q9 |+ U+ R8 h" T. X+ K6 C4 i
TIMER12:
& H! |& V! B4 [( p) O4 } JNB 21H.7,TIMER13
# \' K% D; {: Z$ ]( Q( Q SETB 21H.5
0 L! X1 v; }/ `5 a! _/ D CLR 21H.6
8 X8 F) d& J/ P* ~ CLR 21H.7% Y  b7 E# q4 P. D2 m  H
CLR 20H.6
* r7 s5 @( }  q1 ?, P9 T. E6 S RET$ A: n0 z4 |- w9 v4 \
TIMER13:+ ^6 s, O5 Z& V" T
CLR 20H.4& B( p0 o) S8 F7 @/ s9 ~" Q- |/ z- S
CLR 21H.0
$ _5 Z, M  a- c! e; N SETB 21H.1
0 q: l8 }( `  ]2 v+ c4 E0 y CLR 21H.2! F' E1 O' ?& q/ e% L0 x+ S( T  F
CLR 21H.3
3 [" k3 D9 S5 F+ ~% A/ i CLR 21H.4$ e- e$ }) Y; m+ v9 {7 i
RET
& h& Z7 G3 |% L3 }$ l$ `* PTIMER2:
/ _" F: m. _, W# y JNB 21H.1,TIMER3
, f& G( A1 |9 X JNB 22H.0,TIMER201 {0 f, T1 ?, U7 ?" q  q. W
CLR 22H.0" v: {: T5 ?9 K- P0 |. W( K
SETB 22H.1
( `7 ~+ A' [9 L/ E5 r RET
" k5 [: U" J. w( L: I5 |TIMER20:6 D; A0 U& ?5 R1 \
JNB 22H.1,TIMER219 I9 ^( w5 ]/ |8 S4 Z" W
SETB 22H.0
2 R' q4 p- N, H: }+ o( E) G( h5 Q+ c CLR 22H.1
% w7 i! }+ T2 R# {% W RET( l/ S! w% A: u  I, F5 X3 |
TIMER21:
& i! u) a! Q0 H5 \2 j% e CLR 20H.4- |3 |; Z! |# M
CLR 21H.0
/ e4 r" O% I9 M8 W& j9 t CLR 21H.11 y1 H) W! r5 a* v2 B3 u
SETB 21H.2" C# V" a2 G: ?' l- M5 e0 A
CLR 21H.3
; ?/ [/ f& \  q& S$ ]) I! e CLR 21H.44 o8 Q( d, r+ T' U/ P2 K
RET# c. p- T# U6 y* e/ |7 ~" G) {
TIMER3:
" U1 V  _( U, p* ^. K9 `" x JNB 21H.2,TIMER4( f. n3 P- \! w  @) Q/ ]( i
JNB 22H.2,TIMER30
- Q% r. M  o  \  y9 z CLR 22H.2
/ l* B; f9 J6 y( F SETB 22H.3
) R( |: N4 z; E$ ~9 G* O$ |& q RET
) L4 D) y# _% `( r7 ^' XTIMER30:
8 N1 {# ?8 H2 x- x& E JNB 22H.3,TIMER31
$ p  t  C9 M6 H2 V; m7 w: R SETB 22H.2/ V/ x' d, @. ^5 w, c
CLR 22H.3
0 w( {' n, R( P7 [' u4 F RET) S) e# ]9 T  a) [8 R$ q
TIMER31:! V2 `0 }& @+ X& ^( Y
CLR 20H.44 h5 d0 S! z& u6 w
CLR 21H.0
2 E- h% g. ]9 ]  i3 H7 N% K. }5 o CLR 21H.15 j- q5 q# |" I$ I$ s3 p
CLR 21H.2
; [1 D5 M4 c0 u" K& g SETB 21H.3
0 A- O2 u$ W* g CLR 21H.46 b) {& V1 C, ?) [7 i
RET
- E) z7 X6 S* q6 W' q3 cTIMER4:
1 p# [# x7 v/ J JNB 21H.3,TIMER5
) Z& Z9 n) e# t% i6 e# ]. \ JNB 22H.4,TIMER405 C% ~( F  s  s( p
CLR 22H.4
  Q1 G' ]7 C; `% K SETB 22H.5$ r1 s: \' L8 H. a# j
RET; A" Z. R) F6 O8 B. _6 G% m2 w+ w
TIMER40:/ u6 [, K7 D! l3 R& E
JNB 22H.5,TIMER41
& H3 B' G; j) D2 `) b1 u/ ~$ j- _ SETB 22H.4
5 j/ @/ ^3 N) B9 Q" F4 j' j CLR 22H.5
3 D0 u8 X6 k2 o RET
2 r( L! b) W) [$ l. c) w4 ^8 L/ wTIMER41:4 \# z  X* r: X9 t3 ], c* d$ C. C
CLR 20H.4
. b% \% V' ^6 q  v! o' O* ^$ j8 y) l CLR 21H.0
- b7 T) ~+ g3 ]4 K# m; N CLR 21H.1
# e$ t/ Y; |: e CLR 21H.2
2 R2 K! C. S  Q# p3 T2 m- t CLR 21H.3
  O1 q9 o7 v1 ?# \' U# p0 c SETB 21H.4' U8 f9 |9 c7 s: h& c9 _# n. F5 Q
RET  s! W+ q, @  {$ I' ^
TIMER5:
/ q9 n9 _$ g4 r- K+ J0 U JNB 21H.4,TIMER6
( r1 j0 B0 r9 B) O( M JNB 22H.6,TIMER50
: }: m( r/ V- @! k1 \- P- o! { CLR 22H.6  L7 Q. y: D+ A- ]$ Y8 a
SETB 22H.7
" R' I/ h  }* i0 ^/ @+ ^! f RET
, `  b" S8 {3 D! S3 vTIMER50:- Z; {- Z9 P5 R
JNB 22H.7,TIMER517 W1 d. x' `) Q3 V, {
SETB 22H.6
3 U) @" u3 y- Z) O& A CLR 22H.7
, S( }1 f4 l$ n# Q RET
5 N" i1 I. p8 \TIMER51:
+ k  Q5 O* `1 a' e SETB 20H.4
+ s% ~3 Z! m3 d" R6 m$ `/ m. q& e CLR 21H.01 g4 \9 y% R2 Y4 M1 k$ w
CLR 21H.1- g: v" y* ~' r1 K3 A
CLR 21H.2! w, t( m0 t' ]( L5 l
CLR 21H.3
1 T. f2 X, o) b  e2 a CLR 21H.45 F; _% F. _, Z5 v7 h! o
RET6 W  ~/ A, ?/ m2 z% c/ c
TIMER6:5 _* }2 w1 s- t1 n8 w
JNB 20H.1,TIMER61
7 R* m* a* |3 R/ i! ? CLR 20H.1
# R; R8 m9 Y, M; o. T SETB 20H.2* @3 }2 I3 T; T" d9 J$ {
CLR 20H.3
  T* H0 e9 U6 D4 x% m2 Q' h RET
1 |3 B; d$ W! g# V; ZTIMER61:( m1 f! I$ A* C+ f) ]
JNB 20H.2,TIMER627 o1 k- D# a3 u- Q5 U) T
CLR 20H.1
& z+ ]; o! X5 \  k- @ CLR 20H.2
$ L* t7 w* q0 i SETB 20H.3
6 Q  i  B' X+ G8 m" t RET
+ u1 x! O; Q- ]7 ~+ \3 |" v' mTIMER62:
( a; w; X- @/ B- N JNB 20H.3,TIMER633 L0 x0 A# }" _- Q
SETB 20H.11 \7 R. e5 q: w7 w! \$ \" t) }+ U, [
CLR 20H.2+ k) ~% N7 f8 I- c! X4 C
CLR 20H.3
% z5 K0 F3 t( r' f; }1 ^ RET
% Q# E7 H+ l. I- R' W# I4 k' jTIMER63:1 z5 K7 e. l' W5 H5 E# S$ {
CLR 20H.4
" Z  Q; w/ [- I9 j5 G- t1 y8 D. G SETB 21H.0
' T& |6 |7 u! J, F CLR 21H.19 U. |) h7 A" P1 ?. n
CLR 21H.2" Z+ r# ~) f9 C. p
CLR 21H.32 t$ M0 R. t2 f  _; R0 C
CLR 21H.4
+ m; ^" A$ M9 p) K) | RET
3 i& J2 i! S4 `! |) u  o- Q( @3 M
0 S+ y7 R6 V: f" j9 J# N% p4 C; mTOUT:7 p' Y2 Z+ s$ T- ^, X
PUSH ACC
4 m5 ~3 y( `9 c5 Z7 ] PUSH PSW, x) f! `2 n& W5 z) n7 V$ x  |  }0 y: g% |
CLR ET0
/ f4 e; D+ t, U: |& N CLR TR0, F6 X+ ~' V# ^6 d, }/ h
MOV A,#0B7H ;中断响应时间同步修正, ^1 `  x# ~$ D4 M' B2 }
ADD A,TL0 ;低8位初值修正" ~, P, V5 y- ~+ w0 I
MOV TL0,A ;重装初值(低8位修正值)
8 i3 E& C0 x* r% G MOV A,#3CH ;高8位初值修正* K6 w1 i5 k( r4 D! {
ADDC A,TH0 ;9 O) C( h' H7 J! L3 _" q
MOV TH0,A ;重装初值(高8位修正值)
4 y# D4 W8 e8 m% } SETB TR0
8 F/ ~2 z8 I6 p SETB ET0
* d( j) A# x- E DJNZ R6,TRETURN
* N5 F0 c) C! A4 [3 t. [6 C6 P' `' k MOV R6,#20
( q5 o: e: H. b: K+ W) `% q/ `. R. E7 | CALL TUP
5 l# q$ s( n/ q! P2 TTRETURNOP PSW; x1 L6 E9 X8 \
POP ACC, t: f6 l# J8 T: T* n( k5 ?
RETI) e6 p! b, B, C  L. \: B- r
FLASHTOUT:
/ F! K& _1 V8 I. h PUSH ACC
- p' _" e6 }# D( R PUSH PSW
( Z3 X; y; v4 n( j! Q% ~6 Y+ d" a MOV TH1,#3CH% d1 p$ x9 i: ]
MOV TL1,#0B0H
" ~2 d% _7 X6 u( t: b6 s0 Q SETB TR1* |) z( d( P" c- L) s- l1 }4 W
DJNZ R5,FTRETURN
2 U/ h9 {& t. U6 S1 `' J MOV R5,#5& d( e/ ]8 b( n/ _2 p# T
CPL 20H.7
( {; m2 z1 {) I$ ~% S, P  e# s' \FTRETURNOP PSW7 }4 T/ ?( b) I6 n0 U
POP ACC
6 l7 W3 N& L' o: F RETI
$ W6 Y" V' r9 ]TUP:
) E( S( Z" s' I" q! l7 c3 A5 [- a INC R4;一秒到后,时间加累加% l: z) X' q5 U! S' C
MOV A,R4# _" B9 v0 S0 b( C
MOV B,#100; p0 Q7 Y6 [; d! H9 l0 l
DIV AB* }- V5 g$ k7 _$ }8 p0 ^
MOV A,#10;余数继续分离十位和个位
' k  D$ A; j8 \ XCH A,B
) L# }! ^* ^4 [% x DIV AB
7 j, J, J7 V" k5 x/ ` SWAP A
# v1 M( c. P, f" t1 P9 @ MOV SDISP1,A4 K! z. ~3 `+ C  `
MOV A,B* x: X: V" Q. Z  Y5 L
SWAP A+ i; q  m9 o9 c9 D, {% W, t
MOV SDISP0,A
0 h+ S! B: F, `" x CJNE R4,#60,BACK
7 b  w- V+ s8 g# a2 \$ @- G MOV R4,#003 M# N* e# g9 f2 b4 C4 K
MOV SDISP0,#00H
5 c) k) v2 }! p' F+ H+ a5 x MOV SDISP1,#00H+ e/ V  z, |  ]1 u" F4 G7 N
INC R3;分加一" O5 C1 J/ Q$ z1 A( m! s
JNB 23H.1,NOTIMER01
; t9 c0 a! w5 Y: C* }) R CALL COMPARE# c: P* Z; m8 D0 o- r+ s) G
NOTIMER01:  \$ p2 w2 S/ i- V* i
JNB 23H.3,NOTIMER02! \; C6 \5 _3 u2 j6 N9 v
CALL COMPARE1& ^! r) T1 w* m( a5 G! V, |
NOTIMER02:
3 h3 F% }" A5 M5 D4 Y6 m JNB 23H.5,NOTIMER03
6 c$ Y$ ~+ [$ |8 w& X1 H, T CALL COMPARE2( Z) ~. V7 C7 k- h. `! m
NOTIMER03:" o2 a; u6 q& G5 r6 @6 a" O9 j, K- ?$ `
JNB 23H.7,NOTIMER0
  r* V6 k7 E6 s: u CALL COMPARE3) m! C1 v. s, Q8 i! ^, u- _6 |
NOTIMER0:MOV A,R3
* J  d  c  \2 D% F MOV B,#100$ i' X/ l) w6 {
DIV AB
# Y4 {5 L: G, y! D MOV A,#10;余数继续分离十位和个位" \4 m' P& T) t7 J  k. t5 o
XCH A,B: b$ Y! h/ m+ ]2 f6 e
DIV AB# r" R8 z7 |% k# s& d0 U/ M
SWAP A
4 E1 Q- O7 X# h9 Z+ G% I8 C# I MOV MDISP1,A1 Q& u) d. ]+ x* ~
MOV A,B* r  T3 v, l& {" g  _
SWAP A. g3 i" |" r/ a  [+ v; s: z
MOV MDISP0,A
3 W8 a& k6 R7 d0 h+ t3 w CJNE R3,#60,BACK
% {8 _; ?( Y" I8 C. j5 v7 a MOV R3,#00H
0 @4 \( n! g( ^3 c. G# Z MOV MDISP0,#00H1 e# `( ?) l8 _' m  D" P$ M0 D6 X
MOV MDISP1,#00H
- r. j/ a. J8 m3 A; N; | INC R2 ;时加一! }' [0 P+ r; G, U4 f1 S
JNB 23H.1,NOTIMER11! h' U  v( B# A$ m
CALL COMPARE& g, p2 Y0 L9 t9 \2 ^( K- Y/ `3 L) T
NOTIMER11:5 M( `# v' i+ q) Q! R$ F
JNB 23H.3,NOTIMER12
' o2 l* n  y+ k; @ CALL COMPARE1! n2 p( R) ]; f& ~6 a% U
NOTIMER12:4 M" E& l& q+ M5 b3 ]8 n1 U; t
JNB 23H.5,NOTIMER13
4 u) r+ G5 v0 |& s. f+ f9 j CALL COMPARE2( {3 A2 @( Z9 X
NOTIMER13:
9 I+ X3 D: o5 H" \* k7 z3 B' D; d JNB 23H.7,NOTIMER1
+ |  ]: d$ h$ i$ p; w6 j) ~ CALL COMPARE33 z- x& I0 M' v: ~6 N" ^, ]
NOTIMER1:MOV A,R2
; ]  B+ g" z$ _) L/ ` MOV B,#100
2 A' W! _5 W' U# Y0 T DIV AB, X* @; j) c* [" |
MOV A,#10;余数继续分离十位和个位
  Y2 f% n  u8 h XCH A,B3 v. N; p4 z! B4 i
DIV AB
. a& K( o+ r% ~+ _7 [& o SWAP A; Q# j* Z5 G- n, Q- z, U  y
MOV HDISP1,A
9 X: o+ r, S! a/ o MOV A,B' R# K( ?. T1 L1 Y3 y, F; `
SWAP A. C" }! ]5 W( S7 x$ F" \
MOV HDISP0,A6 K! P7 T, I' O9 _7 f: s
CJNE R2,#24,BACK
0 f0 K# ^6 P4 K MOV R2,#00: g' l" V! C7 T0 H
MOV HDISP0,#00H
, [- H" @5 V7 w MOV HDISP1,#00H
- l6 i& x5 Y' k* k: G CALL WEEKSET;星期加一' k1 W1 q* Y% r3 y; N6 M5 _; C. D
CALL DATEUP& Q4 k- V; W4 J
BACK: RET

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:33 | 显示全部楼层
DATEUP: SETB RS0;用到寄存器组11 n% K5 u" ?- t$ u) F0 `
INC R7;日加1
/ p. F/ p# _; M& d( }; c MOV A,R76 X2 Z# O( s# l) S6 P
MOV B,#100
& L" f1 T$ K2 c6 ^  r" M5 F( ^ DIV AB5 p4 T- @+ s' L2 a/ E4 A( U( a+ Z: Z
MOV A,#10;余数继续分离十位和个位* i+ O4 O% W' ~: P
XCH A,B# h' d' X+ U7 w
DIV AB' c5 H4 e8 }# E" h% N
SWAP A
# H5 f4 j: z' t5 ^ MOV DADISP1,A
9 {7 I) W/ @/ R# r( U/ q$ Q8 c9 I MOV A,B
; U- F4 f6 m- u$ M2 A SWAP A
- X7 d$ e' R5 O* e MOV DADISP0,A
5 A: E$ ?6 d3 M2 e- _! } MOV A,R5;润年判断3 u5 x2 v/ z, ?, `  t& h  {& z* H
JZ ISRUN* v, N% ]$ k; o1 T$ w
MOV B,#4& C- b/ E4 P4 f3 h0 T# {- s, V# D, C
DIV AB  p$ P; U! g' |; g: n/ v' v, a
MOV A,B( |, k; j, d2 Z3 k0 [2 ?- j& Y
JNZ NOTRUN
2 C+ L* n6 O$ y3 Q7 {, l( d  DISRUN:
& U1 \$ M3 r. U CJNE R6,#2,MONTH1;是润年,当前月是否为二月# E$ h& R, R( Z/ T! p3 I% P6 P
CJNE R7,#30,TODUBACK0;是润年的二月,到29天?
, j: d6 \' I7 ]" Y MOV R7,#1;日第一天9 ^$ u/ g: T5 v; Q/ c9 M4 ]
MOV DADISP0,#2FH
7 v# U# J: t" C# X" C+ R MOV DADISP1,#0FH
% A1 _/ b2 I* z8 h2 j JMP MONTHUP;月份加一% }1 ]; s- h5 Q5 f$ `9 F
TODUBACK0:JMP TODUBACK
0 ?- M3 ^  |$ |+ dNOTRUN:
7 S! t' U) S; a" K/ w& p7 I6 d CJNE R6,#2,MONTH1;不是润年是否当前月为二月4 {& I( b7 G3 D* R
CJNE R7,#29,TODUBACK0;不是润年的二月,到28天?/ s- ~( |! E6 L: ^7 K7 }9 ^) |
MOV R7,#1
/ F; v. r# E5 t- b; L8 ` MOV DADISP0,#1FH
" d- ]3 X3 f: g; l7 z MOV DADISP1,#0FH/ }4 m% y' W5 K# e( J& I$ N  u7 B
JMP MONTHUP. ?" U9 j' ^5 A4 ^# K! N1 e$ [
MONTH1:
- ^" U& F, q" I% {) n7 | JB 20H.0,BIGMONTH;大月吗?
  O$ \# ~/ b3 R4 {5 _ CJNE R7,#31,TODUBACK0;小月是否到了月底( Y; Q; t- U# O9 {& X  b( c
MOV R7,#1;日重新开始
/ k* ^0 J& w" S1 H7 J" s* _) r8 Q MOV DADISP0,#1FH
% S! y+ K2 u) V+ O MOV DADISP1,#0FH
! D5 M$ V2 K6 b8 m JMP MONTHUP;跳到月加一7 P* [5 J1 d) g! o
BIGMONTH:! T' O, B( G- Y  M5 N! d; Z% a
CJNE R7,#32,TODUBACK;大月是否到了月底
% B4 \8 ?$ t9 P3 @% j0 Q MOV 7,#1;日重新开始3 @1 j. i3 g- \$ B' F" |% \% c% o4 s
MOV DADISP0,#1FH
5 T" W$ U- r8 N5 Y" h/ M5 T1 ~) w MOV DADISP1,#0FH
: ^3 X- U% W! U) E' f2 ?5 m/ L& RMONTHUP:INC R6;月加一
* f$ {7 @0 ^8 U0 l. a6 z MOV A,R65 a" ?- \4 R$ m( g& s: g& b; M  v* v
MOV B,#100
3 {* y" K  _6 @6 g DIV AB
6 [$ Q1 r& }" ]: R9 u  } MOV A,#10;余数继续分离十位和个位
* N' X. S5 K( }' v: B XCH A,B
! y1 U; `. I7 a% |! i+ Q/ X DIV AB6 h, o$ Q- o- V+ W5 P$ U% c
SWAP A
- M8 f0 L+ L$ f MOV MODISP1,A
0 @7 C& E% [$ e MOV A,B1 I* _3 y9 k" @9 o& p
SWAP A
0 o& k. d5 h) e/ {7 a+ f' V( ~2 O. R MOV MODISP0,A
" [) C3 h; V0 x CJNE R6,#13,BIGSMALL;判断是否到了年底7 V- r, K( J, D& f* h
MOV R6,#1;月重新开始
  G  t6 B0 S  w! `0 K' K& Q+ S MOV MODISP0,#1FH
8 o* b- {5 x( u$ e( S2 t MOV MODISP1,#0FH/ `4 h1 }% T5 g
SETB 20H.0;一月大2 `0 K' g3 `- O4 N/ V, f' X# d  O1 O
JMP YEARUP
3 }3 G0 I) H$ K- y! \BIGSMALL:; A( g0 v7 B; j: S9 ?5 X
CJNE R6,#8,OTHERCON;是八月,则仍为大月
( y/ O. F/ j9 P- H0 u' Q* c SETB 20H.09 q4 Q, Y. c( b7 X% Q
JMP TODUBACK
& M  W" t8 J& W2 Y: J  H0 nOTHERCON:CPL 20H.0;不是八月,大小月与上一个月取反0 C" W# F$ j% h7 o
JMP TODUBACK6 n6 O0 X' Y  Q
YEARUP: INC R59 _3 O8 S* o+ R" k) _1 \
MOV A,R5- A# c( Z2 S* D; V
MOV B,#100. F0 j0 K7 ^% Y$ o5 d
DIV AB* `# g& ~4 v0 v! U! Q, ^
MOV A,#10;余数继续分离十位和个位
7 t5 `* G5 L' S. x1 m! ?2 P XCH A,B
6 z1 x* I. Y7 h DIV AB- T* J, b  m' K2 L8 l5 o
SWAP A
6 J5 j  K. t3 w( f; m% N MOV YEDISP1,A' q8 s; K8 g% Y  u
MOV A,B
0 K4 ~- |3 u& u  X SWAP A
- X7 D6 f3 }7 C" A' V2 c1 J( } MOV YEDISP0,A3 C! C/ K1 b  Z3 U3 e% F
CJNE R5,#100,TODUBACK6 X/ |" j6 t- h6 d. ~3 G
MOV R5,#00;新世纪
9 P" h$ B& s8 s3 L9 m MOV YEDISP0,#0
( s/ y8 {; L( R4 s" V8 H5 A MOV YEDISP1,#0' Q" M$ V" ]5 J
TODUBACK:
& P. l, o! q' b- @0 A; t+ ^ CLR RS0/ p$ I2 h8 V: Q  b) I  ~
RET( P( G6 H/ _4 n: e5 ]1 F: f; }
;时间显示子程序- _2 |+ M4 M( r  O/ ~5 z7 E
TIMEDISP:
# P  g) N( s. U/ w* o JNB 20H.6,BB0
3 V6 w; E. I- d JB 20H.7,SNODISP/ }7 B, C+ p; U
BB0:
2 `% `2 H% ]$ |2 N8 [ MOV A,SDISP09 M* n3 n+ {/ i! v/ A; L7 g) ~
CALL DISPSIX0 z$ ]6 v( O' k" v- D1 ~
; MOV A,20H  p+ f% Y( v/ S
MOV A,SDISP1' g+ p9 \# R- B% w/ J
CALL DISPFIF9 S+ ~. W3 `8 q7 B6 A9 {" u
SNODISP:; D2 B+ w$ j! I4 U1 N, x
JNB 21H.5,BB1
8 \0 T6 G& D7 ^! z1 E; H  E. u; n0 g0 K JB 20H.7,MNODISP, P8 c/ u$ _  t  N& g
BB1:
  `4 O( D) [  t2 e6 v4 i5 v MOV A,MDISP0
. W' N7 ^3 o$ o: t1 L CALL DISPFOR
% A% {/ I7 g3 [+ U MOV A,MDISP1
( z9 Q# W1 X1 l# B  f1 Q/ _ CALL DISPTHI; f  G1 q1 }$ Y( N/ G
MNODISP:
0 h& ]  u  {9 ? JNB 21H.6,BB2* t# W7 l8 a  y" \6 T# T
JB 20H.7,HNODISP
, @" m7 I1 j; U7 ]2 H  ^. l) W# ~BB2:
  l! M$ L( ~8 ~* ?% R MOV A,HDISP02 u) h: b5 a5 O$ h8 r) \  C4 h9 {( q2 t
CALL DISPSEC
6 \8 s+ U" B( W: ?" V& s  \ MOV A,HDISP1  S6 ~) ]$ _  [  N1 D1 `
CALL DISPFIR' h" W7 r6 {/ P. A) J
HNODISP:RET
8 |' k7 r' P* e4 dWEEKDISP:
0 H$ q/ m' p( U1 i. x6 N JNB 21H.7,BB3* c0 _9 G  I1 d
JB 20H.7,WNODISP
/ i, Q0 l# ]( M3 c) s& iBB3:
# u5 K4 X# ^- v: U8 W MOV A,WEEKDISP0( P; r/ j( T5 V6 x. o+ Q
ORL A,#0FH
" w/ \* g5 J2 d" ` ANL A,#0F7H
; N6 {1 X+ V5 W8 V/ u  d, g1 Q MOV P1,A. z8 D  P" [1 B! D9 C* ]- _0 S! k6 ~- S
CALL DELAY$ c) s$ N0 d9 R9 c/ Y' n0 @
WNODISP:. m+ k1 g# O" r/ d* [% X
RET
3 J/ L, p0 R5 I* t$ K. Y
+ u4 F6 `0 R* L4 x;闹铃显示子程序
; C0 R1 v8 F# Y7 U  lTIMER0DISP:) r* [6 X& N. q; z  {2 o2 F; }
JNB 22H.0,BB6;设定分标志位. y- \, M  ]' c
JB 20H.7,TMN0DISP
3 K" S5 {  i+ u$ |& P! JBB6:  ~7 U4 l% _. F% |, L/ T" F
MOV A,TM0DISP0
5 z  n' i, _5 z, X! e  j- ? CALL DISPFOR
$ x8 W- l  }, h" J, |9 C9 L& }; J MOV A,TM0DISP1
4 V1 e' ~9 C; V) x3 N" b7 t+ K0 M CALL DISPTHI
: U6 O- q, f+ ]: W7 rTMN0DISP:( q% w% ?' P4 `9 b# E* u- Z
JNB 22H.1,BB7
$ K  h# O" F8 ?( d JB 20H.7,THNODISP
  e# d7 w0 M0 U3 I2 z& h3 y5 T; a, X# r7 fBB7:$ F& d" ^7 b* e1 t- y6 s5 q- J5 D
MOV A,TH0DISP02 o& {8 _9 i& B% \: c' C+ c+ z
CALL DISPSEC
8 z: h0 k2 u% L2 [: a( W MOV A,TH0DISP1
+ u1 g9 Z0 w9 W* i CALL DISPFIR
2 A6 p& K: U8 x( s* y1 BTHNODISP:. w. h  E& ?6 S0 D0 X
JNB 23H.1,TDRET;定时是否开启标志位
9 d5 ^$ j# a1 j+ N MOV P1,#1BH0 p: G% }' j) L& m( {* Y, A! H# W
CALL DELAY
& K( r* b5 n. G7 cTDRET:
6 [9 k% h( s1 S# g5 L% L! y& P# s RET+ y" F/ ]% f, p" w+ |
TIMER1DISP:
8 ^  a4 j, L0 i& _ JNB 22H.2,BB61;设定分标志位% `0 w* i0 w5 G/ j# C6 b4 T& G! m
JB 20H.7,TMN1DISP4 z  V8 G0 b/ _$ K& m( r7 [* g
BB61:! n7 c! k0 v3 H& R
MOV A,TM1DISP07 D1 I4 x5 e  y  A7 N
CALL DISPFOR
1 r4 @3 D3 ^' P" M% i; ?, d MOV A,TM1DISP13 f9 B9 S9 f! s* Q% R( ?
CALL DISPTHI8 r6 P9 K& F. m6 W3 f% t- ]* ^
TMN1DISP:
0 Z, p  B" g3 K1 V$ H) Q0 d6 J JNB 22H.3,BB71
1 U( I& j8 [4 X; r  D8 O JB 20H.7,THN1DISP
' Z# i& ?  i  x4 tBB71:
3 T$ q! Y* G7 q& u& d5 e MOV A,TH1DISP0
5 [" ?) U  B: z# k' l$ [* a CALL DISPSEC
8 T% Z9 N. G0 m8 g8 [6 ^ MOV A,TH1DISP1& S" h0 Q: s$ V9 \
CALL DISPFIR# L4 b- {5 X% }
THN1DISP:
+ x) ^5 }+ j* O2 ? JNB 23H.3,TD1RET;定时是否开启标志位
' D" t$ z# o& x0 e" e. I. k MOV P1,#2BH
$ b! z0 l2 G" { CALL DELAY
8 B3 T$ ^. {' X$ k. v" \1 z; QTD1RET:& j! C4 s+ [5 z$ N' N1 P) h
RET: R- x! _! M- D( R
;;;;;;;;;;;;;;;;;;;;;;;;3 g! k& y( q9 s9 h
TIMER2DISP:6 q6 K' a, z! t9 ]) @
JNB 22H.4,BB62( ?' ?3 w3 h8 _( q2 [: {
JB 20H.7,TMN2DISP8 R: F' C3 m* E6 {' q! s5 C, k
BB62:
0 o( h2 W9 c) I. N9 L: A MOV A,TM2DISP0
$ w5 y9 e. i" e CALL DISPFOR% B, o8 t8 C# x# {& }. ~
MOV A,TM2DISP1
% ]8 |2 H, R4 \2 k2 l) \+ h CALL DISPTHI2 m) W7 c3 D3 b# i3 @
TMN2DISP:
7 K* w& l. ]( l7 o. C' @0 J0 I JNB 22H.5,BB72
. ]7 r0 R8 ^" L/ {2 a0 d JB 20H.7,THN2DISP
0 V2 w- Q2 ?+ F+ hBB72:
$ w) C$ b# Y! C MOV A,TH2DISP0
" S4 i+ o' h4 Q- B CALL DISPSEC$ n$ Y9 O0 z  m' T4 f7 w0 t6 b
MOV A,TH2DISP1
/ s" i, c, ?1 N% D6 {# V, Y CALL DISPFIR   n; V6 J1 {/ T# @/ c9 v
THN2DISP:
7 e! s7 s" U+ h# m4 y JNB 23H.5,TD2RET;定时是否开启标志位 6 A* m; s1 w- g1 A& t( v  n# }
MOV P1,#3BH
8 Z# e% E9 g% E7 ~8 j7 k% | CALL DELAY
8 Z/ Z3 ]+ X8 i" A6 _  E: D. {0 [TD2RET:$ {7 e5 P; d- x1 k1 N. l1 V$ f/ ]
RET
8 ~9 L7 q  ~/ E' g7 y, x! C1 ^' K9 t7 S6 c; l& e2 w; F5 L
TIMER3DISP:" T/ x$ d  D3 o- `0 K2 ^# Y  p
JNB 22H.6,BB63
1 J9 r* y9 n/ J JB 20H.7,TMN3DISP6 e+ x! N- ?3 ]. B/ c
BB63:9 j4 E0 [/ F: c* [' o
MOV A,TM3DISP0
9 D, F3 k& U# r9 W/ {: q; U CALL DISPFOR
  h/ o" s5 j) f2 R0 l MOV A,TM3DISP1
' d" @, ?9 N6 V  h5 ?$ D: t! v CALL DISPTHI$ K" _& f: K) [% [! F5 _
TMN3DISP:
, d2 Z3 V; i3 f8 ` JNB 22H.7,BB732 \* Y5 Q# q. ^
JB 20H.7,THN3DISP
2 f0 w5 m' W$ O& jBB73:
9 F4 v5 H- l+ X; P! r0 R9 z MOV A,TH3DISP0( S; H. ?$ z4 p( H6 f
CALL DISPSEC
9 `/ D8 K) f) O" ^ MOV A,TH3DISP1
. l5 o- {$ B: i. r CALL DISPFIR
% B3 y8 W5 C/ W5 ]. h6 wTHN3DISP:+ L; B6 Q6 h- p2 a
JNB 23H.7,TD3RET;定时是否开启标志位
8 M& `6 s/ `! k6 A; ?2 ]2 p) ^/ q MOV P1,#4BH
" q/ n! n% s# z0 T CALL DELAY ! g, z+ t2 Q6 Q' X
TD3RET:
3 j8 v$ p0 T- F% j RET: e% }2 {$ O1 r5 B, Q6 M
;;;;;;;;;;;;;;;;;;;. H! X( Z" b" K1 b/ G! h9 V
DATEDISP:
* ~; @) I5 t2 G8 \# j JNB 20H.1,BB88# i. `+ r' C* K2 T# F) F+ V
JB 20H.7,MONDISP9 x, H# Q. j# A9 j2 b5 Q
BB88:7 W9 D. k+ l8 a: f) v: ^
MOV A,DADISP0
: M, v9 V# c9 M CALL DISPSIX% m* q2 k+ y8 x$ T/ g  r; q
MOV A,DADISP12 \! m8 R) p9 G2 S: A
CALL DISPFIF
  j" L4 E8 }/ Z, @1 X+ }+ _MONDISP:8 E9 p" R8 `4 l+ _" L
JNB 20H.2,BB99
6 a. q) E7 H$ S JB 20H.7,YENDISP
! w4 Y3 t, V* F% @  H8 WBB99:! c2 b: w, l, i. |" j0 o. ]/ t* i5 y9 B# E
MOV A,MODISP0
4 _0 r- P4 \% G1 i% [8 X CALL DISPFOR
# M4 \; j$ w7 F$ V% w MOV A,MODISP1
/ a" T5 L+ W+ v( @3 Y* m- L CALL DISPTHI, f9 Y2 A5 d( |3 d! _! O
YENDISP:
) v% I/ j+ Y8 X/ H JNB 20H.3,BB89
1 _& ~7 }, B: o JB 20H.7,YDISRET
; y0 ?3 E$ T8 o; s, g3 M# pBB89:
9 O/ f0 o) e; O' a MOV A,YEDISP05 V4 X; D& W1 v' |
CALL DISPSEC
) d8 q/ q6 A2 _6 O, ]& f( z7 M MOV A,YEDISP1
8 W. ^5 i: U% d  Z- M CALL DISPFIR6 x3 [# e3 W0 E. t: b4 ~6 ?
YDISRET:7 e6 K2 X9 _, O* u* y3 r7 Y
RET
( @/ D& k2 k* I% X: w* @& b* _0 q: S+ X  ]8 L  j9 @8 E
;定时比较子程序
* g2 m, M: T5 U5 y) |+ `+ j. VCOMPARE:; z& F0 a+ W; p: @
CLR 23H.07 T* H& o+ d4 a' T) P" e7 x8 v
SETB BEEPOUT
2 a" i, u! V0 D$ J MOV A,TIMER0M;取第二组寄存器的R4,即定时分的存放值
( o7 k2 D; I& N. ], O: v7 J, O CJNE A,03H,NOTEQU;与寄存器第一组的R3比较,分比较2 f& q+ _+ t" X  ^, X  }
MOV A,TIMER0H;取第二组寄存器的R2,即定时时的存入值
  |5 @6 n" U! `4 N+ B0 y% t CJNE A,02H,NOTEQU;与寄存器第一组的R2比较,时比较" g1 G" k: n" o. T
SETB 23H.05 D$ k3 F) U6 k  x' R9 E7 f
CLR BEEPOUT5 d0 _: H8 o) ?8 i  H
RET
) W3 o; I9 b; e3 D+ @COMPARE1:
9 J- ~6 U/ p+ |4 Y! P  q$ i9 g CLR 23H.22 q. w' K! @9 g
SETB BEEPOUT9 x) s* y5 B9 G( k- d; h1 s$ x
MOV A,TIMER1M;取第二组寄存器的R4,即定时分的存放值8 v9 X2 O3 X% `. U5 ?5 {* J* }
CJNE A,03H,NOTEQU;与寄存器第一组的R3比较,分比较! \2 B) w6 L3 r* }0 e8 k
MOV A,TIMER1H;取第二组寄存器的R2,即定时时的存入值0 W. K) U8 m4 [
CJNE A,02H,NOTEQU;与寄存器第一组的R2比较,时比较
8 b# N& e6 J% |( N$ o; z SETB 23H.2;定时时间到,准备开启BEEP' r( F8 n* m' V( b1 [& n0 G
CLR BEEPOUT9 J; f7 t5 e; Z# C! y9 [8 ~
RET
% F$ R& A: \# zCOMPARE2:* R8 @% L- h0 e- m! c  B7 V( ?% h# o
CLR 23H.4/ I, Q( T1 Y7 ~; B
SETB BEEPOUT
( T" I  W- u) V MOV A,TIMER2M;取第二组寄存器的R4,即定时分的存放值/ `3 F$ v) `7 y4 L4 G5 U
CJNE A,03H,NOTEQU;与寄存器第一组的R3比较,分比较$ Z% C8 Y. \. Q9 @* M
MOV A,TIMER2H;取第二组寄存器的R2,即定时时的存入值
& ?' ]( x4 F4 @9 m  j- L9 C CJNE A,02H,NOTEQU;与寄存器第一组的R2比较,时比较
2 Z  M7 {8 B: o7 U1 ^ SETB 23H.4;定时时间到,准备开启BEEP( s' U0 {7 C" W+ I- i- W! c: l
CLR BEEPOUT  J5 F* d* }3 T! a/ g8 B9 J7 y, F
RET; B$ C1 R1 J7 v  G
COMPARE3:6 g3 z( }1 J7 T! w! G. Q
CLR 23H.69 N  c$ F& ~+ q
SETB BEEPOUT
. u, o4 l5 i: I; s( R7 o( d2 U MOV A,TIMER3M;取第二组寄存器的R4,即定时分的存放值* e  w# V/ Z3 U0 F# }- F
CJNE A,03H,NOTEQU;与寄存器第一组的R3比较,分比较6 N2 z! R" _! M* c* O
MOV A,TIMER3H;取第二组寄存器的R2,即定时时的存入值! y9 y1 L+ y" \9 S3 H9 \
CJNE A,02H,NOTEQU;与寄存器第一组的R2比较,时比较
" {$ ^/ W$ h# r4 Y6 {2 i# u' }* m SETB 23H.6;定时时间到,准备开启BEEP. Q4 ]; n  S4 ]2 Z6 o
CLR BEEPOUT# a& {* w% t# P. `+ s% b
NOTEQU:  m9 J& h' J: `4 u
RET
# O7 [( r( t9 _! v+ k: f; {) V+ L# g7 x' t8 S1 q  K
;延时子程序
0 m  t2 C/ \! z) G/ I, l3 F) [DELAY:
! G1 w6 f) Q* A! n  e8 Q MOV R7,#05FH
; [0 T' }' z2 q- {2 [( \1 X. V DJNZ R7,$
6 n% v  w) r  W+ r7 d) u6 p3 R5 ] RET& e8 _; A) _$ }5 B
2 P, R4 r2 B9 ^# a
;显示; O5 ]5 A- ^5 s& L
: C) X  d% l0 D% H8 G; n) E" k) P
DISPFIR:
- x3 G; j7 S, P3 f3 `! `* N ORL A,#0FH5 F0 z/ F  r' k7 T& [
ANL A,#0F1H
# V$ ^( c2 W2 k8 N! ^: U# d( ~% W2 U6 X MOV P1,A
/ ]0 m: p+ H8 w1 e+ o CALL DELAY
' p: W- a; O: n RET
3 T; P( I: H9 ]; `2 x/ V( N- R8 b0 k9 D5 t* J
DISPSEC:3 t9 H8 b9 q" A7 V
ORL A,#0FH) e# O+ ^0 R) F8 O5 i$ {
ANL A,#0F9H
2 m% |: b1 i' f MOV P1,A
2 p7 P3 c. |; i" V  T CALL DELAY
& \3 E6 b# P7 j/ B; `# m RET
% r% K! s1 e, Z! q) S2 h
5 ?$ w: [- A- U7 }/ s6 j, BDISPTHI:( L. ~' z' {- _7 k9 Y
ORL A,#0FH1 Y1 k7 |5 q0 J( Z5 n. U
ANL A,#0F5H
- o% j# z. @6 K+ S* O5 r) \4 A MOV P1,A
0 d5 Q& h& q, s+ a3 H$ [. h" w CALL DELAY0 D' d; T$ K- Q% r* w! a
RET9 M. N. D) b0 R% h3 L5 S

/ W3 l( K; S: }/ H# {+ fDISPFOR:
8 j" q5 b$ n, }) R8 w

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:33 | 显示全部楼层
ORL A,#0FH1 f+ V. ?; D1 o
ANL A,#0FDH
+ f: z  z. o; E6 H( S! F2 h+ X MOV P1,A
( w4 Y/ B0 f1 u' e5 i6 w1 q% H CALL DELAY
  [  w9 y+ A1 Q RET
: C$ ^- ?. K0 h  y7 w
( Z! }5 @8 O3 R3 V6 vDISPFIF:! |/ C6 G3 S' `1 Q4 r% Z& n
ORL A,#0FH
, M  Z' {1 x, m3 ? ANL A,#0F3H! L) h8 R5 O0 }- M
MOV P1,A
! \! C) g+ G) p/ r CALL DELAY& O  ?8 C" J3 }  B; n8 j
RET
! V. |& W6 q5 l1 N7 Z# |% j/ D. B, F
DISPSIX:
4 j9 I/ L. @3 m1 @. A ORL A,#0FH
" B$ L$ ^' t) D# [0 n3 y, H' g ANL A,#0FBH5 I9 n) P  D" A+ p
MOV P1,A
& O1 Y/ ~# R5 r+ n CALL DELAY  u' ^% j& I* G3 r
RET3 {& S/ O4 V# Q, [8 D) {7 f
9 r- k& R9 c5 _" N! f
END

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:33 | 显示全部楼层
用到的几个 标志位:; {  G: k# z- w% L3 z

, H: N) e- A# P0 U. t20H.1 日设置标志! h# L, x  T/ _' s5 Y

* Z, z1 ?' ~4 N6 }" X. A7 m5 G3 q* W, L20H.2 月设置标志
3 X- `) |1 g4 l1 R- o1 R' t6 H8 V. N/ x4 n# W
20H.3 年设置标志
3 f6 k( Y% j9 {9 C$ k2 w$ j8 A2 A# d6 q) W. B  M8 E' t7 |
20H.4 日期显示标志- Y, @& F: F" t( B) M, |) q8 b

5 y5 m" C1 a* N8 B20H.6 秒设置标志
9 W- ]9 l+ B8 g  |. N. i
* d/ p2 v! r( u& y20H.7 设置时的显示状态标志(闪烁)
% x5 m! h8 G3 i4 t6 v, U0 Y: z
% J9 R; k* G2 A8 Z+ ?6 F5 v20H.0 大月标志, X% J9 `# m4 T/ e

6 ]; v( {; |- d, A% X. n1 h21H.0 时间显示标志3 q- D% q' I5 m- E

! l% T$ j) T/ B; n* C21H.1 闹铃1显示标志
) [, n" \1 }/ h8 D9 ^9 W1 Z
6 T4 L8 C# o+ O8 [7 a21H.2 闹铃2显示标志2 s; F! N2 [  [' `( h

' t8 y9 v8 V; C+ z21H.3 闹铃3显示标志$ L' m. r) X! {

% h2 H! `% H: K0 f! D21H.4 闹铃4显示标志/ P0 \* f0 j. @, x0 Z: i

. e3 F8 `3 W- [% a0 b3 P* L21H.5 分设置标志3 v* i$ B1 p+ G+ i2 e2 i) s# r4 ^( ?

  ?% |, m8 I7 p( b7 V21H.6 时设置标志2 l+ R; a- t. J7 _

3 P% m9 |5 I/ [' L2 H8 d6 [( q21H.7 星期设置标志
) \# ], {& {* _7 y/ @: z+ V( I- u* r
% C. Z& w- r( T7 [" |22H.0 闹铃1分设置标志0 L) j7 l- Q+ J  X% l# B: X

$ g% v7 G/ p6 w% O# {$ F' c) i  K22H.1 闹铃1时设置标志
$ n& r7 }  j, p' b+ b/ `2 [- c$ ]' @; _& ?" y* u% q: n
........' r1 `; f7 q% b# i
! A& O3 A  j/ s
22H.6 闹铃4分设置标志5 [" g6 K) @) [; c

- ]' y5 G% Z3 _5 w; t22H.7 闹铃4时设置标志
4 Y3 l7 i% G. Y" Q5 {2 q/ o) [. }, v# Y5 b" d
23H.0 闹铃1时间到标志: n* e+ `2 B" L+ d8 a% V" P4 G0 N

7 ]# k9 A9 o) a, \  A+ S23H.1 闹铃1开关标志9 B( B6 Z5 J' b, X
8 W$ x! }/ c6 \8 `
........6 p& ]) p, c( s' n1 f0 m- H0 f
6 K0 o9 o, j- W# A' q
23H.6 闹铃4时间到标志& }( z  y% U" Q$ X

# q; j  T3 P. }5 \6 @23H.7 闹铃4开关标志
$ @1 l# I  Z" _8 C; n4 u" Y$ H' H: O' W
7 c6 F" h7 ^' a2 G# o编程过程中遇到的问题是:5 h; [& Y+ b/ f; r

1 {8 h6 O' B0 `2 Q! x1.在按设置键的时候在按30次左右的时候,SP溢出,因此强制SP复位,不知有何影响 目前还没发现问题;; y- W' ~1 J* u7 t
2 ^2 i1 F4 \0 C1 h+ Z
2.按键去抖动的时候没法消除,因此用检测按键是否弹起检测按键是否按下,这样的后果是不能连加。' D, Q) f# f1 g" g

: P8 y' A8 V8 _( |4 o$ a3.程序比较大,2051刚够用。呵呵,有高手改下会小很多的。
( h2 _# X( j3 t4 a/ E; ]. V# y8 l" @0 ~9 e6 p
时间比较准,15天左右快了大概有40多秒,跟电脑的时间比较。

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:34 | 显示全部楼层
印制板有误,仅供参考,我是用这个板子做的,做了些改动,段码连线应该下移一位,即,A-B,B-C.G不动,星期显示的由于管子不同,连线也大不相同,根据所用管子自己改动  
6 W" n7 b; V* I. w0 b# u" T$ K3 H% a7 s: g! n/ ]

) [. H- R/ S" `( I% U3 ~ 55767db1.rar (159.19 KB, 下载次数: 1)

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:34 | 显示全部楼层
按键处理程序比较简单,有兴趣可以做做,2张单面板做

该用户从未签到

 楼主| 发表于 2010-1-29 21:12:35 | 显示全部楼层
怎么没人顶下啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新贴|维修网 ( 粤ICP备09047344号

GMT+8, 2025-5-19 02:50 , Processed in 1.026642 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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