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

📄 main.lis

📁 AT90CAN128的CAN通信源码测试成功
💻 LIS
📖 第 1 页 / 共 4 页
字号:
                        .even
 0116           _rprintfProgStr::
 0116 0E940000          xcall push_gset4x
 011A 6801              movw R12,R16
 011C                   .dbline -1
 011C                   .dbline 88
 011C           ;                WDR();
 011C           ;                if(uart_b0_flag==1)  //降压模拟
 011C           ;                {
 011C           ;                   TransmitMessage[6]=0xb0;
 011C           ;                       uart_b0_flag=0;
 011C           ;                       sja_tx(TransmitMessage);      //CAN节点数据发送 
 011C           ;                       PORTA&=~(1<<PA0);
 011C           ;                }
 011C           ;                
 011C           ;                if(uart_b8_flag==1)  //停止充电模拟
 011C           ;                {
 011C           ;                   TransmitMessage[6]=0xb8;
 011C                   .dbline 93
 011C           ;                       uart_b8_flag=0;
 011C           ;                       sja_tx(TransmitMessage);      //CAN节点数据发送 
 011C           ;                       PORTA&=~(1<<PA1);
 011C           ;                }
 011C           ;                
 011C CC20              tst R12
 011E 29F4              brne L43
 0120 DD20              tst R13
 0122 19F4              brne L43
 0124           X2:
 0124                   .dbline 93
 0124 0BC0              xjmp L39
 0126           L42:
 0126                   .dbline 97
 0126 0A2D              mov R16,R10
 0128 A3DF              xcall _rprintfChar
 012A           L43:
 012A                   .dbline 96
 012A           ;                if(uart_normal_flag==1)         //正常工作状态
 012A           ;                {
 012A           ;                   TransmitMessage[6]=0x00;
 012A 1601              movw R2,R12
 012C C101              movw R24,R2
 012E 0196              adiw R24,1
 0130 6C01              movw R12,R24
 0132 F101              movw R30,R2
 0134 2490              lpm R2,Z
 0136 A22C              mov R10,R2
 0138 AA20              tst R10
 013A A9F7              brne L42
 013C                   .dbline -2
 013C           L39:
 013C 0E940000          xcall pop_gset4x
 0140                   .dbline 0 ; func end
 0140 0895              ret
 0142                   .dbsym r c 10 c
 0142                   .dbsym r str 12 pkc
 0142                   .dbend
 0142                   .dbfunc e rprintfCRLF _rprintfCRLF fV
                        .even
 0142           _rprintfCRLF::
 0142                   .dbline -1
 0142                   .dbline 107
 0142           ;                       uart_normal_flag=0;
 0142           ;                       sja_tx(TransmitMessage);      //CAN节点数据发送 
 0142           ;                }
 0142           ;                
 0142           ;                if(uart_alarm_flag==1)          //报警状态
 0142           ;                {
 0142           ;                   TransmitMessage[6]=0xa0;
 0142           ;                       uart_alarm_flag=0;
 0142           ;                       sja_tx(TransmitMessage);      //CAN节点数据发送 
 0142           ;                }
 0142           ; 
 0142                   .dbline 109
 0142           ;                WDR();
 0142           ;                delay_nms(100);
 0142 0DE0              ldi R16,13
 0144 95DF              xcall _rprintfChar
 0146                   .dbline 110
 0146           ;                WDR();
 0146 0AE0              ldi R16,10
 0148 93DF              xcall _rprintfChar
 014A                   .dbline -2
 014A           L45:
 014A                   .dbline 0 ; func end
 014A 0895              ret
 014C                   .dbend
 014C                   .dbfunc e rprintfu04 _rprintfu04 fV
 014C           ;           data -> R10
                        .even
 014C           _rprintfu04::
 014C 0E940000          xcall push_gset3x
 0150 A02E              mov R10,R16
 0152                   .dbline -1
 0152                   .dbline 120
 0152           ;                if(can_receive_flag==1)        //有一次有效中断
 0152           ;                {
 0152           ;                       can_receive_flag=0;        //清标志
 0152           ;                       
 0152           ;                       //给串口发数据,把收到的数据送向计算机,计算机去处理
 0152           ;                       for(main_temp_all=0;main_temp_all<=12;main_temp_all++)
 0152           ;                       {
 0152           ;                           main_temp_uart=RxBuffer[main_temp_all];
 0152           ;                               uartSendByte(main_temp_uart);
 0152           ;                       }
 0152                   .dbline 121
 0152           ;                       delay_nms(1000);
 0152 80E0              ldi R24,<_HexChars
 0154 90E0              ldi R25,>_HexChars
 0156 EA2D              mov R30,R10
 0158 FF27              clr R31
 015A EF70              andi R30,15
 015C F070              andi R31,0
 015E E80F              add R30,R24
 0160 F91F              adc R31,R25
 0162 0081              ldd R16,z+0
 0164 85DF              xcall _rprintfChar
 0166                   .dbline -2
 0166           L46:
 0166 0E940000          xcall pop_gset3x
 016A                   .dbline 0 ; func end
 016A 0895              ret
 016C                   .dbsym r data 10 c
 016C                   .dbend
 016C                   .dbfunc e rprintfu08 _rprintfu08 fV
 016C           ;           data -> R10
                        .even
 016C           _rprintfu08::
 016C 0E940000          xcall push_gset3x
 0170 A02E              mov R10,R16
 0172                   .dbline -1
 0172                   .dbline 127
 0172           ;                }
 0172           ; 
 0172           ;                WDR();
 0172           ;                delay_nms(1000);   //方便看数据
 0172           ;                WDR();
 0172           ;                PORTA|=(1<<PA0);
 0172                   .dbline 129
 0172           ;                PORTA|=(1<<PA1);
 0172           ;     }
 0172 0A2D              mov R16,R10
 0174 0295              swap R16
 0176 0F70              andi R16,#0x0F
 0178 E9DF              xcall _rprintfu04
 017A                   .dbline 130
 017A           ; }
 017A 0A2D              mov R16,R10
 017C E7DF              xcall _rprintfu04
 017E                   .dbline -2
 017E           L47:
 017E 0E940000          xcall pop_gset3x
 0182                   .dbline 0 ; func end
 0182 0895              ret
 0184                   .dbsym r data 10 c
 0184                   .dbend
 0184                   .dbfunc e rprintfu16 _rprintfu16 fV
 0184           ;           data -> R10,R11
                        .even
 0184           _rprintfu16::
 0184 0E940000          xcall push_gset3x
 0188 5801              movw R10,R16
 018A                   .dbline -1
 018A                   .dbline 136
 018A           ; 
 018A           ; 
 018A           ; 
 018A           ; 
 018A           ; 
 018A           ; 
 018A                   .dbline 138
 018A           ; 
 018A           ; 
 018A 8501              movw R16,R10
 018C 012F              mov R16,R17
 018E 1127              clr R17
 0190 EDDF              xcall _rprintfu08
 0192                   .dbline 139
 0192           ; 
 0192 0A2D              mov R16,R10
 0194 EBDF              xcall _rprintfu08
 0196                   .dbline -2
 0196           L48:
 0196 0E940000          xcall pop_gset3x
 019A                   .dbline 0 ; func end
 019A 0895              ret
 019C                   .dbsym r data 10 s
 019C                   .dbend
 019C                   .dbfunc e rprintfu32 _rprintfu32 fV
 019C           ;           data -> y+0
                        .even
 019C           _rprintfu32::
 019C 0E940000          xcall push_arg4
 01A0                   .dbline -1
 01A0                   .dbline 145
 01A0           ; 
 01A0           ; 
 01A0           ; 
 01A0           ; 
 01A0           ; 
 01A0           ; 
 01A0                   .dbline 147
 01A0           ; 
 01A0           ; 
 01A0 FE01              movw R30,R28
 01A2 2080              ldd R2,z+0
 01A4 3180              ldd R3,z+1
 01A6 4280              ldd R4,z+2
 01A8 5380              ldd R5,z+3
 01AA 8201              movw R16,R4
 01AC EBDF              xcall _rprintfu16
 01AE                   .dbline 148
 01AE           ; 
 01AE FE01              movw R30,R28
 01B0 0081              ldd R16,z+0
 01B2 1181              ldd R17,z+1
 01B4 E7DF              xcall _rprintfu16
 01B6                   .dbline -2
 01B6           L49:
 01B6 2496              adiw R28,4
 01B8                   .dbline 0 ; func end
 01B8 0895              ret
 01BA                   .dbsym l data 0 l
 01BA                   .dbend
 01BA                   .dbfunc e rprintfFloat _rprintfFloat fV
 01BA           ;       negative -> R10
 01BA           ;     firstplace -> y+12
 01BA           ;          digit -> R14
 01BA           ;              i -> R12
 01BA           ;          place -> y+0
 01BA           ;              x -> y+21
 01BA           ;      numDigits -> y+19
                        .even
 01BA           _rprintfFloat::
 01BA 0E940000          xcall push_arg4
 01BE 0E940000          xcall push_gset5x
 01C2 2D97              sbiw R28,13
 01C4                   .dbline -1
 01C4                   .dbline 159
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4           ; 
 01C4                   .dbline 160
 01C4           ; 
 01C4 0024              clr R0
 01C6 0C86              std y+12,R0
 01C8                   .dbline 163
 01C8           ; 
 01C8           ; 
 01C8           ; 
 01C8 00E0              ldi R16,<L51
 01CA 10E0              ldi R17,>L51
 01CC 0E940000          xcall lpm32
 01D0 FE01              movw R30,R28
 01D2 0083              std z+0,R16
 01D4 1183              std z+1,R17
 01D6 2283              std z+2,R18
 01D8 3383              std z+3,R19
 01DA                   .dbline 166
 01DA           ; 
 01DA           ; 
 01DA           ; 
 01DA FE01              movw R30,R28
 01DC 2588              ldd R2,z+21
 01DE 3688              ldd R3,z+22
 01E0 4788              ldd R4,z+23
 01E2 508C              ldd R5,z+24
 01E4 5A92              st -y,R5
 01E6 4A92              st -y,R4
 01E8 3A92              st -y,R3
 01EA 2A92              st -y,R2
 01EC 00E0              ldi R16,<L54
 01EE 10E0              ldi R17,>L54
 01F0 0E940000          xcall lpm32
 01F4 3A93              st -y,R19
 01F6 2A93              st -y,R18
 01F8 1A93              st -y,R17
 01FA 0A93              st -y,R16
 01FC 0E940000          xcall cmp32f
 0200 24F4              brge L52
 0202 81E0              ldi R24,1
 0204 90E0              ldi R25,0
 0206 5C01              movw R10,R24
 0208 02C0              xjmp L53
 020A           L52:
 020A AA24              clr R10
 020C BB24              clr R11
 020E           L53:
 020E                   .dbline 168
 020E           ; 
 020E           ; 
 020E 00E0              ldi R16,<L54
 0210 10E0              ldi R17,>L54
 0212 0E940000          xcall lpm32
 0216 3A93              st -y,R19
 0218 2A93              st -y,R18
 021A 1A93              st -y,R17
 021C 0A93              st -y,R16
 021E FE01              movw R30,R28
 0220            ; stack offset 4
 0220 218C              ldd R2,z+25
 0222 328C              ldd R3,z+26
 0224 438C              ldd R4,z+27
 0226 548C              ldd R5,z+28
 0228 5A92              st -y,R5
 022A 4A92              st -y,R4
 022C 3A92              st -y,R3
 022E 2A92              st -y,R2
 0230 0E940000          xcall cmp32f
 0234 5CF4              brge L55
 0236 FE01              movw R30,R28
 0238 2588              ldd R2,z+21
 023A 3688              ldd R3,z+22
 023C 4788              ldd R4,z+23
 023E 508C              ldd R5,z+24
 0240 FE01              movw R30,R28
 0242 2482              std z+4,R2
 0244 3582              std z+5,R3
 0246 4682              std z+6,R4
 0248 5782              std z+7,R5
 024A 10C0              xjmp L56
 024C           L55:
 024C FE01              movw R30,R28
 024E 2588              ldd R2,z+21
 0250 3688              ldd R3,z+22
 0252 4788              ldd R4,z+23
 0254 508C              ldd R5,z+24
 0256 5A92              st -y,R5
 0258 4A92              st -y,R4
 025A 3A92              st -y,R3
 025C 2A92              st -y,R2
 025E 0E940000          xcall neg32f
 0262 FE01              movw R30,R28
 0264 0483              std z+4,R16
 0266 1583              std z+5,R17
 0268 2683              std z+6,R18
 026A 3783              std z+7,R19
 026C           L56:
 026C FE01              movw R30,R28
 026E 2480              ldd R2,z+4
 0270 3580              ldd R3,z+5
 0272 4680              ldd R4,z+6
 0274 5780              ldd R5,z+7
 0276 FE01              movw R30,R28
 0278 258A              std z+21,R2
 027A 368A              std z+22,R3
 027C 478A              std z+23,R4
 027E 508E              std z+24,R5
 0280                   .dbline 171
 0280           ; 
 0280           ; 
 0280           ; 
 0280 CC24              clr R12
 0282 39C0              xjmp L60
 0284           L57:
 0284                   .dbline 172
 0284           ; 
 0284                   .dbline 173
 0284           ; 
 0284 FE01              movw R30,R28
 0286 2588              ldd R2,z+21
 0288 3688              ldd R3,z+22
 028A 4788              ldd R4,z+23
 028C 508C              ldd R5,z+24
 028E 5A92              st -y,R5
 0290 4A92              st -y,R4
 0292 3A92              st -y,R3
 0294 2A92              st -y,R2
 0296 FE01              movw R30,R28
 0298            ; stack offset 4
 0298 2480              ldd R2,z+4
 029A 3580              ldd R3,z+5
 029C 4680              ldd R4,z+6
 029E 5780              ldd R5,z+7
 02A0 5A92              st -y,R5
 02A2 4A92              st -y,R4
 02A4 3A92              st -y,R3
 02A6 2A92              st -y,R2

⌨️ 快捷键说明

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