⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cj2b.lst

📁 超声语音测距从板部分
💻 LST
📖 第 1 页 / 共 2 页
字号:
016D FE              215     MOV R6,A
016E ED              216     MOV A,R5; ;BCD码带进位自身相加,相当于乘2
016F 3D              217     ADDC A,R5
0170 D4              218     DA A; ;十进制调整
0171 FD              219     MOV R5,A
0172 EC              220     MOV A,R4
0173 3C              221     ADDC A,R4
0174 D4              222     DA A
0175 FC              223     MOV R4,A
0176 EB              224     MOV A,R3
0177 3B              225     ADDC A,R3
0178 FB              226     MOV R3,A; ;双字节十六进制数的万位数不超过6,不用调整
0179 DAED            227     DJNZ R2,HB3; ;处理完16bit
017B 8B32            228     mov 32h,r3
017D 8C33            229     mov 33h,r4
017F 8D34            230     mov 34h,r5
0181 22              231     RET
                     232     
                     233     ;显示子程序
0182 90024A          234     display:mov dptr,#tab ;指定查表启始地址
0185 7E32            235             mov r6,#50;显示50次
0187                 236     dplop:  ;************千位显示
0187 E533            237             mov a,33h
0189 C4              238             swap a
018A 540F            239             anl a,#0fh;
018C 6007            240             jz disp;第一位为0时,不显示
018E 93              241             movc a,@a+dptr
018F F580            242             mov p0,a
0191 C2A3            243             clr p2.3
0193 31FC            244             acall DELY1
                     245             ;***********如不需要千位显示可删掉
0195 E533            246     disp:   mov a,33h
0197 540F            247             anl a,#0fh;屏蔽A中的高四位
0199 6009            248             jz disp1;第二位为0时,不显示
019B 93              249             MOVC A,@A+DPTR;查代码
019C D2A3            250             setb p2.3
019E F580            251             mov p0,a;送出百位的7段代码
01A0 C2A4            252             clr p2.4;开百位显示
01A2 31FC            253             acall DELY1;显示1ms
01A4 E534            254     disp1:  mov a,34h
01A6 C4              255             swap a
01A7 540F            256             anl a,#0fh
A51 MACRO ASSEMBLER  CJ2B                                                                 09/19/2008 20:39:44 PAGE     5

01A9 93              257             movc a,@a+dptr
01AA D2A4            258             setb p2.4
01AC F580            259             mov p0,a
01AE C2A5            260             clr p2.5;开十位显示
01B0 31FC            261             acall DELY1
01B2 E534            262             mov a,34h
01B4 540F            263             anl a,#0fh;屏蔽A中的高四位
01B6 93              264             MOVC A,@A+DPTR;查个位数的7段代码
01B7 D2A5            265             setb p2.5
01B9 F580            266             mov p0,a;送出个位的7段代码
01BB C2A6            267             clr p2.6;开个位显示
01BD 31FC            268             acall DELY1;显示1ms
01BF D2A6            269             setb p2.6
01C1 DEC4            270             djnz r6,dplop;循环
01C3 22              271             ret
                     272             
                     273     ;数码管显示定时时间的程序
01C4 90024A          274     timea:mov dptr,#tab ;指定查表启始地址
01C7 75F064          275             mov b,#100 ;10进制/10=10进制
01CA 84              276             div ab
01CB 6007            277             jz timea1;第一位为0时,不显示
01CD 93              278             MOVC A,@A+DPTR ;查百位数的7段代码
01CE F580            279             mov p0,a ;送出百位的7段代码
01D0 C2A3            280             clr p2.3 ;开百位显示
01D2 31FC            281             ACALL DELY1;显示1毫秒
01D4 D2A3            282     timea1: setb p2.3;关闭百位显示,防止鬼
01D6 E5F0            283             mov a,b
01D8 75F00A          284             mov b,#10
01DB 84              285             div ab
01DC 93              286             MOVC A,@A+DPTR ;查十位数的7段代码
01DD F580            287             mov p0,a ;送出十位的7段代码
01DF C2A4            288             clr p2.4 ;开十位显示
01E1 31FC            289             ACALL DELY1;显示1毫秒
01E3 D2A4            290             setb p2.4;关闭十位显示,防止鬼影
01E5 E5F0            291             mov a,b;个位
01E7 93              292             MOVC A,@A+DPTR ;查个位数的7段代码
01E8 F580            293             mov p0,a ;送出个位的7段代码
01EA C2A5            294             clr p2.5 ;开个位显示
01EC 31FC            295             ACALL DELY1;显示1毫秒
01EE D2A5            296             setb p2.5;关闭个位显示,防止鬼影
01F0 7400            297             mov a,#0;补充个位
01F2 93              298             MOVC A,@A+DPTR ;查个位数的7段代码
01F3 F580            299             mov p0,a ;送出个位的7段代码
01F5 C2A6            300             clr p2.6 ;开个位显示
01F7 31FC            301             ACALL DELY1;显示1毫秒
01F9 D2A6            302             setb p2.6
01FB 22              303             ret
                     304             
                     305     ;1毫秒延时子程序
01FC 7C02            306     DELY1:  MOV R4,#2
01FE 7DF8            307     DD1:    MOV R5,#248
0200 DDFE            308             DJNZ R5,$
0202 DCFA            309             DJNZ R4,DD1
0204 22              310             RET
                     311     
                     312     ;10毫秒延时子程序
0205 7C14            313     DELAY10:MOV R4,#20
0207 7DF8            314     DD2:    MOV R5,#248
0209 DDFE            315             DJNZ R5,$
020B DCFA            316             DJNZ R4,DD2
020D 22              317             RET             
                     318     
020E                 319     TIME0: ;定时器0溢出中断
020E C0E0            320             PUSH ACC
0210 C0D0            321             PUSH PSW ;将PSW和ACC入栈
0212 C28C            322             clr tr0;关定时器
A51 MACRO ASSEMBLER  CJ2B                                                                 09/19/2008 20:39:44 PAGE     6

0214 C2A8            323             clr ex0;关外中断
0216 74AA            324             mov a,#0aah
0218 F532            325             mov 32h,a
021A F533            326             mov 33h,a
021C F534            327             mov 34h,a
021E 7800            328             mov r0,#00h
0220 7901            329             mov r1,#01h
0222 B291            330             cpl p1.1
0224 D0D0            331             POP PSW
0226 D0E0            332             POP ACC
0228 32              333             RETI
0229                 334     TIME1: ;定时器0的外中断
0229 C0E0            335             PUSH ACC
022B C0D0            336             PUSH PSW ;将PSW和ACC入栈
022D C28C            337             clr tr0;关定时器
022F C2A8            338             clr ex0;关外中断
0231 C2A9            339             clr et0
0233 B297            340             CPL P1.7
0235 E58C            341             mov a,th0;高位
0237 9400            342             subb a,#0h;8bh;0b1h
0239 F530            343             mov 0030h,a
023B E58A            344             mov a,tl0;低位
023D 9478            345             subb a,#78h;48h;0d0h;0f4h;0e0h
023F F531            346             mov 0031h,a
0241 7800            347             mov r0,#00h
0243 7900            348             mov r1,#00h
0245 D0D0            349             POP PSW
0247 D0E0            350             POP ACC
0249 32              351             RETI
                     352     
                     353     ;4位7段数码管各划的数字排列表(共阴)
024A EB0A676E        354     tab:DB 0ebh,00ah,067h,06eh,08eh,0ech,0edh,02ah,0efh,0eeh,014h,074h
024E 8EECED2A                
0252 EFEE1474                
                     355     ;0 1 2 3 4 5 6 7 8 9  一。三。
                     356     END
A51 MACRO ASSEMBLER  CJ2B                                                                 09/19/2008 20:39:44 PAGE     7

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

ACC. . . . . . . .  D ADDR   00E0H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
B1 . . . . . . . .  C ADDR   0059H   A   
B2 . . . . . . . .  C ADDR   0066H   A   
B3 . . . . . . . .  C ADDR   0073H   A   
C1 . . . . . . . .  C ADDR   004CH   A   
C2 . . . . . . . .  C ADDR   0079H   A   
D1 . . . . . . . .  C ADDR   0086H   A   
D2 . . . . . . . .  C ADDR   0093H   A   
D3 . . . . . . . .  C ADDR   00A0H   A   
DD1. . . . . . . .  C ADDR   01FEH   A   
DD2. . . . . . . .  C ADDR   0207H   A   
DELAY10. . . . . .  C ADDR   0205H   A   
DELY1. . . . . . .  C ADDR   01FCH   A   
DENG . . . . . . .  C ADDR   00EFH   A   
DISP . . . . . . .  C ADDR   0195H   A   
DISP1. . . . . . .  C ADDR   01A4H   A   
DISPLAY. . . . . .  C ADDR   0182H   A   
DM23 . . . . . . .  C ADDR   013DH   A   
DM24 . . . . . . .  C ADDR   0151H   A   
DM25 . . . . . . .  C ADDR   015AH   A   
DM26 . . . . . . .  C ADDR   015FH   A   
DPLOP. . . . . . .  C ADDR   0187H   A   
DV30 . . . . . . .  C ADDR   013BH   A   
DV31 . . . . . . .  C ADDR   0133H   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
ET0. . . . . . . .  B ADDR   00A8H.1 A   
EX0. . . . . . . .  B ADDR   00A8H.0 A   
F0 . . . . . . . .  B ADDR   00D0H.5 A   
HB2. . . . . . . .  C ADDR   0162H   A   
HB3. . . . . . . .  C ADDR   0168H   A   
HERE . . . . . . .  C ADDR   00C9H   A   
L10. . . . . . . .  C ADDR   0113H   A   
L2 . . . . . . . .  C ADDR   010BH   A   
L3 . . . . . . . .  C ADDR   0111H   A   
L4 . . . . . . . .  C ADDR   0121H   A   
L5 . . . . . . . .  C ADDR   0117H   A   
L6 . . . . . . . .  C ADDR   011DH   A   
L7 . . . . . . . .  C ADDR   0123H   A   
L8 . . . . . . . .  C ADDR   0127H   A   
L9 . . . . . . . .  C ADDR   0129H   A   
LOOP . . . . . . .  C ADDR   00BAH   A   
MAIN . . . . . . .  C ADDR   0036H   A   
MAIN1. . . . . . .  C ADDR   0048H   A   
MAIN2. . . . . . .  C ADDR   0075H   A   
MAIN3. . . . . . .  C ADDR   00A2H   A   
OV . . . . . . . .  B ADDR   00D0H.2 A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
PSW. . . . . . . .  D ADDR   00D0H   A   
START. . . . . . .  C ADDR   00B5H   A   
STLOP. . . . . . .  C ADDR   012DH   A   
TAB. . . . . . . .  C ADDR   024AH   A   
TH0. . . . . . . .  D ADDR   008CH   A   
TIME0. . . . . . .  C ADDR   020EH   A   
TIME1. . . . . . .  C ADDR   0229H   A   
TIMEA. . . . . . .  C ADDR   01C4H   A   
TIMEA1 . . . . . .  C ADDR   01D4H   A   
A51 MACRO ASSEMBLER  CJ2B                                                                 09/19/2008 20:39:44 PAGE     8

TL0. . . . . . . .  D ADDR   008AH   A   
TMOD . . . . . . .  D ADDR   0089H   A   
TR0. . . . . . . .  B ADDR   0088H.4 A   


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -