找回密码
 注册
关于网站域名变更的通知
查看: 213|回复: 2
打印 上一主题 下一主题

多功能单片机出租车计价器设计 汇编语言程序

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-7-6 10:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
计价表使用说明
# N) ]8 B" B$ ]* H+ @ (1)S1按键的功能
( }( p9 }. b: J, Z在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。$ j' J& F% X8 i0 n* p
(2)S2按键的功能
: b' J) O, h. P  Q5 L; R     在按下S1按键之后,若接着按下S2键则进行单价调整(默认为调整白天单价),当接着按下S1时,则进行晚上单价调,再次按下S1可进行中途等待单价调整。当单价调整结束后,可以通过过按下S2按键进行时间调整,默认为调整时,接着按下S1可进行调整分,分调整后再接下S1可进行秒调整。当时调整完成后,若接着按下S2则又可进行单价调整。
0 R2 Q' S( q* l7 v% [7 I: z" P(3)S3按键的功能
+ R1 C8 F0 c* ~7 g& _     在显示金额及单价时,若按下S3键则显示路程和单价,再次按下S3,可返回显示金额及单价。  v1 |$ U$ Q& Q- c
(4)S4按键的功能# i/ |1 S" w( k
在按下S1按键之后,若接着按下S4按键,则进行设定默认晚上单价,并启动计价器,若没有按下S4则可设定默认单价(白天),并启动计价器。当设定默认晚上单价结束后,再次接下S4按键,则可设定默认中途等待单价,并启动计价器。当设定默认中途等待单价后,若还按一次S4,则返回系统时间的显示。  g0 e4 h7 O- R! w! Q

( @, h- v% b- w0 o9 M8 x   A4 v) ^  d; T4 G( \) A9 G2 |4 m
1 Y9 x9 ?* ?4 V9 {& \
数据的分屏的显示是通过按键S1 来实现切换的,如图7 所示。7 V# ~% U8 k2 i4 b8 l
在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。显示电路的电路原理图如图8所示。" }  H- \5 F) q
2 d# {8 r4 p' y9 V! a/ ?: L( S
DAY_PRICEEQU 6FH
5 g% C" J8 Q9 _! W; {/ J+ W7 w. wNIGHT_PRICEEQU 6EH
* G  V. q9 m7 H5 c) BMIDWAY_PRICEEQU 6DH
% L7 @+ P7 u" Q7 }/ g8 e; ^4 WSTART_PRICEEQU 6CH
$ n* D+ f$ q# B; S  }5 z. D4 SCOUNTL EQU 6BH2 p! f( U! l! \+ X( B
COUNTH EQU 6AH3 L0 l  K6 |' j4 }9 H" f
M100 EQU 69H ; 外部中断次数% p% j" U7 t) y# x/ Y
DISTANCE EQU 68H ; 行车距离
, Y, t1 {  J$ |( K/ h4 `7 }MS100 EQU 67H
* s% s* x1 |& V/ t  p" GSEC EQU 66H) G% b; P' @) j  v# Y- o1 z
MIN EQU 65H6 W5 g9 t4 ~8 `: r
HOUR EQU 64H0 }7 e8 P2 R2 A: c
LEDSL EQU 63H ; 时分钞显示缓冲区
$ D# Y7 n# F$ i9 w' vLEDSH EQU 62H. P, G: m  G. a! s4 m9 z% e% ]
LEDML EQU 61H. i4 m. ^% }! _+ q
LEDMH EQU 60H0 L/ S5 l* f) M2 ]+ K9 }4 v
LEDHL EQU 5FH
; d+ A+ ]! g, x) q8 MLEDHH EQU 5EH! I5 C6 \  p) A3 R9 R
LEDDANJIAL EQU 5DH ; 总额,单价显示缓冲区
, |/ H: R3 ~! c  ]1 ?9 gLEDDANJIAH EQU 5CH6 @5 c, ~3 W8 a( l4 {7 C9 k' i  J* C8 s
LINE_ EQU 5BH
* u: C* E0 x% l- jLEDCOUNT1 EQU 5AH- \% x- {: \0 U% Q
LEDCOUNT2 EQU 59H7 k9 u+ f' Z- x% x2 C! L
LEDCOUNT3 EQU 58H
/ z8 o. b! Y/ {  w# G/ [9 M0 O1 d& ~LEDDANJIA2L EQU 57H ; 路程,单价显示缓冲区
: x( `7 l. _1 q$ h) w$ wLEDDANJIA2H EQU 56H
# o5 h) t; H% \# h- d2 wLINE__ EQU 55H
# A# F4 ]& {/ ]4 W3 t: s8 J+ V" P9 OLINE___ EQU 54H
! b9 @' Y  @. PLEDDISTANCEL EQU 53H# q, V" x- I7 Y( w
LEDDISTANCEH EQU 52H7 \! Z/ i, L  R4 T. r  x/ _( h: j" s
LEDDAY_PL EQU 51H ; 中途,晚上,白天显示缓冲区3 Z7 ?4 M8 T: E: A" t/ C& u" d
LEDDAY_PH EQU 50H
2 ^7 G; I. b7 @+ mLEDNIG_PL EQU 4FH
# x5 r, `1 t0 ELEDNIG_PH EQU 4EH8 t( }0 r4 s9 s: d. u& J/ r( \
LEDW_PL EQU 4DH
# j0 c1 F! A; {1 m6 [8 ?# f( {2 bLEDW_PH EQU 4CH
3 E  ?2 l  O* h: S( o$ fS1 BIT P1.0
7 B! d! |1 G" R$ jS2 BIT P1.18 O0 i' ?; R; N6 e% o+ x
S3 BIT P1.22 b" r! ~5 a( e- T2 I8 O
S4 BIT P1.3( _# g" @' v8 l  s# o: K
S11 EQU 4BH6 {/ x% \! I$ J3 x: Y
S22 EQU 4AH- I' R+ x& f6 h4 T! ]4 J, X) d$ P1 S
S33 EQU 49H
- \; M! `8 X- T5 v0 J& e4 m) ]S44 EQU 48H& Q/ A% v( n. Y2 `0 \) I
M1 EQU 47H# Z, \8 \1 ]8 R# h- R
H1 EQU 46H
  T, {2 D5 I# D  l* U" Q8 vM2 EQU 45H9 `) O1 N# r8 m* K% e: }
H2 EQU 44H
0 }4 m' w0 _2 T& j9 `PRICE EQU 43H* w8 \6 k6 U* D  {! O7 X/ |

& r" g6 w# Y) \* S% kORG 0000H4 C- l+ l3 Z' a! y7 J) R' q
AJMPMAIN) U3 S; J0 `+ I( ?/ u" d
ORG 0003H
/ p% B( P) c- s" ^$ Z7 MAJMPTO
" i% A+ A' O( @7 g- nORG 000BH
( s+ L' e2 h5 t% l" PAJMPTOTIME- [5 ~6 }, \* q# A2 F. g
ORG 001BH
9 c8 ^- s  L- ?8 F/ KAJMPTOSTART0 g% I5 y# N% f  ?' a) p
ORG 0030H) ]) t) c% {6 X* d# T% u
MAIN:  MOV SP,#70H
! D6 b2 `6 O( k; f6 yMOV TMOD, #11H- y7 _  w! Z2 M0 Q
MOV TH0, #3CH( |0 ^! {+ U( c( M6 i
MOV TL0, #0B0H
+ `6 o. e0 v. G; ~$ C" QMOV TH1, #3CH
9 r+ c: \( s2 XMOV TL1, #0B0H
+ b+ H1 k9 B! _/ x1 F( ?( z$ vMOV 22H, #0AH
" h4 F& A- U: d1 {1 B0 R6 i, NSETB EA
$ S. a7 v5 q& U) ?( }" |, FSETB TR0! E! z# E2 S8 v  d" s* l" W5 x
SETB EX0( X1 h/ X0 m' M& a) D
SETB IT0
5 J) W) B. C* U& @3 L8 tSETB ET0
7 \& f' [' n; S& I; o# S7 uSETB ET1
7 F( g& v" [$ F$ q3 o; XMOV R7,#34' Q' n& Z: r$ e; p! j2 q
MOV R0,#69H
: K( v3 t) f  a9 R. L) t6 fLOOPL:MOV @R0,#0
7 d4 n! e) m; j# @4 {5 N) [+ wDEC R0
% a8 ]4 [9 Z8 w$ l7 Z, d$ Z* lDJNZR7,LOOPL$ u3 U" ^& V1 i; |8 N9 x$ f! T
MOV COUNTL, #00H ; 起步价4 S7 K; X! D9 x, r! U7 ^- e
MOV COUNTH, #05H
# ^4 Y, g8 {8 ^6 ^MOV DAY_PRICE,#25H ; 白天价格初始化6 n  c  i! ~- k/ r0 b$ b2 ?
MOV NIGHT_PRICE,#30H ; 晚上价格初始化; {) v( _  S, H' q) c; t* z, M
MOV MIDWAY_PRICE,#10H ; 中途等待初始化
; |9 X: Y# w1 n2 oMOV START_PRICE, #50H ; 起步价初始化
, ]7 U% h: R1 q' l0 ~0 v; uMOV S11, #0' o- H! y% [- X6 X% x8 |3 z! n
MOV S22, #0" O$ v0 L/ u7 n2 [! D( G
MOV S33, #0
* J) m5 K- H, A8 A- wMOV S44, #0
/ N) b0 R8 g8 e# o( c$ |6 ^3 W! wMOV DISTANCE, #02H
# r7 Z" k9 p4 a1 l4 [4 eMOV HOUR, #12H
( b, H/ N' D9 uKEY_MAIN: SETB TR0
5 U5 W7 J, N7 q. C# eACALL HMS_DIS9 |- n% F2 ]# r* W2 R
ACALL T100MSD( C2 o! m6 n! ]$ t8 M
ACALL T100MSD
3 s$ S5 h0 Z, B. L: @9 yACALL T100MSD
3 z3 s: b+ z: D: g6 S0 }" b- zJB S1, KEY_MAIN$ P! @! R6 M0 |, z$ ]& U' `+ I
ACALL T10MSD! \7 v/ ~8 f: @; Y' b& G
JB S1, KEY_MAIN
0 `' H" O. u1 M% L$ UJNB S1,$: Z9 k4 H1 }) _  L( X% c+ t
SJMP WAI1: l+ `# o+ x* z0 W4 A
WA1:JB S1, K15 k, c7 [! ?/ T8 ~( p, v
ACALL T10MSD
- }" ^* N2 y- E/ V' J3 t0 XJB S1, K16 C. v3 r2 P* e( F4 g7 E( `6 Y3 R( B
WAIT1:JNB S1, WAIT1% h' L2 N; `( G$ }  W& G% r
MOV R0, #LEDDANJIAL
( ?1 ?5 l4 l/ ^1 hMOV R2, #66 G: M: Z, `; m5 E3 U$ u* e
CLR A
; q' @. X6 y# Z' V. CMOV COUNTL,A
/ i, j; d& A2 S  o9 h) z3 ]MOV COUNTH,A
! w, n6 h5 E4 x/ v* _8 zMOV M100, A. L$ [' h- e- z. u% q' h( w! {
MOV DISTANCE,A
1 w2 E3 b1 J% l5 GBK1: MOV @R0, A& _' `+ e6 O" |5 ~; [' X
DEC R0  F7 }4 q8 J+ h* @; V# o* W4 y+ l
DJNZ R2, BK1: ?/ f& j, S- t- V4 y
MOV PRICE,DAY_PRICE; 起动初始化
' f5 b  m* C( O0 iMOV COUNTL, #00H; 起步价
* T( x; |& G. \0 g7 ?! bMOV COUNTH, #05H6 o* u. z3 _7 E- G/ k9 z3 H$ w
LCALL CP_DIS; 总金额和单价显示/ ~* u9 Z/ A  x; {1 Y
K1: JB S2, K2
8 z' l# k. r1 {. L+ ]ACALL T10MSD# w' c2 @8 L0 f( O8 m
JB S2, K2! @! E2 c7 U$ I% l* v3 u
WAIT2: JNB S2, WAIT25 H+ R. F; q- k4 x/ I& `5 F7 b2 B  _
INC S22& L( P0 `8 S; j$ O
MOV A, S22
# t& |$ M/ g. M. xCJNE A, #1, NEXT1, D+ T- K" @/ k' Z- w9 S, e
LCALL PA_DIS
8 z  i( E6 c, |) NLJMP KEY_DJ
% d/ f8 `/ @% W6 h" ANEXT1:CJNE A, #2, NEXT2! A4 S+ {5 i' t& L4 n$ @
CLR TR0
1 `5 ?) g  o' n  BLCALL HMS_DIS
6 _  C8 }+ b; a1 r4 k3 l* O: Y& U6 |LJMP KEY_SJ% {) k6 R/ T) \0 V2 y
NEXT2:CJNE A, #3, K2
0 n. {- ?( ?' a2 ]( O, ZMOV S22, #0
8 z: B# A" t+ [$ j8 @K2: JB S3, K3
* |  i* Q5 p  `# A$ B1 OACALL T10MSD
* `' @  e6 s- m. dJB S3, K3/ ~( e' e( k8 C7 d( q+ u
WAIT3:JNB S3, WAIT3
/ A# ^8 \( p. i; ~! I8 L! A2 jINC S33
0 i, C1 m) f7 T5 s1 Y9 d. w5 xMOV A, S33
' y% R* j! ?4 g& \; QCJNE A, #1, NXT18 h; i2 S7 |6 [. S( _( C8 p
LCALL DP_DIS
9 Z  U  L$ @( y3 s) ]% L) mNXT1: CJNE A, #2, NXT2
  `! X$ A! e5 X" z  }% |CLR C, X$ ?' y- M$ m/ Z6 y
MOV A, M2. n: `8 K# G- q3 P
SUBB A, M1
+ t" i) J4 x2 E) F9 W1 O% J  cMOV M1, A
  u6 Y' p9 C  w, [* ]- mMOV A, H2
2 D+ W  h! t) l9 ZSUBB A, H1
) W$ W* J4 l5 Q0 BMOV H1, A
" S3 N$ y. \$ Q- F1 I1 ^8 ]6 L+ M3 XNXT2: CJNE A, #3, K30 e# X, a5 x! f; s0 B
MOV S33, #0
# q" G1 z0 Y" T7 lLCALL CP_DIS
# V6 N3 O; f3 g+ B  [" B4 qK3: JB S4, BK_KEY_MAIN3 n# Z: d0 a8 L; y1 d/ }
ACALL T10MSD$ l) ^* t! |& {0 S6 Y
JB S4, BK_KEY_MAIN  X. q2 O. W) Q: h  T
WAIT4:JNB S4, WAIT4
: p9 _: Y' u" g: s7 qINC S44
9 S6 U- a; |) z9 `3 }: q: ]MOV A, S44
& ^, t* D# R) O( u( o2 D* z, vCJNE A, #1, NT1; o/ k+ Z9 l! }' t9 W& d) c
MOV PRICE,DAY_PRICE6 C/ T; u& F5 _- B& s
LCALL CP_DIS
) v% n- o  G* x9 i- K3 J; b, aNT1:CJNE A, #2, NT2
0 E, U) ^& R: T2 P9 x" r6 \5 j0 s, X0 aMOV PRICE,NIGHT_PRICE+ q3 w5 C9 v: S  ^7 Z8 U
LCALL CP_DIS
. z" A5 p  \- k6 |: ZNT2:CJNE A, #3, NT3. J  Y5 ]4 M# M
MOV PRICE,MIDWAY_PRICE
  X8 a; ]/ b3 x6 d  p0 SSETB TR1
; D7 l8 L1 `4 t9 u) fLCALL CP_DIS
) T9 I' }* I$ Y$ R; X8 o  s% }. rNT3:CJNE A, #4, BK_KEY_MAIN+ I5 S. N7 i7 Q7 O5 o
MOV S44, #0# Z# K% u3 m+ x5 Q
LJMP KEY_MAIN
6 L( w/ s, f, u, [) ~% G! }BK_KEY_MAIN: LJMP WA1! ~: k& Q5 c3 z2 i5 g: J. O
KEY_DJ:JB S1, KY1
1 P/ \3 e9 u- r$ K) qACALL T10MSD
  u0 Z( a( x4 q/ H! yJB S1, KY19 z( b! j* R) i* I
WAIT5:JNB S1, WAIT5: q. J0 K4 n. \. j6 G
INC S11
( r( Z  x) x% F  |0 e, @" A" gMOV A, S11% u( n. _) l7 Q7 @) C
CJNE A, #1, NEXT11
; F( R) \8 p, s  LLJMP DAY_P' `1 F+ W* F9 I! U
NEXT11: CJNE A, #2,
- G7 ]# [  m, |9 y. ?NEXT12) s# u0 W3 e4 S* V+ V
LCALL NIG_P( N0 t7 j8 A3 p- l! ]; C
NEXT12:CJNE A, #3, KY1
1 t# c' f4 q' @LCALL MID_P9 L! n  N1 k5 R- @
MOV S11, #06 L" J6 u9 v# F/ A7 c" P
LJMP KEY_MAIN
! A! m; Q9 I; f$ Q+ CKY1:JB S2, KY2% m7 M3 d" S! z+ y- g  G1 h, K/ l
ACALL T10MSD2 X6 A) d4 a3 ^
JB S2, KY2
- n) }$ y" b0 f) K- d- HWAIT6:JNB S2, WAIT6$ l5 t8 Y! m. J& e3 }
INC S229 U" O7 K7 F& C6 X& I: d9 b& S
MOV A, S22' X! \; J% E& G: c* m0 U) K
CJNE A, #1, NEXT13, t! t! ~- L: y9 ^! T: y3 t* P# I
LCALL PA_DIS5 N: y+ `8 e4 }( `' C+ W# i) L
LJMP KEY_DJ$ C4 t  E7 F  H2 j" M' T3 [
NEXT13:CJNE A, #2, NEXT146 N" `( j6 o1 h  f4 U) o
CLR TR0
. v( c/ ?. [. A$ k9 ]/ F, Y1 @LCALL HMS_DIS, u" K' N5 ]/ C+ Y6 D
LCALL KEY_SJ
$ @, r1 a" A- Q, @/ TNEXT14:CJNE A, #3, KY25 E  C/ D4 W5 i8 ?; b8 J
MOV S22, #0, b" l( A5 B7 x6 R( V1 ?" P" a
LJMP KEY_MAIN* v  ?- ]; G' r$ O  K0 `
KY2:AJMP KEY_DJ, p* L9 A9 u+ w
KEY_SJ:JB S1, KEY1, p- g8 ~- S% L( I
ACALL T10MSD
/ {2 X. z, Z0 t! NJB S1, KEY1' ~5 t$ u1 N, t) g; L/ c/ \
WAIT7:JNB S1, WAIT7# n4 l0 g4 |. d  f. z( C6 j
INC S115 \% ?+ N" ?* I4 d
MOV A, S118 d3 f. ~* s& D9 d
CJNE A, #1,NEXT21  q. K2 `7 l" a& {
LCALL HOU_T
3 ~1 [" S) b: n/ m- b* SNEXT21:CJNE A, #2,NEXT22! x7 J/ d8 c2 h! \% i2 S
LCALL MIN_T; Z' |( P  d# v9 i7 G! x
NEXT22: CJNE A, #3,KEY1% d% E. k; K, d0 w8 `  M& E  L
MOV S11, #0  m7 C7 t; }* t8 d9 x8 h6 a, \
LJMP KEY_MAIN
  A5 e1 G% `+ [2 T( F: RKEY1: JB S2, KEY2& e9 k+ F; c! w* _3 o1 x
ACALL T10MSD
- C: {( }: ~' n& i+ x; Z) NJB S2, KEY2
4 }" Y! \! E3 x% ?' f) vWAIT8:JNB S2, WAIT86 X) j9 ^1 e, n) H
INC S22/ y6 D8 U9 A1 D, V/ {- b7 X
MOV A, S222 K# L* D2 b! f' P: `
CJNE A, #1, NEXT235 |+ y/ p. G0 j6 K; u$ Y7 [
LCALL PA_DIS
* b9 }' I; \" t1 Q" o% P+ s  MLJMP KEY_DJ" H9 r! B, g9 S5 Y! h6 N
NEXT23:CJNE A, #2, NEXT24
. O2 j& {8 b3 F4 PCLR TR0
; e) k6 A$ L" f- H) `+ z" y+ j/ CLCALL HMS_DIS
3 D. ?. k1 W% ^. U# JNEXT24:CJNE A, #3, KEY2
2 d1 P$ H0 a1 a' cMOV S22,#0
. O1 s" ?# ^7 _; t- rLCALL KEY_SJ. I1 O# {' q9 a0 ?8 }1 t9 I  o& v
LJMP KEY_MAIN
* T. c# v& e" RKEY2:AJMP KEY_SJ9 G, X% g& ?! a( j. y
DAY_P:SETB F0
" M/ `! Y4 u! A% O- iLCALL T100MSD5 T4 A0 o7 G% U! r2 I5 J
LCALL T100MSD+ _4 s0 r: G" b9 X  h5 i+ e
MOV LEDDAY_PL, #0AH  T0 ~; N/ y; \+ I# b
MOV LEDDAY_PH, #0AH
4 K! n. p7 c( ?) dLCALL PA_DIS1
- r1 j( ^2 }& `2 O% bLCALL T100MSD0 B: B! X6 P) C9 F, Q* J: j( |1 K
LCALL T100MSD7 N- O/ v" B9 F! x6 P) `" u
LCALL PA_DIS
* l. @( B) w( rLP1: JB S3, KEY116 Z  ]. e5 }) G2 _. F
MOV A, #1
" e3 y7 B! n0 ^7 KADD A, DAY_PRICE
: t  g6 l% @5 i/ w# Y+ MDA A  A* [5 i3 m, T1 C& @0 X( `
MOV DAY_PRICE,A
& [! x. j( m: e) K9 pMOV A, DAY_PRICE
: [7 s1 ^7 T1 D1 p; ~CJNE A, #99H, KEY110 [8 V3 t& J$ Q7 C7 \- s7 T
MOV DAY_PRICE, #0. G! S( F3 h2 G% J: y
KEY11: JB S4, KEY129 J/ H( o  f& n" I6 f
LCALL T10MSD. V+ t: t2 ?/ h
JB S4, KEY12
! y% Y4 I6 g+ ^/ |MOV A,DAY_PRICE) |) V2 P0 Q, G" U
ADD A, #99H
# h/ }2 _7 @/ T- w1 y" aDA A7 W/ u5 Y/ s: R1 s
MOV DAY_PRICE,A0 S! Y$ E, ?& @3 V7 g; N
CJNE A, #00H, KEY12) z7 j; L' x' p* `
MOV A, #99H' V8 o" l+ i  @5 w: z5 [! Y9 u. a( v
KEY12: JB S1, KEY13
$ b5 X0 x% x  p! d" eACALL T10MSD1 I) Y1 U& T$ b2 F( ]
JB S1, KEY13
+ O; s; L( |+ a: tWAIT11: JNB S1, WAIT11( `: i' r) B7 G. Z- B5 u! D# B. q' W
INC S11( w1 v7 K1 V0 ?) U
MOV A, S11" f- S! X  h: @! w) T3 x8 [" R
CJNE A, #1,
2 u0 e3 K7 [, _: B0 vNEXT311 V0 V. @& J. B8 D
LCALL DAY_P
7 s: G  y$ h, ^1 P3 R4 XNEXT31:CJNE A, #2,NEXT32! o+ x1 {% z( D
LCALL NIG_P) F' S6 W; ~" K
NEXT32:CJNE A, #3,NEXT33
) Z+ H* l" \( n! W. m+ o' DLCALL MID_P$ `) k& s' R3 a' ~" O/ Z9 G4 ]+ Z8 V
NEXT33:CJNE A, #4, KEY136 T# T6 U; R" f9 r! |2 U! c
MOV S11, #0
, ]6 r! u# f$ b' u: s) YKEY13:JB S2, KEY14" X' |( \5 C; M; l' d& F$ C2 O
LCALL T10MSD: t8 s6 s$ ~3 ?
JB S2, KEY140 E) ~6 }4 ^9 R+ p! d
WAIT12:JNB S2, WAIT12% m3 M/ ~8 [" W  }9 _
LJMP KEY_MAIN; M2 K7 F2 h. k% b' N3 S. a
KEY14:AJMP DAY_P. l6 w2 Z5 Z& z+ f2 a
NIG_P:SETB F0 ;调用定时延时标志位, N& J) @9 r" c, n% [% W
LCALL T100MSD
5 A' L/ r" n( N! ?6 K  tLCALL T100MSD- P: {" ~$ |: W3 D8 V& |9 o
MOV LEDNIG_PL, #0AH
# p) v# m: @7 l! w$ f1 u8 Z6 xMOV LEDNIG_PH, #0AH  g  A) {# y4 K; z# E' W
LCALL PA_DIS1& I8 o; y- m( x: B/ c/ m) }
LCALL T100MSD" i8 [7 E& A, {& }1 [, M, H
LCALL T100MSD% o3 K# L& O4 W9 H/ S4 \3 }; V% Q5 a
LCALL PA_DIS
% S0 U( ~( A/ u2 |  \2 eJB S3, KEY21/ m0 q1 M1 o5 |" T( ]
LCALL T10MSD6 K2 T4 z6 [) A7 Z
JB S3, KEY21% g2 W5 X: x$ t6 V3 h
MOV A, #1; J8 k* o% H7 |4 K+ \1 k5 x
ADD A, NIGHT_PRICE9 C  v4 s. e4 {6 ?. {
DA A
% ]# [+ T# ~3 ~' C/ I" t4 H) C) I( ]MOV NIGHT_PRICE,A: w0 g1 ^  j2 D  X! C: }
CJNE A, #99H,KEY21
' f1 g% F4 ?% w& x; lMOV NIGHT_PRICE,#0
% \- Y- e0 D* l! p" uKEY21:JB S4, KEY22
/ e' c4 `& s( L2 y0 Z2 d8 ~/ ALCALL T10MSD
0 }0 U" m+ L4 V7 P$ i+ ^8 HJB S4, KEY22% _$ U* ]5 {4 Q; g2 I) x3 D& ~
MOV A, NIGHT_PRICE
7 ~- y/ i7 L: h) ^ADD A, #99H& ]: r% \/ O& [! @. C. q
DA A
  D5 i" {+ W2 g6 z1 Q6 TMOV NIGHT_PRICE,A
" w$ f8 a9 X8 X5 RCJNE A, #00H, KEY22
6 B. m$ @. ?# ~- f3 t$ A0 \, sMOV NIGHT_PRICE,#99H
1 u, f# ^; a% TKEY22:JB S1, KEY238 y0 r; Z) ~5 W8 c% I% t4 ?
ACALL T10MSD
1 f' \, I, A6 Q: \8 i8 h5 TJB S1, KEY23$ F( B6 ~& b; [. @+ K  S7 T
WAIT15:JNB S1, WAIT15$ C- M: h1 p( f! W8 g* q
INC S11
1 I7 ?$ T8 e  |MOV A, S11
6 w5 N3 g$ W& YCJNE A, #1,
0 c' m# D/ ^3 B# z/ wNEXT415 T3 _3 o! I$ }$ p0 n6 N% f3 q
LCALL DAY_P
0 V- S6 l1 S( I6 w8 ONEXT41:CJNE A, #2,NEXT42
" B4 _+ n$ s/ c4 R# p( JLCALL NIG_P: z7 s* {% Q) Y
NEXT42:CJNE A, #3,NEXT43
7 T) v1 x6 g$ ?/ |3 e1 ELCALL MID_P& u. f7 r8 }, H) U# Y8 v
NEXT43:CJNE A, #4, KEY23
8 ^0 s. h+ J/ \5 N4 QMOV S11, #0
+ t. L& F% H* F# d9 [LJMP KEY_DJ
; R" O: J3 f& d$ g2 y1 |6 lKEY23:JB S2, KEY24
: X6 W" y. F5 n. E) ^) oLCALL T10MSD
+ f4 I/ o3 K( @JB S2, KEY244 ?, M8 U& a$ b9 G, k0 u/ N, l
WAIT30:JNB S2, WAIT30- b( G; S! o# S( [4 g; c
LJMP KEY_MAIN* A) q' N3 b5 y# @: Y) v
KEY24: AJMP NIG_P
& m; ]$ Y9 U* P" `) d/ w# QMID_P: SETB F0 ;调用定时延时标志位# Y# P9 n. }" s5 }: U6 v6 F( G; L
LCALL T100MSD- ^- m; F6 O! ]7 [: F0 E5 p
MOV LEDW_PL, #0AH
" I, P& w. l/ |1 [- ~4 hMOV LEDW_PH, #0AH7 {; L' q$ ^0 i% h: v: |
LCALL PA_DIS1
4 P' e; f" A8 GLCALL T100MSD( W: X, o) B. g0 R
LCALL PA_DIS
; ^: ?3 R6 x" e1 gJB S3, KEY31
2 H0 T4 l& n, b% r, c- ILCALL T10MSD
: Z! m* D+ H# U% P3 \  xJB S3, KEY31
# |" D- ^( p& E; YMOV A, MIDWAY_PRICE
  y2 `; K; q5 C8 L8 ^ADD A, #1# r: S; C8 {; g- o' ?& i5 w  Y
DA A; }$ h3 R9 V( l
MOV MIDWAY_PRICE,A/ a2 O. V  r) e2 T9 |6 t. Q3 O6 x
CJNE A, #99H, KEY31% d: P: E0 R3 |: |$ u5 v
MOV MIDWAY_PRICE, #00H
- [1 U3 }6 j& vCJNE A, #100, KEY31! f" X0 W; U# {
MOV MIDWAY_PRICE, #0/ B0 A0 Y4 }1 i7 H7 M0 L
KEY31: JB S4, KEY32+ h1 _6 M! v: d: {+ I
LCALL T10MSD
) O7 v# d6 M) EJB S4, KEY32
7 _/ }3 l+ {; R+ k. RMOV A, MIDWAY_PRICE% h+ ^, g& U# n- T: s0 y
ADD A, #99H
$ Z5 W* m4 |8 c2 h) {DA A
0 S3 l$ v$ u0 `9 h$ j% IMOV MIDWAY_PRICE,A$ e* S9 ^& b# E
CJNE A, #00H, KEY32
, Z9 D3 V" O8 @4 t, j- q+ y1 WMOV NIGHT_PRICE,#99H
2 ?: @) r6 p  o1 @6 IKEY32: JB S1, KEY33
) C! V. h0 h0 h5 {5 qACALL T10MSD# k! k+ A- ~8 ^1 \- L
JB S1, KEY33
& C3 S# i( ~5 g8 s% _4 tWAIT18: JNB S1, WAIT18
3 _2 S/ _7 v' ~9 }% e; _( UINC S11" g- G& M9 ^6 t" M7 q
MOV A, S11+ B; ~# R, ~( ^8 y4 Y: s6 l6 S8 Z) ]
CJNE A, #1,
, ]( }$ N+ P- i* Z: T! I( |* G7 Q$ ?% m& RNEXT51/ A2 `/ l/ d' y+ m( e1 |3 M: P
LCALL DAY_P
8 C+ v) ]" W5 Z* DNEXT51: CJNE A, #2,NEXT52
! B" m+ J* c& V  HLCALL NIG_P% @- v4 G3 L. W4 Z0 C8 s
NEXT52: CJNE A, #3,NEXT539 T5 \$ r% ~! j; i- ]+ Q( ^; |+ i" e5 H: z# t
LCALL MID_P
& d6 W3 t8 v7 d1 G! X: nNEXT53: CJNE A, #4, KEY33
8 K' M& I3 E7 h" e, BMOV S11, #0+ l2 e+ `. ]0 u5 D* Z' w9 g
LJMP KEY_DJ: n8 q% u# Q! `! E; r
KEY33: JB S2, KEY34
( u5 Z& F) N' L, ~9 HLCALL T10MSD
1 ]2 o5 p# b( E0 r/ eJB S2, KEY344 }- X( ^0 V/ I" v) B
WAIT31:JNB S2, WAIT31
+ {: f+ H7 E3 ALJMP KEY_MAIN6 v- S9 s, r9 h' t9 S0 C
KEY34: AJMP MID_P
4 J; W' I% z1 s6 i$ s. i5 RHOU_T: SETB F0 ;调用定时延时标志位8 U+ m, _0 W1 ?) G. C5 H
LCALL T100MSD
" j$ i  w. ]# E7 Q8 r7 Y# S. X3 aLCALL T100MSD
" U& g2 x6 J1 j& @MOV LEDHL, #0AH4 s: c; c) w  L7 L
MOV LEDHH, #0AH3 L3 S  `- e5 R( ~
LCALL HMS_DIS1;直接调用显示,不经过拆分程序
  x+ u5 S+ O( i" L: O$ F# l8 l" PLCALL T100MSD
5 M! f9 f6 P* u! y0 a1 LLCALL T100MSD
0 s+ Y0 _. [0 F5 a0 {/ w! `MOV SEC, #0
7 U) M, W" T) ?  k( W0 vLCALL HMS_DIS3 T. A- ]+ q) S' @$ J6 }( u
JB S3, KEY41! P7 J* E% r5 A
MOV A, HOUR" r" c0 u  t* ]% c. J! W! f
ADD A, #1
( P" }, a% L7 n0 w  {+ EDA A
% F& K% Y' Y/ a2 z+ Z2 J5 Q: zMOV HOUR,A
: X) P9 V  A5 [CJNE A, #24H, KEY412 N( s0 k, k. M
MOV HOUR, #0
. y! w& G2 Z# Q; [1 N6 B# \KEY41: JB S4, KEY42$ e! v) x9 E" `
MOV A, HOUR9 T$ b$ [  [) t- ^2 w) K
ADD A, #99H- L# H0 Q" R- ?$ x! {9 i( K8 Y
DA A
6 S# k' |/ g7 f8 l$ VMOV HOUR,A
2 |3 K& T( r: X$ t; L% l; t1 UCJNE A, #99H, KEY42
9 c, d5 V* i" U) D% OMOV HOUR, #23H
0 s: u0 K: D: u3 S4 aKEY42: JB S1, KEY43
  A  W2 ~3 Y/ i7 x7 OACALL T10MSD6 {  O, U; @( _/ U! v, D- }
JB S1, KEY43
9 e" o6 h- r& r) o" AWAIT21: JNB S1, WAIT218 {3 p6 i& m, X) ~& b
INC S11
/ J$ b, E" P4 ?0 d# r9 ?" GMOV A, S116 S; {# d. U# X# P5 B
CJNE A, #1,NEXT61; U- d- z  F7 y/ B3 g
LJMP HOU_T
  W& m8 v2 F: `( z% o2 aNEXT61: CJNE A, #2,NEXT62
( O: ?8 Y; Y: v$ C. o% G. XLJMP MIN_T8 _5 O' ^9 W$ Z. ?9 Y% z: d
NEXT62: CJNE A, #3,KEY43
. F) W8 z6 \, h, Y" M6 }MOV S11, #0
; J. m' G. I1 ?2 Z3 }LJMP KEY_SJ
  j8 p$ r' O) k# m8 fKEY43: JB S2, KEY44
- a( |0 E+ Q' V: ?& W" OLCALL T10MSD2 }; @$ a$ L5 c" z- u
JB S2, KEY44
  G# ?7 s) y0 e/ IWAIT32: JNB S2, WAIT32
: S; }9 W4 A8 QLJMP KEY_MAIN7 N4 Z- z# x4 C7 o+ i" g/ [
KEY44: AJMP HOU_T
- s6 E; M( ~# M! uMIN_T: SETB F0 ;调用定时延时标志位+ j( T# q, A% F' k
LCALL T100MSD5 ^6 T# w! D; _
LCALL T100MSD
' r* u( Q, n3 ~3 o' n$ b6 D7 {MOV LEDML, #0AH
3 X8 f2 f8 b: z! ~2 u, WMOV LEDMH, #0AH# Y. @: Z3 Q' Y+ M1 T5 L: H, L
LCALL HMS_DIS1;直接调用显示,不经过拆分程序7 B  q. Z5 K0 m6 S3 A7 E9 D9 ?
LCALL T100MSD% c  _7 Q1 m! e: ~) L1 _
LCALL T100MSD5 C/ H5 s0 R/ ?0 H5 o4 R
MOV SEC, #0  x9 t4 c+ Y$ k  r
LCALL HMS_DIS' [3 _. W+ ?% W$ x' q# h9 |0 ?1 G
JB S3, KEY51" {1 ~2 W8 W0 X0 r
MOV A, MIN
2 J0 L. }4 B. L) N; T. i  q8 a4 KADD A, #1
; f" M6 _* T' a' i# }0 }DA A
4 s. d$ [0 m7 ~6 k( wMOV MIN, A
; B- [' |) |4 B* NCJNE A, #60H, KEY51
2 b0 H. ~; r2 y. }; CMOV MIN, #0
: g% }& q: m  Y1 m! ZKEY51: JB S4, KEY52: P) s% c5 S$ G
MOV A, MIN
5 k* W+ V+ s; V+ |ADD A, #99H
* J9 f0 K( z6 o2 ~DA A: n1 T7 f6 {2 @6 V( D# @
MOV MIN, A, s( V8 _$ d# W- S
CJNE A, #99H, KEY526 j( v  c+ O! [
MOV MIN, #59H
) h- [! R! a; l  ^: _KEY52: JB S1, KEY53$ e$ |( }% q. N3 y1 H& l' O0 I
ACALL T10MSD4 @$ ?4 m: f) k/ F5 ~' c& U
JB S1, KEY53
: [! E+ x/ R' C4 h" y! y- ?WAIT24: JNB S1, WAIT24! e5 y2 @' w/ i) D% @
INC S117 X2 q  V" ]) [- S
MOV A, S11: f# j5 y, Z1 X: ?
CJNE A, #1,NEXT71% _8 s! m+ l2 _
LCALL HOU_T1 i5 D" O4 R- Q* I0 j  B
NEXT71: CJNE A, #2,NEXT72$ O$ m5 V8 }3 f9 |& x' S
LCALL MIN_T
6 N# d' ]6 s) g1 y( [NEXT72: CJNE A, #3,KEY53
" @# a+ j# f- q" a) N- `9 ?SETB TR0
- v; R' L& a2 xMOV S11, #09 e  n4 F3 @: z
LJMP KEY_SJ3 M1 o5 k4 ]2 N- X5 |
KEY53: JB S2, KEY54  b# j7 d8 _- L4 M7 s# v
LCALL T10MSD( h1 B" L, X+ D4 g/ n. L3 Q
JB S2, KEY54- M7 h6 S1 _# V& X
WAIT33: JNB S2, WAIT334 s4 N  O& o  X3 O$ }% a% v+ }" A
LJMP KEY_MAIN
3 ^* K9 e6 B5 v# PKEY54: AJMP MIN_T2 P5 e  B. }5 C  j( Q, f9 C0 q5 i& l
TOTIME: PUSH PSW5 n/ W7 f: G6 c- Z: e% w
PUSH ACC
$ x: S; U* V/ f  B( T0 r& w$ UMOV TH0, #3CH
' f  R! }4 t, r. B$ W; N  VMOV TL0, #0B0H2 s7 x  l% G" Z$ l
INC MS100
1 f$ K* f+ \9 }( X0 J& [- E0 JMOV A, MS100
" k: k4 h+ u) L* b; m$ ~9 l, KCJNE A, #10,RETURN
2 e. p. ~' y/ y! T7 ?! O! lMOV MS100,#0
8 r  _7 S. M* R1 ?) }MOV A, SEC
) t* A; z+ ~3 s1 \) p( KADD A, #1- R/ g. t; l; B3 @4 R: V
DA A
7 e0 L4 U) o# Y& J% N  u. TMOV SEC,A
1 K. A+ @3 A7 I6 ?; V' iCJNE A,#60H,RETURN1 M) E0 q! A, V
MOV SEC,#0$ v, g1 T; B) g' Y/ W8 x9 T0 ]
MOV A, #1H
: |7 s3 O' H# r# O) kADD A, MIN8 P4 F* K5 ]9 Y/ F$ H
DA A
8 g& O, n9 ~/ t3 b5 g  QMOV MIN,A
' k# }& _) @4 D. cCJNE A,#60H, RETURN8 [0 d/ {5 I2 y4 m( H
MOV MIN,#0
6 o$ f0 n6 M- I( O. [  \MOV A, #1H9 ]. y- V+ H5 @7 ]: e
ADD A, HOUR3 v( a9 l5 ]/ _4 C' G0 ~+ a( |
DA A
, F' I# z9 D+ x: R7 f1 z- d% UMOV HOUR,A
/ P  f/ Z! V7 a% \# Q  Z% iCJNE A, #24H,RETURN
3 V" C' k1 H4 Z: U$ _+ M7 p' @0 v" tMOV HOUR,#0
  ]2 C& ^! ~. C4 B9 O: K5 mRETURN: POP ACC
9 i& a' R# }7 cPOP PSW) L2 S6 @6 N  T
RETI8 H+ E& _9 D$ k2 M, A. o1 K
TO: PUSH PSW; Z1 F+ \" g. l2 O# {4 l6 L
PUSH ACC
5 f0 \, M! v3 h2 D* zMOV A,#1
5 a$ C/ O7 N; cADD A,M1001 Z; z+ q$ u7 n3 A. O9 H
MOV M100,A
6 s. z" r& f% I% }MOV A, M100" y$ x- d6 ^  Y$ y3 y
CJNE A, #100,RETURN1
7 k+ C$ I0 l2 uMOV M100,#0' I' ?: F" \& u; b6 u5 \7 t) k
INC 21H
9 a4 S9 I/ f! L, o% c& BMOV A,21H% L5 O; C4 `. x- e) }' N
CJNE A, #0AH, RETURN1 ;已经到了1公里; r- W/ x: |4 i9 s6 ^' E' Z
MOV 21H,#0
) I' K8 X$ G% v7 M- W# }' u$ GMOV A, #17 f$ K# `) F" ?1 a: T' ?
ADD A, DISTANCE. F1 ^0 o3 ~2 w+ g
DA A. l; r$ O4 s6 K6 _: J  `
MOV DISTANCE,A  u* {3 }+ _4 J1 v3 S$ [0 c' y
MOV A, PRICE
: E! d; ]% e( |) S* s* |; UADD A, COUNTL8 t  s4 W( i" b. p& r; L5 p2 R
DA A
7 f2 M2 T) a  M1 _1 N+ q" kMOV COUNTL,A
0 ~1 {3 f8 L- t# }4 X* DCJNE A, #10H,RETURN1
& u! s! D* W! QMOV COUNTL,#0
, ^: V$ R% k' r8 p# pMOV A, #1
/ H: B9 b# i) _7 J& }/ `) GADD A, COUNTH
5 g% F) O4 e8 W5 n& y- ODA A$ A* Q, P2 B3 h0 Z# l
MOV COUNTH,A
8 b. J8 w0 L/ ?. b1 l+ kCJNE A, #99H, RETURN1
4 o1 b2 p5 @6 Z; A# W) ~# p1 fMOV COUNTH,#0
" t- O/ z3 w; I* r/ bRETURN1: POP ACC
# x8 t0 g8 ], bPOP PSW/ a7 {7 L" x5 b( p7 O7 n  G) D( s
RETI
4 z9 ~6 y2 m  z3 w9 v& g' MTOSTART: PUSH PSW# D; e  i3 h- g" R) ~# g
PUSH ACC
+ ]( @2 Q& Q- [MOV TH1, #3CH0 E/ K+ K8 I& @1 K' m, h/ M! d: w
MOV TL1, #0B0H8 j% ]. ?# ?% u" r+ W" S
DJNZ 22H, RETURN2 ;1S未到返回' u1 r6 H! F3 [, X* `& l; ~
MOV 22H, #0AH
: R+ n3 N7 e4 v2 @8 ^6 cMOV A, #1
0 P# W7 J/ U: a# n" B# X' b6 }3 {ADD A, 23H3 m* |' t" {, m
DA A
) I& Z. w: V6 ?+ g6 UMOV 23H, A" [8 |5 L1 l7 @/ z
CJNE A, #60H, RETURN2! C6 r8 G8 \$ F) L* S6 a9 Q
MOV 23H, #0" P/ T! r$ X# S) d* F5 z0 b1 i& m
MOV A, #1/ [+ E' r2 e% u# w8 o
ADD A, 24H% m5 y+ ?, R; v/ Y
DA A/ Z* a6 h1 ~9 T% `: o2 r) p  b
MOV 24H,A
2 g2 j- O8 u$ LCJNE A, #10H, RETURN25 ?$ R! }$ C! h. J2 ]$ @  ]
MOV 24H, #05 G( e4 U0 P' E  o
MOV A, START_PRICE
! L3 k) I8 z: FADD A, COUNTL
7 ]$ A5 d: z9 `0 O( e8 o/ XDA A! [$ K* i/ T3 @, R) E4 H2 v& n
MOV COUNTL,A
2 F$ N+ L. U8 Z- }3 X* `) h& hCJNE A, #10H, RETURN22 O% v) v2 }+ i
MOV COUNTL, #0# e) }: W9 Z6 ]: C. e2 n
MOV A, #1
# L7 b: O, D0 m4 Z9 s$ U7 u! PADD A, COUNTH* I! n2 |+ l1 O  G- ^# {  Y  c
DA A
- ?% ]* B4 X2 M0 vMOV COUNTH,A6 k2 S- ~  `, k! c+ s
CJNE A, #99H,RETURN2
6 D0 N# Y5 @3 [! |7 j/ oMOV COUNTH,#04 K' \( L  g4 k4 k+ u) C$ O
RETURN2: POP ACC3 s4 F5 x7 r2 H- G) p4 I4 N
POP PSW
' ?  k) ]9 o+ |) S8 uRETI
: r; Q: j8 I: z# V% z+ A+ `. YHMS_DISUSHACC
6 p* b8 ]3 Z3 Q- g7 |PUSHPSW! o8 ^8 A* ~' }. a1 X
SETBRS15 Z  r7 R$ n$ ?; {; [" V, |
MOV R0,#SEC ;时分秒的拆分(三个字节)9 ?- L4 [7 i3 s3 b
MOV R1,#LEDSL9 v7 @" T2 t) D1 b3 q
MOV R6,#03H
, g; f7 l& s4 w  M9 s3 ?LOOP1:MOV A, @R0& q- l% E: P0 m$ L$ s: ~
MOV B, A
# p1 _, Z8 M( Q7 hANL A, #0FH
4 Q% ~# n! v" z5 N, DMOV @R1,A
( ]* W7 p/ S5 b; |. g) N' IDEC R1
5 @/ n8 ~7 _  y4 WMOV A, B
- ~: M3 z8 L. k3 o% n% L' ^SWAPA5 u  l7 u" b9 I2 j* v/ E
ANL A, #0FH; K5 @, }' ?9 f# }2 u: Q1 F
MOV @R1,A
: _/ |7 j  p- E* w1 G7 u& rDEC R1) z+ g! x- S( p% a
DEC R0
5 C! J: N5 ~2 Q% S6 VDJNZR6,LOOP1: D8 h0 `7 o. y, \) B
POP PSW3 K6 }& \  F7 S2 S: q
POP ACC2 F, B; S# Y5 r  y4 d+ t
HMS_DIS1: PUSH ACC4 H3 L5 C* R5 k$ u: u3 F4 {
PUSH PSW* E* @/ N3 s3 m' m. k$ P6 Q
MOV R7,#06H
2 n3 o( z9 F) r. `+ k- H  GMOV R0,#LEDSL
: i; c+ f& z! w3 oLOOP: MOVA, @R04 z- v: _: G" e' d) [
MOVDPTR,#TAB! d+ o6 d! Z0 h! k
MOVCA,@A+DPTR
' k2 P( {  C* E: ]' a5 w; h9 }MOV SBUF,A
% z2 U! \4 _9 Z$ w8 @) v% U, ]BK: JBCTI,NEXT% J" R; G) b7 Y- [4 x
SJMPBK% G- y: _8 |0 @) m; p& k
NEXT: DECR0
+ ?# \# Y' j, j  h8 PDJNZR7,LOOP
) e4 R, u' v: y5 w0 lCLRRS1
/ T5 P  P9 N! lPOPPSW  k' O$ o4 i. ?/ p' Z$ m! U( h
POPACC
8 U' B/ S  z% |& s  u& vRET% L3 z, \3 [0 X$ b2 h4 ?
CP_DISUSH ACC
3 p8 t/ i; J; ~# S$ q. UPUSH PSW
9 b( V' v3 A- H, @3 Y% i2 LSETB RS1
9 a- H, H4 Q3 j* x- {) Y! d* \MOV R0,#COUNTH ;( x6 n9 ?5 I- |; p5 b
MOV R1,#LEDCOUNT2" t# J. V: O  }$ Y' K
MOV A, @R0
6 q, L, @& t5 _MOV B, A) @. A1 i- N8 q# G! U
ANL A, #0FH( t3 x7 c6 Y2 L$ y6 v+ V) [3 d9 b
MOV @R1,A
, k' B5 Z+ s8 H' i7 XDEC R14 Z; }1 I9 G0 @0 U
MOV A, B4 g" @2 S& P. H7 W# A
SWAPA, ]. c' C$ }2 `/ r6 ~  A/ [
ANL A, #0FH
! x, ^+ ?7 `* M% n7 W* W) TMOV @R1,A; y3 O# q: j1 A, k- x% Q+ ]7 v  x  x
MOV LEDCOUNT1,COUNTL
$ S3 C1 [; Z! l* u4 NMOV A,LEDCOUNT1 ;送总金额低位
, p' w$ X. ]+ V; o# `! w: OMOV DPTR,#TAB- v$ z6 ?# c2 z
MOVC A, @A+DPTR
6 q5 s  j' W) y, hMOV SBUF,A
; `$ t: L; A8 N& ~JNB TI,$
0 M2 B: q$ \: I( j" X" ICLR TI
9 `% u: A8 @/ F3 w8 W. X: T# bMOV A,LEDCOUNT2 ;送总金额中位
: q& ^* L% b# G! m( i; |  ^MOV DPTR,#TAB2 ]' D+ ?% T- Q3 x  E
MOVC A,@A+DPTR% @% q8 j  _( E& H) c
CPL ACC.4
# q0 j0 |5 x* M; ?8 iMOV SBUF,A+ }# [! z$ ^) |1 @- V: |
JNB TI, $
1 i( Z, @" v+ [" W2 }/ x0 PCLR TI
: P( t' Y0 [7 ?. aMOV A,LEDCOUNT3 ;送总金额高位! I4 ?2 G" c! `" e  s' ^1 y
MOV DPTR,#TAB6 K3 q3 n( A% _' v: T3 h8 D
MOVC A,@A+DPTR
' m, U) A( a9 oMOVSBUF,A( x4 _0 `+ }: u. ?0 G3 s: Z
JNB TI,$
( M) [3 {9 d% o, KCLR TI: I. f+ Q, o6 {( D
CLR RS1
& U& }" i4 N' ~0 PMOV SBUF,#0FEH ;送短线(短线的字型码是0FEH)% f/ s% y6 f/ R; ?( U
JNB TI, $
  l0 C( G# {# ^: W/ UCLR TI
' g6 ?( `& `  PMOV R0,#PRICE;单价拆分(两个字节)( _( f9 j$ q& M: M, c- Q5 ~
MOV R1,#LEDDANJIAL; R+ h, U. M$ K" V9 K9 j% r: X
MOV R6,#03H$ _/ P' F$ E' c, P
MOV A, @R0
+ V& x2 ?, o' r- R" IMOV B, A
" y* C# k) `9 p# v/ C, k1 cANL A, #0FH' J) F& R" l  L3 l& l: r
MOV @R1,A7 `" h2 Z; V* e" t8 n
DEC R1
: k( W* i( u1 z9 x6 eMOV A, B0 H7 \( v7 O' I# g& E* K( p
SWAPA
( ?1 a3 K! D+ b# O' `7 fANL A, #0FH
5 ]. f: {* `2 u) ]8 ~3 V# bMOV @R1,A, r) w$ q, ?8 i1 R3 d7 l& P
DEC R1
) V2 I  Q* K+ C% cMOV A,LEDDANJIAL ;送单价低位
( g# x8 Q) y1 |% l8 A$ AMOV DPTR,#TAB; d" |" I. }1 |+ `
MOVC A,@A+DPTR8 c% M+ [8 @+ z& J
MOV SBUF,A
6 y  {$ {! C; y6 G6 bJNB TI, $
; j' @9 v7 i7 e  [+ Z/ R$ L8 ZCLR TI" `8 ^1 u0 J! e6 k, U1 L
MOV A, LEDDANJIAH ;送单价高位* ]7 [* D+ k8 b1 n1 g$ g+ x
MOV DPTR,#TAB
) }: w0 W$ W! Q8 F" vMOVCA,@A+DPTR
5 i1 U& P3 a5 I4 R& }1 aCPL ACC.4
, R. T  n! ~# Q; K5 K0 ]; UMOV SBUF,A
' I% m$ |) \( ^8 \# k3 v( Y' aJNB TI,$
7 W7 O% n6 p! fCLR TI
; Y. H) h3 R; {& m' K! CPOP PSW/ y: |) I" n3 W# R
POP ACC
# W! A0 F2 O- o- J: G( HRET
7 W$ E) R6 l: WDP_DISUSH ACC + \7 Q/ x1 s- z. |5 }3 S4 u. J1 U4 n
PUSH PSW% R3 G7 j+ L% F4 F! o( `$ ^
SETB RS1
; m9 `6 k+ _1 y8 [% ?; ZMOV R0,#PRICE ;单价的拆分(一个字节)
/ o5 j1 E  T9 h7 u- }MOV R1,#LEDDANJIAL
6 \* d" Q3 Y5 y) l7 m7 vMOV A, @R0, w! S& H/ D( i4 w' V5 r! h" A
MOV B, A2 E9 R  Z/ i8 n+ p' T6 w- y# L
ANL A, #0FH4 A# s0 p" k2 v
MOV @R1,A
* p% R$ w, F5 y" E5 yDEC R1
) C- Q1 @5 {$ l. N% _MOV A, B
. O2 d. j: x1 B$ z$ y4 hSWAPA
) p% Z4 X5 C, M- D1 |ANL A, #0FH
, E& w0 g  U6 Q% h2 `MOV @R1,A
& o8 M" i' f! @; U, ?DEC R1
; D7 k# w& x, U) y8 d  q1 h+ D. [MOV A,LEDDANJIAL ;送单价低位) G: R0 L- F* K
MOV DPTR,#TAB
2 T1 l7 k# I6 l% I/ }9 t; }$ E/ xMOVC A,@A+DPTR
; }& ?4 Y& E  y0 w; \' ?7 k7 nMOV SBUF,A8 b/ R6 ~, x" Y: p- G8 A
JNB TI, $
0 _; M% I  D  u% z3 i* MCLR TI  b! y3 ?! ~; H" `
MOV A,LEDDANJIAH ;送单价高位
, s! T$ K4 S' K" L9 b$ ^MOV DPTR,#TAB# u/ g7 a1 `1 K
MOVCA,@A+DPTR
3 {; B# n3 r& g4 _# G, `9 E% RCPL ACC.4
$ S5 W0 j! X3 [% T9 i0 iMOV SBUF,A0 v5 p' a4 H" F0 c
JNB TI,$' s) K. Q& i0 V, d8 q: _# t
CLR TI
  W- E4 P( Q9 Y+ o3 F6 WMOV SBUF,#0FEH ;
" E% @6 j1 ?& y# G8 [- i1 z  C6 SJNB TI, $
; ?- b3 v8 u+ q3 j: Z8 ~, `CLR TI, u2 F' v1 f9 V$ j* j
MOV SBUF,#0FEH ;送短线
" F! x; K1 q( l) [4 g- jJNB TI,$
! q8 y9 x/ f( c; t+ hCLR TI
8 B# S: Y( X3 ~4 hMOV R0,#DISTANCE# n7 Z' E9 g0 n  t3 k6 W. p
MOV R1,#LEDDISTANCEL6 E5 C; t4 S5 s
MOV A, @R0
# }: m' ~( U% SMOV B, A
  O8 o, {9 Y+ n6 R. p. ]; yANL A, #0FH
# M: }6 e' T0 u6 S$ r2 _MOV @R1,A
, d3 n1 ^% U3 _* k" ?/ }7 pDEC R1
1 b& ^$ j3 E$ r2 F( sMOV A, B
, a* i7 O: ?% [! W, ?9 }# r6 ?* ISWAPA/ g8 d* I7 q5 B# D5 j0 A
ANL A, #0FH
6 D# Y0 C, J$ H6 M6 J8 j& E4 r. Y  lMOV @R1,A
( q5 X( d7 v, \( Q% W- C3 M3 l" pDEC R1
1 x( d% B6 v& m* k! f, K, CMOV A,LEDDISTANCEL ;送路程低位; ^  ^! a2 p% w
MOV DPTR,#TAB
; I9 c1 P  f1 p6 gMOVC A,@A+DPTR$ B/ h8 N2 l# ^1 M
MOV SBUF,A
, U. y" o4 f" z& K" b  ?' B6 CJNB TI, $0 v8 o" H, O7 l4 j
CLR TI" S0 |9 P4 i/ {) q+ F
MOV A,LEDDISTANCEH ;送路程高位
% |% Y$ i4 s7 ?- U  ?  GMOV DPTR,#TAB
6 R! F6 G! t1 H0 zMOVC A,@A+DPTR. r) _5 L. \, R9 o' J* l2 b
MOVSBUF,A
. g) h/ X; n* vJNB TI,$, x  ]3 L6 t1 P6 [& Z# }+ n
CLR TI0 @9 W7 k' d& L6 f; S! H
CLR RS1( w* J% l: U2 E( L/ c0 q5 s
POP PSW+ Q. ]: c8 y  N
POP ACC
0 X: u; Y! a( Y. N, [* s% pRET
" V' d; I( {2 F- n( t0 T: KPA_DIS:PUSH ACC 6 a  L8 z; B% L, c4 n" ]( M9 A
PUSH PSW
& f! o) x/ ^+ ~0 BSETB RS18 M' V" k4 j. r; i) _) s* ~1 z
MOV R0,#DAY_PRICE ;价格调整拆分(三个字节)
- G: _: N4 Q9 z- T. gMOV R1,#LEDDAY_PL: o1 j+ E7 {5 c  j
MOV R6,#03H
' r2 H; D+ f5 i( I/ e8 T) g, [. }LOOP2:MOV A, @R0! |, x' R' _  d; U9 q( _
MOV B, A7 Q% L9 b! b- u; Y' z9 B; {3 g
ANL A, #0FH
5 Q9 F0 p3 I( Q% l6 \MOV @R1,A
# O* K; c* `5 bDEC R1$ S+ R, V9 n$ I: a* z
MOV A, B7 x9 F  O% G7 {5 c) ]4 ]7 D' T# m
SWAPA
  C9 z& i$ Y; q  zANL A, #0FH
2 M# T  ~1 g; I6 t% vMOV @R1,A8 a. @7 \4 @6 J- X/ n. C
DEC R11 e9 N( e! D# b# P6 k3 C1 k
DEC R0" k- z6 O6 [/ H: H, z5 U
DJNZR6,LOOP2$ f$ U" B# {: u4 d
POP PSW
9 {# p' z3 G  A# F, A. q) H) [POP ACC8 b/ B; G) p: m7 h
PA_DIS1:PUSH ACC: a4 L8 V  M$ I: q8 U3 M# Z; E' \
PUSH PSW" q! u/ X, x1 U: D
MOV A,LEDDAY_PL ;白天单价) p$ R3 j& b- R+ k
MOV DPTR,#TAB9 `+ A# ]' J8 l
MOVC A,@A+DPTR1 P: O% l& o- W
MOV SBUF,A
# v& q7 A$ p2 r) F9 TJNB TI, $' G4 F. T7 f' F/ f
CLR TI0 i  p6 o  F4 e! X% q9 B
MOV A, LEDDAY_PH2 w+ E8 K% S& B+ n  r4 l; {% N) n
MOV DPTR,#TAB2 j; d. V/ C% L1 e, E
MOVCA,@A+DPTR2 T* U0 J5 J- x1 ?9 v1 c9 B' S
CPL ACC.41 Y* p' F/ C6 n* S5 O7 _& e
MOV SBUF,A
! ^0 Q5 B4 d2 e" i7 QJNB TI,$. |8 F: x- \- p) k3 J$ n
CLR TI1 a7 t2 }7 j7 N$ R8 o" Z1 j
MOV A,LEDNIG_PL ;晚上单价
8 X# e  Z# M7 J* ^MOV DPTR,#TAB7 W4 {! R' I! e  d: ^: U$ z
MOVCA,@A+DPTR
' L! d, n2 w6 G$ CMOV SBUF,A
+ R+ `8 Z2 q+ k% G2 MJNB TI, $0 a0 q- o8 @' O) K' ?2 S: b% W1 H9 X
CLR TI6 U# K- ]9 ?- N1 V: I; P" x
MOV A,LEDNIG_PH
6 W- f# z9 w; I& {MOV DPTR,#TAB6 {" H+ O9 H8 d0 _
MOVC A, @A+DPTR1 O3 `5 H5 b2 _7 s5 b( V1 a& s5 a) K
CPL ACC.4
0 P. E7 s. |% {; `3 _7 P0 p' E' X* cMOV SBUF,A+ \2 L- m8 V4 E6 P: T
JNB TI,$3 ~* q( C8 t$ l/ z" b
CLR TI# s& o: `: d9 R  ?( l
MOV A,LEDW_PL ;中途等待单价; T* w9 [( o1 [( k1 N. ~
MOV DPTR,#TAB' `0 w) r  G4 g- j0 }0 O
MOVC A,@A+DPTR, s8 i8 R4 `# W
MOV SBUF,A, Q( {8 g7 S7 Y# o/ y
JNB TI, $
. I) S7 L9 C' O% S) ECLR TI
$ x. S4 p' c, d9 I* JMOV A,LEDW_PH
4 L1 K9 f' J7 L+ G9 ^- e5 IMOV DPTR,#TAB; ]4 ~8 b0 f/ p) X, Y9 O1 e
MOVC A,@A+DPTR! `7 T" N  V6 S4 }3 p6 h  ^7 `
CPL ACC.4
, U" @) z( K3 }* q3 a" ^2 [$ o# gMOVSBUF,A
+ e3 c+ k# v) D2 ?$ ]& v/ nJNB TI,$
( c% e- p: K0 {2 t- s$ ]CLR TI
3 A3 \2 `/ K1 P, J' u" ^1 GCLR RS1
4 W3 C5 x  \; W6 u6 XPOP PSW5 q7 y7 c" E6 [( Y- d
POP ACC: Y3 G" h- o3 r  d* e' B, Z9 @' A& L) H
RET
! Z, S$ a7 G4 i" z$ jTABB 11H,0D7H,32H,92H,0D4H,98H,18H,0D1H,10H,90H,0FFH! P6 i) z* O  b' S: o' x! g
T10MSD: SETBRS0; 10毫秒延时程序
5 ^2 _3 ~2 k/ \- hMOVR4,#12
% t! _( Z1 Q8 u1 a' F4 G* @TM:MOVR3,#128" S& a7 u# d$ \3 R; W
TM6JNZR3,TM6
7 Q, N3 X" M+ b% X- \DJNZR4,TM
9 J  x7 ]. c8 Q$ B" tCLRRS0
6 |  J) Q! f* |$ v& ]9 |4 KRET
& o7 M: k# V: ~6 j% u. I4 F* g, l5 AT100MSD: MOV R3, #200$ X% K. H* b& s! P% ~, d: [
D11: MOV R4, #125$ [" }- @0 p" S; l
D12: DJNZ R4, D124 a7 \$ D& ^/ E
DJNZ R3, D11
& ], ]0 E% |+ D; lRET, @/ R$ H6 y/ \  H0 s; i* H  n
END
0 m; g! j5 i9 S. x

该用户从未签到

2#
发表于 2022-7-6 11:20 | 只看该作者
现在汇编程序越来越少了,支持楼主。

该用户从未签到

3#
发表于 2022-7-6 13:13 | 只看该作者
有proteus原理图吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-24 11:05 , Processed in 0.171875 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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