📄 can.lis
字号:
01C4 L27:
01C4 .dbline 99
01C4 6395 inc R22
01C6 L29:
01C6 .dbline 99
01C6 6830 cpi R22,8
01C8 C8F3 brlo L26
01CA .dbline 102
01CA 80910000 lds R24,_Pass_Flag
01CE 8F5F subi R24,255 ; addi 1
01D0 80930000 sts _Pass_Flag,R24
01D4 .dbline 103
01D4 L23:
01D4 .dbline 86
01D4 4395 inc R20
01D6 L25:
01D6 .dbline 86
01D6 4F30 cpi R20,15
01D8 08F4 brsh X2
01DA D3CF xjmp L22
01DC X2:
01DC .dbline 104
01DC ; CANMSG = 0; //clear data
01DC ;
01DC ; Pass_Flag = Pass_Flag + 1;
01DC ; }
01DC ; if(Pass_Flag!=0x0f)
01DC 80910000 lds R24,_Pass_Flag
01E0 8F30 cpi R24,15
01E2 11F0 breq L30
01E4 .dbline 105
01E4 ; RESET;
01E4 0C940000 jmp 0x000
01E8 L30:
01E8 .dbline 107
01E8 ;
01E8 ; WDR();
01E8 A895 wdr
01EA .dbline 108
01EA ; CANBT1 = CanBaud[2][0];
01EA E0E0 ldi R30,<_CanBaud+6
01EC F0E0 ldi R31,>_CanBaud+6
01EE E491 lpm R30,Z
01F0 A2EE ldi R26,226
01F2 B0E0 ldi R27,0
01F4 EC93 st x,R30
01F6 .dbline 109
01F6 ; CANBT2 = CanBaud[2][1];
01F6 E0E0 ldi R30,<_CanBaud+6+1
01F8 F0E0 ldi R31,>_CanBaud+6+1
01FA E491 lpm R30,Z
01FC A3EE ldi R26,227
01FE EC93 st x,R30
0200 .dbline 110
0200 ; CANBT3 = CanBaud[2][2];
0200 E0E0 ldi R30,<_CanBaud+6+2
0202 F0E0 ldi R31,>_CanBaud+6+2
0204 E491 lpm R30,Z
0206 A4EE ldi R26,228
0208 EC93 st x,R30
020A .dbline 115
020A ;
020A ; //configure MObi
020A ; /******************************************************************/
020A ;
020A ; Pass_Flag = 0x00;
020A 2224 clr R2
020C 20920000 sts _Pass_Flag,R2
0210 .dbline 116
0210 ; for (i=0; i<3; i++)
0210 4427 clr R20
0212 68C0 xjmp L40
0214 L37:
0214 .dbline 117
0214 .dbline 118
0214 842F mov R24,R20
0216 8F70 andi R24,#0x0F
0218 8295 swap R24
021A EDEE ldi R30,237
021C F0E0 ldi R31,0
021E 8083 std z+0,R24
0220 .dbline 119
0220 84E0 ldi R24,4
0222 849F mul R24,R20
0224 F001 movw R30,R0
0226 80E0 ldi R24,<_CANIDT
0228 90E0 ldi R25,>_CANIDT
022A E80F add R30,R24
022C F91F adc R31,R25
022E 2080 ldd R2,z+0
0230 E3EF ldi R30,243
0232 F0E0 ldi R31,0
0234 2082 std z+0,R2
0236 .dbline 120
0236 84E0 ldi R24,4
0238 849F mul R24,R20
023A F001 movw R30,R0
023C 80E0 ldi R24,<_CANIDT+1
023E 90E0 ldi R25,>_CANIDT+1
0240 E80F add R30,R24
0242 F91F adc R31,R25
0244 2080 ldd R2,z+0
0246 E2EF ldi R30,242
0248 F0E0 ldi R31,0
024A 2082 std z+0,R2
024C .dbline 121
024C 84E0 ldi R24,4
024E 849F mul R24,R20
0250 F001 movw R30,R0
0252 80E0 ldi R24,<_CANIDT+2
0254 90E0 ldi R25,>_CANIDT+2
0256 E80F add R30,R24
0258 F91F adc R31,R25
025A 2080 ldd R2,z+0
025C E1EF ldi R30,241
025E F0E0 ldi R31,0
0260 2082 std z+0,R2
0262 .dbline 122
0262 84E0 ldi R24,4
0264 849F mul R24,R20
0266 F001 movw R30,R0
0268 80E0 ldi R24,<_CANIDT+3
026A 90E0 ldi R25,>_CANIDT+3
026C E80F add R30,R24
026E F91F adc R31,R25
0270 2080 ldd R2,z+0
0272 E0EF ldi R30,240
0274 F0E0 ldi R31,0
0276 2082 std z+0,R2
0278 .dbline 123
0278 84E0 ldi R24,4
027A 849F mul R24,R20
027C F001 movw R30,R0
027E 80E0 ldi R24,<_CANIDM
0280 90E0 ldi R25,>_CANIDM
0282 E80F add R30,R24
0284 F91F adc R31,R25
0286 2080 ldd R2,z+0
0288 E7EF ldi R30,247
028A F0E0 ldi R31,0
028C 2082 std z+0,R2
028E .dbline 124
028E 84E0 ldi R24,4
0290 849F mul R24,R20
0292 F001 movw R30,R0
0294 80E0 ldi R24,<_CANIDM+1
0296 90E0 ldi R25,>_CANIDM+1
0298 E80F add R30,R24
029A F91F adc R31,R25
029C 2080 ldd R2,z+0
029E E6EF ldi R30,246
02A0 F0E0 ldi R31,0
02A2 2082 std z+0,R2
02A4 .dbline 125
02A4 84E0 ldi R24,4
02A6 849F mul R24,R20
02A8 F001 movw R30,R0
02AA 80E0 ldi R24,<_CANIDM+2
02AC 90E0 ldi R25,>_CANIDM+2
02AE E80F add R30,R24
02B0 F91F adc R31,R25
02B2 2080 ldd R2,z+0
02B4 E5EF ldi R30,245
02B6 F0E0 ldi R31,0
02B8 2082 std z+0,R2
02BA .dbline 126
02BA 84E0 ldi R24,4
02BC 849F mul R24,R20
02BE F001 movw R30,R0
02C0 80E0 ldi R24,<_CANIDM+3
02C2 90E0 ldi R25,>_CANIDM+3
02C4 E80F add R30,R24
02C6 F91F adc R31,R25
02C8 2080 ldd R2,z+0
02CA E4EF ldi R30,244
02CC F0E0 ldi R31,0
02CE 2082 std z+0,R2
02D0 .dbline 128
02D0 88E9 ldi R24,152
02D2 EFEE ldi R30,239
02D4 8083 std z+0,R24
02D6 .dbline 129
02D6 0000 nop
02D8 .dbline 130
02D8 80910000 lds R24,_Pass_Flag
02DC 8F5F subi R24,255 ; addi 1
02DE 80930000 sts _Pass_Flag,R24
02E2 .dbline 131
02E2 L38:
02E2 .dbline 116
02E2 4395 inc R20
02E4 L40:
02E4 .dbline 116
02E4 4330 cpi R20,3
02E6 08F4 brsh X3
02E8 95CF xjmp L37
02EA X3:
02EA .dbline 133
02EA ; {
02EA ; CANPAGE = (i<<4); //MOb 0,1,2设置为接收模式模式
02EA ; CANIDT1 = CANIDT[i][0]; //初始化 ID
02EA ; CANIDT2 = CANIDT[i][1];
02EA ; CANIDT3 = CANIDT[i][2];
02EA ; CANIDT4 = CANIDT[i][3];
02EA ; CANIDM1 = CANIDM[i][0]; //初始化 mask
02EA ; CANIDM2 = CANIDM[i][1];
02EA ; CANIDM3 = CANIDM[i][2];
02EA ; CANIDM4 = CANIDM[i][3]; //0 = ignore bit
02EA ; //CANIDM4 = (1<<IDEMSK); //identifier extention mask
02EA ; CANCDMOB = (2<<CONMOB0)|(1<<IDE)|(8<<DLC0); //reception, ext. ID,rev2.0B
02EA ; NOP();
02EA ; Pass_Flag = Pass_Flag + 1;
02EA ; }
02EA ;
02EA ; if(Pass_Flag!=0x03)
02EA 80910000 lds R24,_Pass_Flag
02EE 8330 cpi R24,3
02F0 11F0 breq L47
02F2 .dbline 134
02F2 ; RESET;
02F2 0C940000 jmp 0x000
02F6 L47:
02F6 .dbline 136
02F6 ;
02F6 ; WDR();
02F6 A895 wdr
02F8 .dbline 138
02F8 ;
02F8 ; Pass_Flag = 0x00;
02F8 2224 clr R2
02FA 20920000 sts _Pass_Flag,R2
02FE .dbline 139
02FE ; for(i=3;i<6;i++)
02FE 43E0 ldi R20,3
0300 68C0 xjmp L52
0302 L49:
0302 .dbline 140
0302 .dbline 141
0302 842F mov R24,R20
0304 8F70 andi R24,#0x0F
0306 8295 swap R24
0308 EDEE ldi R30,237
030A F0E0 ldi R31,0
030C 8083 std z+0,R24
030E .dbline 142
030E 84E0 ldi R24,4
0310 849F mul R24,R20
0312 F001 movw R30,R0
0314 80E0 ldi R24,<_CANIDT
0316 90E0 ldi R25,>_CANIDT
0318 E80F add R30,R24
031A F91F adc R31,R25
031C 2080 ldd R2,z+0
031E E3EF ldi R30,243
0320 F0E0 ldi R31,0
0322 2082 std z+0,R2
0324 .dbline 143
0324 84E0 ldi R24,4
0326 849F mul R24,R20
0328 F001 movw R30,R0
032A 80E0 ldi R24,<_CANIDT+1
032C 90E0 ldi R25,>_CANIDT+1
032E E80F add R30,R24
0330 F91F adc R31,R25
0332 2080 ldd R2,z+0
0334 E2EF ldi R30,242
0336 F0E0 ldi R31,0
0338 2082 std z+0,R2
033A .dbline 144
033A 84E0 ldi R24,4
033C 849F mul R24,R20
033E F001 movw R30,R0
0340 80E0 ldi R24,<_CANIDT+2
0342 90E0 ldi R25,>_CANIDT+2
0344 E80F add R30,R24
0346 F91F adc R31,R25
0348 2080 ldd R2,z+0
034A E1EF ldi R30,241
034C F0E0 ldi R31,0
034E 2082 std z+0,R2
0350 .dbline 145
0350 84E0 ldi R24,4
0352 849F mul R24,R20
0354 F001 movw R30,R0
0356 80E0 ldi R24,<_CANIDT+3
0358 90E0 ldi R25,>_CANIDT+3
035A E80F add R30,R24
035C F91F adc R31,R25
035E 2080 ldd R2,z+0
0360 E0EF ldi R30,240
0362 F0E0 ldi R31,0
0364 2082 std z+0,R2
0366 .dbline 146
0366 84E0 ldi R24,4
0368 849F mul R24,R20
036A F001 movw R30,R0
036C 80E0 ldi R24,<_CANIDM
036E 90E0 ldi R25,>_CANIDM
0370 E80F add R30,R24
0372 F91F adc R31,R25
0374 2080 ldd R2,z+0
0376 E7EF ldi R30,247
0378 F0E0 ldi R31,0
037A 2082 std z+0,R2
037C .dbline 147
037C 84E0 ldi R24,4
037E 849F mul R24,R20
0380 F001 movw R30,R0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -