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

📄 main.lis

📁 一款挂面机的自动化控制源程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 001B 0A                .byte 10
                        .area data(ram, con, rel)
 001C                   .dbfile D:\gmj_1\main.c
 001C                   .dbsym e max_ganshu _max_ganshu c
 001C           _caoshu::
 001C                   .blkb 1
                        .area idata
 001C 00                .byte 0
                        .area data(ram, con, rel)
 001D                   .dbfile D:\gmj_1\main.c
 001D                   .dbsym e caoshu _caoshu c
 001D           _menu_jb::
 001D                   .blkb 1
                        .area idata
 001D 00                .byte 0
                        .area data(ram, con, rel)
 001E                   .dbfile D:\gmj_1\main.c
 001E                   .dbsym e menu_jb _menu_jb c
 001E           _menu_gn::
 001E                   .blkb 1
                        .area idata
 001E 00                .byte 0
                        .area data(ram, con, rel)
 001F                   .dbfile D:\gmj_1\main.c
 001F                   .dbsym e menu_gn _menu_gn c
 001F           _string2::
 001F                   .blkb 9
                        .area idata
 001F 202020205041535300        .byte 32,32,32,32,'P,'A,'S,'S,0
                        .area data(ram, con, rel)
 0028                   .dbfile D:\gmj_1\main.c
 0028                   .dbsym e string2 _string2 A[9:9]c
 0028           _cs_num::
 0028                   .blkb 1
                        .area idata
 0028 00                .byte 0
                        .area data(ram, con, rel)
 0029                   .dbfile D:\gmj_1\main.c
 0029                   .dbsym e cs_num _cs_num c
                        .area text(rom, con, rel)
 0436                   .dbfile D:\gmj_1\main.c
 0436                   .dbfunc e port_init _port_init fV
                        .even
 0436           _port_init::
 0436                   .dbline -1
 0436                   .dbline 122
 0436                   .dbline 123
 0436 2224              clr R2
 0438 2BBA              out 0x1b,R2
 043A                   .dbline 124
 043A 2ABA              out 0x1a,R2
 043C                   .dbline 125
 043C 80EF              ldi R24,240
 043E 88BB              out 0x18,R24
 0440                   .dbline 126
 0440 87BB              out 0x17,R24
 0442                   .dbline 127
 0442 25BA              out 0x15,R2
 0444                   .dbline 128
 0444 80EC              ldi R24,192
 0446 84BB              out 0x14,R24
 0448                   .dbline 129
 0448 22BA              out 0x12,R2
 044A                   .dbline 130
 044A 21BA              out 0x11,R2
 044C                   .dbline -2
 044C           L132:
 044C                   .dbline 0 ; func end
 044C 0895              ret
 044E                   .dbend
 044E                   .dbfunc e read_adc _read_adc fi
 044E           ;         adc_jg -> R20,R21
 044E           ;          adc_L -> R20
 044E           ;          adc_H -> R22
                        .even
 044E           _read_adc::
 044E 0E940000          xcall push_gset2
 0452                   .dbline -1
 0452                   .dbline 134
 0452                   .dbline 137
 0452 44B1              in R20,0x4
 0454                   .dbline 138
 0454 65B1              in R22,0x5
 0456                   .dbline 139
 0456 262F              mov R18,R22
 0458 3327              clr R19
 045A 00E0              ldi R16,256
 045C 11E0              ldi R17,1
 045E 0E940000          xcall empy16s
 0462 1801              movw R2,R16
 0464 442E              mov R4,R20
 0466 5524              clr R5
 0468 240C              add R2,R4
 046A 351C              adc R3,R5
 046C A101              movw R20,R2
 046E                   .dbline 140
 046E 8101              movw R16,R2
 0470                   .dbline -2
 0470           L133:
 0470 0E940000          xcall pop_gset2
 0474                   .dbline 0 ; func end
 0474 0895              ret
 0476                   .dbsym r adc_jg 20 i
 0476                   .dbsym r adc_L 20 c
 0476                   .dbsym r adc_H 22 c
 0476                   .dbend
 0476                   .dbfunc e timer0_init _timer0_init fV
                        .even
 0476           _timer0_init::
 0476                   .dbline -1
 0476                   .dbline 147
 0476                   .dbline 148
 0476 2224              clr R2
 0478 23BE              out 0x33,R2
 047A                   .dbline 149
 047A 22BE              out 0x32,R2
 047C                   .dbline 150
 047C 2CBE              out 0x3c,R2
 047E                   .dbline 151
 047E 82E0              ldi R24,2
 0480 83BF              out 0x33,R24
 0482                   .dbline -2
 0482           L134:
 0482                   .dbline 0 ; func end
 0482 0895              ret
 0484                   .dbend
                        .area vector(rom, abs)
                        .org 36
 0024 0C944202          jmp _timer0_ovf_isr
                        .area text(rom, con, rel)
 0484                   .dbfile D:\gmj_1\main.c
 0484                   .dbfunc e timer0_ovf_isr _timer0_ovf_isr fV
 0484           ;              i -> R16
                        .even
 0484           _timer0_ovf_isr::
 0484 2A92              st -y,R2
 0486 3A92              st -y,R3
 0488 0A93              st -y,R16
 048A 8A93              st -y,R24
 048C 2FB6              in R2,0x3f
 048E 2A92              st -y,R2
 0490                   .dbline -1
 0490                   .dbline 156
 0490                   .dbline 158
 0490 80910C00          lds R24,_on_scr
 0494 8130              cpi R24,1
 0496 71F4              brne L136
 0498                   .dbline 159
 0498                   .dbline 160
 0498 2224              clr R2
 049A 23BE              out 0x33,R2
 049C                   .dbline 161
 049C AE9A              sbi 0x15,6
 049E                   .dbline 162
 049E 0027              clr R16
 04A0 01C0              xjmp L141
 04A2           L138:
 04A2                   .dbline 162
 04A2           L139:
 04A2                   .dbline 162
 04A2 0395              inc R16
 04A4           L141:
 04A4                   .dbline 162
 04A4 0431              cpi R16,20
 04A6 E8F3              brlo L138
 04A8                   .dbline 163
 04A8 85B3              in R24,0x15
 04AA 8F7B              andi R24,191
 04AC 85BB              out 0x15,R24
 04AE                   .dbline 164
 04AE 2224              clr R2
 04B0 20920C00          sts _on_scr,R2
 04B4                   .dbline 165
 04B4           L136:
 04B4                   .dbline 166
 04B4 2224              clr R2
 04B6 30903400          lds R3,_time0_chi
 04BA 2314              cp R2,R3
 04BC 40F4              brsh L142
 04BE                   .dbline 167
 04BE                   .dbline 168
 04BE 22BE              out 0x32,R2
 04C0                   .dbline 169
 04C0 82E0              ldi R24,2
 04C2 83BF              out 0x33,R24
 04C4                   .dbline 170
 04C4 832D              mov R24,R3
 04C6 8150              subi R24,1
 04C8 80933400          sts _time0_chi,R24
 04CC                   .dbline 171
 04CC 13C0              xjmp L143
 04CE           L142:
 04CE                   .dbline 173
 04CE                   .dbline 174
 04CE 2224              clr R2
 04D0 30903200          lds R3,_time0_fen
 04D4 2314              cp R2,R3
 04D6 30F4              brsh L144
 04D8                   .dbline 175
 04D8                   .dbline 176
 04D8 32BE              out 0x32,R3
 04DA                   .dbline 177
 04DA 82E0              ldi R24,2
 04DC 83BF              out 0x33,R24
 04DE                   .dbline 178
 04DE 20923200          sts _time0_fen,R2
 04E2                   .dbline 179
 04E2 08C0              xjmp L145
 04E4           L144:
 04E4                   .dbline 181
 04E4                   .dbline 182
 04E4 20903300          lds R2,_time0_yu
 04E8 22BE              out 0x32,R2
 04EA                   .dbline 183
 04EA 82E0              ldi R24,2
 04EC 83BF              out 0x33,R24
 04EE                   .dbline 184
 04EE 81E0              ldi R24,1
 04F0 80930C00          sts _on_scr,R24
 04F4                   .dbline 185
 04F4           L145:
 04F4                   .dbline 186
 04F4           L143:
 04F4                   .dbline -2
 04F4           L135:
 04F4 2990              ld R2,y+
 04F6 2FBE              out 0x3f,R2
 04F8 8991              ld R24,y+
 04FA 0991              ld R16,y+
 04FC 3990              ld R3,y+
 04FE 2990              ld R2,y+
 0500                   .dbline 0 ; func end
 0500 1895              reti
 0502                   .dbsym r i 16 c
 0502                   .dbend
 0502                   .dbfunc e timer1_init _timer1_init fV
                        .even
 0502           _timer1_init::
 0502                   .dbline -1
 0502                   .dbline 195
 0502                   .dbline 196
 0502 2224              clr R2
 0504 2EBC              out 0x2e,R2
 0506                   .dbline 197
 0506 2DBC              out 0x2d,R2
 0508                   .dbline 198
 0508 2CBC              out 0x2c,R2
 050A                   .dbline 199
 050A 2BBC              out 0x2b,R2
 050C                   .dbline 200
 050C 2ABC              out 0x2a,R2
 050E                   .dbline 201
 050E 29BC              out 0x29,R2
 0510                   .dbline 202
 0510           ;  OCR1BL = 0x00 /*INVALID SETTING*/;
 0510 28BC              out 0x28,R2
 0512                   .dbline 205
 0512           ;  //OCR1CH = $OCR1CH$;
 0512           ;  //OCR1CL = $OCR1CL$;
 0512           ;  ICR1H  = 0x00 /*INVALID SETTING*/;
 0512 27BC              out 0x27,R2
 0514                   .dbline 206
 0514           ;  ICR1L  = 0x00 /*INVALID SETTING*/;
 0514 26BC              out 0x26,R2
 0516                   .dbline 207
 0516           ;  TCCR1A = 0x00;
 0516 2FBC              out 0x2f,R2
 0518                   .dbline 208
 0518           ;  TCCR1B = 0x02; //start Timer
 0518 82E0              ldi R24,2
 051A 8EBD              out 0x2e,R24
 051C                   .dbline -2
 051C           L146:
 051C                   .dbline 0 ; func end
 051C 0895              ret
 051E                   .dbend
                        .area vector(rom, abs)
                        .org 32
 0020 0C948F02          jmp _timer1_ovf_isr
                        .area text(rom, con, rel)
 051E                   .dbfile D:\gmj_1\main.c
 051E                   .dbfunc e timer1_ovf_isr _timer1_ovf_isr fV
 051E           ;      avg_speed -> R12,R13
 051E           ;      time1_jsq -> R10,R11
 051E           ;              i -> R12
                        .even
 051E           _timer1_ovf_isr::
 051E 0A92              st -y,R0
 0520 1A92              st -y,R1
 0522 2A92              st -y,R2
 0524 3A92              st -y,R3
 0526 4A92              st -y,R4
 0528 5A92              st -y,R5
 052A 6A92              st -y,R6
 052C 7A92              st -y,R7
 052E 8A92              st -y,R8
 0530 9A92              st -y,R9
 0532 0A93              st -y,R16
 0534 1A93              st -y,R17
 0536 2A93              st -y,R18
 0538 3A93              st -y,R19
 053A 8A93              st -y,R24
 053C 9A93              st -y,R25
 053E EA93              st -y,R30
 0540 FA93              st -y,R31
 0542 0FB6              in R0,0x3f
 0544 0A92              st -y,R0
 0546 0E940000          xcall push_gset5
 054A 2497              sbiw R28,4
 054C                   .dbline -1
 054C                   .dbline 213
 054C           ; }
 054C           ; 
 054C           ; #pragma interrupt_handler timer1_ovf_isr:9
 054C           ; void timer1_ovf_isr(void)  //步进电机控制
 054C           ; {
 054C                   .dbline 217
 054C           ;  unsigned char i;  //循环变量
 054C           ;  unsigned int time1_jsq;   //time1的时间值
 054C           ;  unsigned int avg_speed;   //平均速度
 054C           ;  if (M_state==0)   //停止状态
 054C 20900000          lds R2,_M_state
 0550 2220              tst R2
 0552 09F4              brne L148
 0554                   .dbline 218
 0554           ;     {
 0554                   .dbline 219
 0554           ;       return;
 0554 2FC2              xjmp L147
 0556           L148:
 0556                   .dbline 222
 0556           ;       }
 0556           ;  //TIMER1 has overflowed
 0556           ; TCNT1 = tmp_t1;   //计数器赋初值
 0556 20900300          lds R2,_tmp_t1
 055A 30900400          lds R3,_tmp_t1+1
 055E 3DBC              out 0x2d,R3
 0560 2CBC              out 0x2c,R2
 0562                   .dbline 223
 0562           ; PORTC |=0b10000000;      //给出步进电机驱动脉冲
 0562 AF9A              sbi 0x15,7
 0564                   .dbline 224
 0564 CC24              clr R12
 0566 01C0              xjmp L153
 0568           L150:
 0568                   .dbline 224
 0568           L151:
 0568           

⌨️ 快捷键说明

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