📄 cscj_timer1_cd.lis
字号:
0136 .dbsym r str 20 pc
0136 .dbsym r y 22 c
0136 .dbsym r x 10 c
0136 .dbend
0136 .dbfunc e lcd_write _lcd_write fV
0136 ; str -> R20,R21
.even
0136 _lcd_write::
0136 0E940000 xcall push_gset1
013A A801 movw R20,R16
013C .dbline -1
013C .dbline 112
013C ; TCNT1H=0xFF;// 设置计数初值 每一微秒进入定时器中断处理子函数 使aa加1
013C ; TCNT1L=0xAC;//
013C ; TIMSK&=~BIT(2);
013C 05C0 xjmp L25
013E L24:
013E .dbline 114
013E .dbline 115
013E FA01 movw R30,R20
0140 0081 ldd R16,z+0
0142 AFDF xcall _write_data
0144 .dbline 116
0144 4F5F subi R20,255 ; offset = 1
0146 5F4F sbci R21,255
0148 .dbline 117
0148 L25:
0148 .dbline 113
0148 ; }
0148 FA01 movw R30,R20
014A 2080 ldd R2,z+0
014C 2220 tst R2
014E B9F7 brne L24
0150 .dbline -2
0150 .dbline 118
0150 ;
0150 ; void main()
0150 ; {
0150 ; uchar i;
0150 ; DDRA=0XFF;
0150 L23:
0150 0E940000 xcall pop_gset1
0154 .dbline 0 ; func end
0154 0895 ret
0156 .dbsym r str 20 pc
0156 .dbend
0156 .dbfunc e display _display fV
.even
0156 _display::
0156 .dbline -1
0156 .dbline 124
0156 ; PORTA=0X44;
0156 ; int2_init();
0156 ; timer1_init();
0156 ; timer0_init();
0156 ; lcd12864_init();
0156 ; line1 = "检测到障碍物";
0156 .dbline 125
0156 ; line2 = " 距离:";
0156 00E8 ldi R16,128
0158 8FDF xcall _write_com
015A 0FC0 xjmp L29
015C L28:
015C .dbline 127
015C .dbline 128
015C E0910600 lds R30,_line1
0160 F0910700 lds R31,_line1+1
0164 0081 ldd R16,z+0
0166 9DDF xcall _write_data
0168 .dbline 129
0168 80910600 lds R24,_line1
016C 90910700 lds R25,_line1+1
0170 0196 adiw R24,1
0172 90930700 sts _line1+1,R25
0176 80930600 sts _line1,R24
017A .dbline 130
017A L29:
017A .dbline 126
017A ; DDRB|=BIT(PB4);
017A E0910600 lds R30,_line1
017E F0910700 lds R31,_line1+1
0182 2080 ldd R2,z+0
0184 2220 tst R2
0186 51F7 brne L28
0188 .dbline 132
0188 ; TIMSK|=BIT(2);
0188 ; while(1)
0188 ; {
0188 ; if(flag==1)
0188 ; {
0188 ; flag=0;
0188 00E9 ldi R16,144
018A 76DF xcall _write_com
018C 0FC0 xjmp L32
018E L31:
018E .dbline 134
018E .dbline 135
018E E0910400 lds R30,_line2
0192 F0910500 lds R31,_line2+1
0196 0081 ldd R16,z+0
0198 84DF xcall _write_data
019A .dbline 136
019A 80910400 lds R24,_line2
019E 90910500 lds R25,_line2+1
01A2 0196 adiw R24,1
01A4 90930500 sts _line2+1,R25
01A8 80930400 sts _line2,R24
01AC .dbline 137
01AC L32:
01AC .dbline 133
01AC ; line1 = "检测到障碍物";
01AC E0910400 lds R30,_line2
01B0 F0910500 lds R31,_line2+1
01B4 2080 ldd R2,z+0
01B6 2220 tst R2
01B8 51F7 brne L31
01BA .dbline 152
01BA ; line2 = " 距离:";
01BA ; display();
01BA ; PORTA=0x77;
01BA ;
01BA ; write_com(0x94);
01BA ; write_data((s%1000/100)+0x30);
01BA ; write_data((s%100/10)+0x30);
01BA ; write_data((s%10)+0x30);
01BA ; lcd_write("mm");
01BA ; delayms(500);
01BA ; PORTA=0X00;
01BA ; aa=0;
01BA ; TCNT1H=0xff;//
01BA ; TCNT1L=0xac;//
01BA ; DDRB|=BIT(PB4);
01BA ; TIMSK|=BIT(2);
01BA ; }
01BA ; if(flag==0)
01BA ; {
01BA 80E0 ldi R24,<L34
01BC 90E0 ldi R25,>L34
01BE 90930700 sts _line1+1,R25
01C2 80930600 sts _line1,R24
01C6 .dbline 153
01C6 ; clear_dis();
01C6 90930500 sts _line2+1,R25
01CA 80930400 sts _line2,R24
01CE .dbline 154
01CE ; }
01CE 90930300 sts _line3+1,R25
01D2 80930200 sts _line3,R24
01D6 .dbline 155
01D6 ; }
01D6 90930100 sts _line4+1,R25
01DA 80930000 sts _line4,R24
01DE .dbline -2
01DE .dbline 156
01DE ; }
01DE L27:
01DE .dbline 0 ; func end
01DE 0895 ret
01E0 .dbend
01E0 .dbfunc e clear_disp_pic _clear_disp_pic fV
01E0 ; j -> R20
01E0 ; i -> R22
.even
01E0 _clear_disp_pic::
01E0 0E940000 xcall push_gset2
01E4 .dbline -1
01E4 .dbline 164
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 .dbline 165
01E4 ; }
01E4 4427 clr R20
01E6 .dbline 166
01E6 ; }
01E6 14C0 xjmp L39
01E8 L36:
01E8 .dbline 167
01E8 ; }
01E8 .dbline 168
01E8 ; }
01E8 6627 clr R22
01EA 0FC0 xjmp L43
01EC L40:
01EC .dbline 169
01EC .dbline 170
01EC 04E3 ldi R16,52
01EE 44DF xcall _write_com
01F0 .dbline 171
01F0 042F mov R16,R20
01F2 0058 subi R16,128 ; addi 128
01F4 41DF xcall _write_com
01F6 .dbline 172
01F6 062F mov R16,R22
01F8 0058 subi R16,128 ; addi 128
01FA 3EDF xcall _write_com
01FC .dbline 173
01FC 00E3 ldi R16,48
01FE 3CDF xcall _write_com
0200 .dbline 174
0200 0027 clr R16
0202 4FDF xcall _write_data
0204 .dbline 175
0204 0027 clr R16
0206 4DDF xcall _write_data
0208 .dbline 176
0208 L41:
0208 .dbline 168
0208 6395 inc R22
020A L43:
020A .dbline 168
020A 6031 cpi R22,16
020C 78F3 brlo L40
020E .dbline 177
020E L37:
020E .dbline 166
020E 4395 inc R20
0210 L39:
0210 .dbline 166
0210 4032 cpi R20,32
0212 50F3 brlo L36
0214 .dbline -2
0214 .dbline 178
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 ; }
0214 L35:
0214 0E940000 xcall pop_gset2
0218 .dbline 0 ; func end
0218 0895 ret
021A .dbsym r j 20 c
021A .dbsym r i 22 c
021A .dbend
021A .dbfunc e disp_pic _disp_pic fV
021A ; j -> R20
021A ; i -> R22
021A ; img -> R10,R11
.even
021A _disp_pic::
021A 0E940000 xcall push_gset3
021E 5801 movw R10,R16
0220 .dbline -1
0220 .dbline 184
0220 ; }
0220 ; }
0220 ; }
0220 ; }
0220 ; }
0220 ; }
0220 .dbline 186
0220 ; }
0220 ; }
0220 4427 clr R20
0222 29C0 xjmp L48
0224 L45:
0224 .dbline 187
0224 ; }
0224 .dbline 188
0224 ; }
0224 6627 clr R22
0226 24C0 xjmp L52
0228 L49:
0228 .dbline 189
0228 .dbline 190
0228 04E3 ldi R16,52
022A 26DF xcall _write_com
022C .dbline 191
022C 042F mov R16,R20
022E 0058 subi R16,128 ; addi 128
0230 23DF xcall _write_com
0232 .dbline 192
0232 062F mov R16,R22
0234 0058 subi R16,128 ; addi 128
0236 20DF xcall _write_com
0238 .dbline 193
0238 00E3 ldi R16,48
023A 1EDF xcall _write_com
023C .dbline 194
023C 82E0 ldi R24,2
023E 869F mul R24,R22
0240 1001 movw R2,R0
0242 80E1 ldi R24,16
0244 849F mul R24,R20
0246 F001 movw R30,R0
0248 E20D add R30,R2
024A F31D adc R31,R3
024C EA0D add R30,R10
024E FB1D adc R31,R11
0250 0491 lpm R16,Z
0252 27DF xcall _write_data
0254 .dbline 195
0254 82E0 ldi R24,2
0256 869F mul R24,R22
0258 1001 movw R2,R0
025A 80E1 ldi R24,16
025C 849F mul R24,R20
025E F001 movw R30,R0
0260 E20D add R30,R2
0262 F31D adc R31,R3
0264 EA0D add R30,R10
0266 FB1D adc R31,R11
0268 3196 adiw R30,1
026A 0491 lpm R16,Z
026C 1ADF xcall _write_data
026E .dbline 196
026E L50:
026E .dbline 188
026E 6395 inc R22
0270 L52:
0270 .dbline 188
0270 6830 cpi R22,8
0272 D0F2 brlo L49
0274 .dbline 197
0274 L46:
0274 .dbline 186
0274 4395 inc R20
0276 L48:
0276 .dbline 186
0276 4032 cpi R20,32
0278 08F4 brsh X1
027A D4CF xjmp L45
027C X1:
027C .dbline 198
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C ; }
027C 40E2 ldi R20,32
027E 2AC0 xjmp L56
0280 L53:
0280 .dbline 199
0280 ; }
0280 .dbline 200
0280 ; }
0280 6627 clr R22
0282 25C0 xjmp L60
0284 L57:
0284 .dbline 201
0284 .dbline 202
0284 04E3 ldi R16,52
0286 F8DE xcall _write_com
0288 .dbline 203
0288 042F mov R16,R20
028A 0058 subi R16,128 ; addi 128
028C 0052 subi R16,32
028E F4DE xcall _write_com
0290 .dbline 204
0290 062F mov R16,R22
0292 0857 subi R16,120 ; addi 136
0294 F1DE xcall _write_com
0296 .dbline 205
0296 00E3 ldi R16,48
0298 EFDE xcall _write_com
029A .dbline 206
029A 82E0 ldi R24,2
029C 869F mul R24,R22
029E 1001 movw R2,R0
02A0 80E1 ldi R24,16
02A2 849F mul R24,R20
02A4 F001 movw R30,R0
02A6 E20D add R30,R2
02A8 F31D adc R31,R3
02AA EA0D add R30,R10
02AC FB1D adc R31,R11
02AE 0491 lpm R16,Z
02B0 F8DE xcall _write_data
02B2 .dbline 207
02B2 82E0 ldi R24,2
02B4 869F mul R24,R22
02B6 1001 movw R2,R0
02B8 80E1 ldi R24,16
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -