📄 main.lis
字号:
0132 .dbline 33
0132 FA01 movw R30,R20
0134 2080 ldd R2,z+0
0136 2220 tst R2
0138 B9F7 brne L40
013A .dbline 38
013A 0DE0 ldi R16,13
013C EEDF rcall _putchar
013E .dbline 39
013E 0AE0 ldi R16,10
0140 ECDF rcall _putchar
0142 .dbline -2
0142 L39:
0142 00D0 rcall pop_gset1
0144 .dbline 0 ; func end
0144 0895 ret
0146 .dbsym r s 20 pc
0146 .dbend
0146 .dbfunc e putgmgr _putgmgr fV
0146 ; s -> R20,R21
.even
0146 _putgmgr::
0146 00D0 rcall push_gset1
0148 A801 movw R20,R16
014A .dbline -1
014A .dbline 42
014A 05C0 rjmp L45
014C L44:
014C .dbline 44
014C .dbline 45
014C FA01 movw R30,R20
014E 0081 ldd R16,z+0
0150 E4DF rcall _putchar
0152 .dbline 46
0152 4F5F subi R20,255 ; offset = 1
0154 5F4F sbci R21,255
0156 .dbline 47
0156 L45:
0156 .dbline 43
0156 FA01 movw R30,R20
0158 2080 ldd R2,z+0
015A 2220 tst R2
015C B9F7 brne L44
015E .dbline 48
015E 0AE1 ldi R16,26
0160 DCDF rcall _putchar
0162 .dbline -2
0162 L43:
0162 00D0 rcall pop_gset1
0164 .dbline 0 ; func end
0164 0895 ret
0166 .dbsym r s 20 pc
0166 .dbend
0166 .dbfunc e Bj_rx _Bj_rx fc
0166 ; count_1 -> R20
0166 ; data -> R18
0166 ; addrss_1 -> R16
.even
0166 _Bj_rx::
0166 00D0 rcall push_gset1
0168 4A81 ldd R20,y+2
016A .dbline -1
016A .dbline 58
016A .dbline 59
016A 0CC0 rjmp L51
016C L48:
016C .dbline 60
016C .dbline 62
016C 80E0 ldi R24,<_Uart
016E 90E0 ldi R25,>_Uart
0170 E42F mov R30,R20
0172 FF27 clr R31
0174 E80F add R30,R24
0176 F91F adc R31,R25
0178 2080 ldd R2,z+0
017A 2216 cp R2,R18
017C 11F4 brne L52
017E .dbline 63
017E 042F mov R16,R20
0180 04C0 rjmp L47
0182 L52:
0182 .dbline 64
0182 L49:
0182 .dbline 59
0182 4395 inc R20
0184 L51:
0184 .dbline 59
0184 4017 cp R20,R16
0186 90F3 brlo L48
0188 .dbline 65
0188 0027 clr R16
018A .dbline -2
018A L47:
018A 00D0 rcall pop_gset1
018C .dbline 0 ; func end
018C 0895 ret
018E .dbsym r count_1 20 c
018E .dbsym r data 18 c
018E .dbsym r addrss_1 16 c
018E .dbend
018E .dbfunc e CopyStr _CopyStr fpc
018E ; s -> R18,R19
018E ; p -> R16,R17
.even
018E _CopyStr::
018E .dbline -1
018E .dbline 76
018E L55:
018E .dbline 78
018E .dbline 79
018E F901 movw R30,R18
0190 D801 movw R26,R16
0192 0190 ld R0,Z+
0194 9F01 movw R18,R30
0196 0D92 st X+,R0
0198 8D01 movw R16,R26
019A .dbline 80
019A L56:
019A .dbline 81
019A F901 movw R30,R18
019C 2080 ldd R2,z+0
019E 3324 clr R3
01A0 2220 tst R2
01A2 19F0 breq L58
01A4 822D mov R24,R2
01A6 8D30 cpi R24,13
01A8 91F7 brne L55
01AA L58:
01AA .dbline 82
01AA ; }
01AA 2224 clr R2
01AC F801 movw R30,R16
01AE 2082 std z+0,R2
01B0 .dbline 83
01B0 ;
01B0 .dbline -2
01B0 L54:
01B0 .dbline 0 ; func end
01B0 0895 ret
01B2 .dbsym r s 18 pc
01B2 .dbsym r p 16 pc
01B2 .dbend
01B2 .dbfunc e ReadTime _ReadTime fi
01B2 ; temp -> R20,R21
01B2 ; tempval -> R12,R13
01B2 ; bitcount -> R20
01B2 ; val -> R22,R23
01B2 ; count -> R14
01B2 ; p -> R10,R11
.even
01B2 _ReadTime::
01B2 00D0 rcall push_gset5
01B4 5801 movw R10,R16
01B6 .dbline -1
01B6 .dbline 95
01B6 ; /**************************************************
01B6 ; *原型:void init_devices(void)
01B6 ; *功能:初始化
01B6 ; *参数:无
01B6 ; *返回:无
01B6 ; **************************************************/
01B6 ; void init_devices(void)
01B6 ; {
01B6 ; watchdog_init(); //设置WDT
01B6 ; port_init(); //I/O口定义
01B6 ; timer1_init();
01B6 ; InitUART( 23 ); //19.2 to 7.3728M
01B6 .dbline 97
01B6 ; Time.Sec = timesec;//定时器赋初值
01B6 ; TIMSK = 0X04;//开T1定时
01B6 41E0 ldi R20,1
01B8 50E0 ldi R21,0
01BA .dbline 98
01BA ; _SEI();
01BA 6627 clr R22
01BC 7727 clr R23
01BE .dbline 100
01BE ; }
01BE ; /*******************************************/
01BE 4427 clr R20
01C0 10C0 rjmp L61
01C2 L60:
01C2 .dbline 103
01C2 .dbline 104
01C2 F501 movw R30,R10
01C4 E190 ld R14,Z+
01C6 5F01 movw R10,R30
01C8 .dbline 105
01C8 8E2D mov R24,R14
01CA 8053 subi R24,48
01CC E82E mov R14,R24
01CE .dbline 106
01CE 0AE0 ldi R16,10
01D0 10E0 ldi R17,0
01D2 9B01 movw R18,R22
01D4 00D0 rcall empy16s
01D6 6801 movw R12,R16
01D8 .dbline 107
01D8 6E2D mov R22,R14
01DA 7727 clr R23
01DC 600F add R22,R16
01DE 711F adc R23,R17
01E0 .dbline 108
01E0 4395 inc R20
01E2 .dbline 109
01E2 L61:
01E2 .dbline 102
01E2 ; void main( void )
01E2 ; {
01E2 F501 movw R30,R10
01E4 8081 ldd R24,z+0
01E6 8232 cpi R24,34
01E8 11F0 breq L63
01EA 4430 cpi R20,4
01EC 50F3 brlo L60
01EE L63:
01EE .dbline 110
01EE ; delay_ms(100);
01EE ; init_devices(); //系统初始化
01EE ; watchdog_task(); //判 断是否WDT溢出
01EE ;
01EE ; WorkCount = LINE;
01EE ;
01EE ; while ( 1 )
01EE ; {
01EE 8B01 movw R16,R22
01F0 .dbline -2
01F0 L59:
01F0 00D0 rcall pop_gset5
01F2 .dbline 0 ; func end
01F2 0895 ret
01F4 .dbsym r temp 20 i
01F4 .dbsym r tempval 12 i
01F4 .dbsym r bitcount 20 c
01F4 .dbsym r val 22 i
01F4 .dbsym r count 14 c
01F4 .dbsym r p 10 pc
01F4 .dbend
01F4 .dbfunc e Save_tel _Save_tel fV
01F4 ; i -> R10
01F4 ; p -> R22,R23
01F4 ; count -> R20
.even
01F4 _Save_tel::
01F4 00D0 rcall push_gset3
01F6 B901 movw R22,R18
01F8 402F mov R20,R16
01FA .dbline -1
01FA .dbline 120
01FA ; WDR();
01FA ; if(Time.Bz)
01FA ; Time1Task();
01FA ; if(DealTxUartBz) //处理发送缓冲区
01FA ; DealTx();
01FA ; if(DealRxUartBz) //处理串口接收缓冲区
01FA ; DealRxBuf(UART_RXHEAD);
01FA ;
01FA ; }
01FA ; }
01FA .dbline 121
01FA ; /* #endif */
01FA AA24 clr R10
01FC .dbline 123
01FC ; /* #endif */
01FC ; /* #endif */
01FC 4395 inc R20
01FE .dbline 125
01FE ; /* #endif */
01FE ; /* #endif */
01FE 81E4 ldi R24,65
0200 FB01 movw R30,R22
0202 8193 st Z+,R24
0204 .dbline 126
0204 ; /* #endif */
0204 84E5 ldi R24,84
0206 8193 st Z+,R24
0208 .dbline 127
0208 ; /* #endif */
0208 84E4 ldi R24,68
020A 8193 st Z+,R24
020C BF01 movw R22,R30
020E 0EC0 rjmp L66
0210 L65:
0210 .dbline 129
0210 ; /* #endif */
0210 ; /* #endif */
0210 .dbline 130
0210 ; /* #endif */
0210 8A2D mov R24,R10
0212 8E31 cpi R24,30
0214 50F4 brsh L68
0216 .dbline 131
0216 ; /* #endif */
0216 80E0 ldi R24,<_Uart
0218 90E0 ldi R25,>_Uart
021A E42F mov R30,R20
021C FF27 clr R31
021E E80F add R30,R24
0220 F91F adc R31,R25
0222 2080 ldd R2,z+0
0224 FB01 movw R30,R22
0226 2192 st Z+,R2
0228 BF01 movw R22,R30
022A L68:
022A .dbline 132
022A 4395 inc R20
022C .dbline 133
022C L66:
022C .dbline 128
022C 80E0 ldi R24,<_Uart
022E 90E0 ldi R25,>_Uart
0230 E42F mov R30,R20
0232 FF27 clr R31
0234 E80F add R30,R24
0236 F91F adc R31,R25
0238 2080 ldd R2,z+0
023A 3324 clr R3
023C 822D mov R24,R2
023E 8232 cpi R24,34
0240 11F0 breq L70
0242 8A32 cpi R24,42
0244 29F7 brne L65
0246 L70:
0246 .dbline 134
0246 ; /* #endif */
0246 ; /* #endif */
0246 ; /* #endif */
0246 8BE3 ldi R24,59
0248 FB01 movw R30,R22
024A 8193 st Z+,R24
024C BF01 movw R22,R30
024E .dbline 135
024E ; /* #endif */
024E 2224 clr R2
0250 2082 std z+0,R2
0252 .dbline 137
0252 ; /* #endif */
0252 ; /* #endif */
0252 80E0 ldi R24,<_Uart
0254 90E0 ldi R25,>_Uart
0256 E42F mov R30,R20
0258 FF27 clr R31
025A E80F add R30,R24
025C F91F adc R31,R25
025E 8081 ldd R24,z+0
0260 8A32 cpi R24,42
0262 69F4 brne L71
0264 .dbline 138
0264 ; /* #endif */
0264 .dbline 139
0264 ; /* #endif */
0264 4395 inc R20
0266 .dbline 140
0266 ; /* #endif */
0266 80E0 ldi R24,<_Uart
0268 90E0 ldi R25,>_Uart
026A 042F mov R16,R20
026C 1127 clr R17
026E 080F add R16,R24
0270 191F adc R17,R25
0272 9FDF rcall _ReadTime
0274 10930500 sts _Time+1+1,R17
0278 00930400 sts _Time+1,R16
027C .dbline 141
027C ; /* #endif */
027C 06C0 rjmp L72
027E L71:
027E .dbline 143
027E .dbline 144
027E 2224 clr R2
0280 3324 clr R3
0282 30920500 sts _Time+1+1,R3
0286 20920400 sts _Time+1,R2
028A .dbline 145
028A L72:
028A .dbline -2
028A L64:
028A 00D0 rcall pop_gset3
028C .dbline 0 ; func end
028C 0895 ret
028E .dbsym r i 10 c
028E .dbsym r p 22 pc
028E .dbsym r count 20 c
028E .dbend
.area vector(rom, abs)
.org 22
0016 47C1 rjmp _UART_RX_interrupt
.area text(rom, con, rel)
028E .dbfile D:\MEGA8\西门子3508\3508呼死你/uartnews.h
028E .dbfunc e UART_RX_interrupt _UART_RX_interrupt fV
028E ; hz1 -> R16
028E ; data -> R18
.even
028E _UART_RX_interrupt::
028E 2A92 st -y,R2
0290 0A93 st -y,R16
0292 2A93 st -y,R18
0294 8A93 st -y,R24
0296 9A93 st -y,R25
0298 EA93 st -y,R30
029A FA93 st -y,R31
029C 2FB6 in R2,0x3f
029E 2A92 st -y,R2
02A0 .dbline -1
02A0 .dbline 156
02A0 ; 碕
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -