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

📄 qei_sim.lst

📁 C30系列控制器
💻 LST
📖 第 1 页 / 共 3 页
字号:
                      00174 ; isr code can go here or be located as a call subroutine elsewhere
                      00175 
0049                  00176 Exit_ISRR
0049   00B3           00177                 movwf   Step_Var
004A   100C           00178                 bcf             PIR1,TMR1IF
004B   0821           00179                 movf    status_temp,w     ; retrieve copy of STATUS register
004C   0083           00180                 movwf   STATUS            ; restore pre-isr STATUS register contents
004D   0EA0           00181                 swapf   w_temp,f
004E   0E20           00182                 swapf   w_temp,w          ; restore pre-isr W register contents
004F   0009           00183                 retfie                    ; return from interrupt
                      00184 
                      00185 
                      00186 ; these first 4 instructions are not required if the internal oscillator is not used
0050                  00187 main
0050   23FF           00188                 call    0x3FF             ; retrieve factory calibration value
0051   1683           00189                 bsf     STATUS,RP0        ; set file register bank to 1 
0052   0090           00190                 movwf   OSCCAL            ; update register with factory cal value 
0053   1283           00191                 bcf     STATUS,RP0        ; set file register bank to 0
                      00192                 
0054   1283           00193                 BANKSEL CMCON
0055   3007           00194                 movlw   B'00000111'                     ; Disable Comparator module 
0056   0099           00195                 movwf   CMCON
0057   1205           00196                 bcf             LED
                      00197 
0058   1683           00198                 BANKSEL ANSEL
0059   3011           00199                 movlw   B'00010001'                     ; TAD = FOSC/8 , Only AN0 is analog input
005A   009F           00200                 movwf   ANSEL
005B   1205           00201                 bcf             TRISIO,4                        ; GPIO4 = LED output 
005C   1585           00202                 bsf             TRISIO,3                        ; GPIO3 = MCLR
005D   1085           00203                 bcf             TRISIO,1                        ; OUTA
005E   1105           00204                 bcf             TRISIO,2                        ; OUTB
005F   1285           00205                 bcf             TRISIO,5                        ; INDEX
                      00206 
MPASM  4.01 Released                              QEI_SIM.ASM   6-10-2005  16:21:14         PAGE  5


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

0060   140C           00207                 bsf             PIE1,TMR1IE
                      00208 
0061   1283           00209                 BANKSEL ADCON0
0062   141F           00210                 bsf             ADCON0,ADON
0063   139F           00211                 bcf             ADCON0,ADFM
0064   131F           00212                 bcf             ADCON0,VCFG
                      00213 
0065   1285           00214                 bcf             INDEX
0066   1085           00215                 bcf             OUTA
0067   1105           00216                 bcf             OUTB
0068   01B9           00217                 clrf    Index_Location
                      00218 
0069   30C7           00219                 movlw   ((.65536-.57) % .256)
006A   008E           00220                 movwf   TMR1L
006B   00B4           00221                 movwf   Buf_TMR1L
006C   30FF           00222                 movlw   ((.65536-.57) / .256)
006D   008F           00223                 movwf   TMR1H
006E   00B5           00224                 movwf   Buf_TMR1H
006F   3001           00225                 movlw   B'00000001'
0070   0090           00226                 movwf   T1CON                           ; Turn Timer ON & Prescaler = 1:1
                      00227 
                      00228 ; remaining code goes here
                      00229   
0071   1283           00230                 BANKSEL GPIO
                      00231 
0072   178B           00232                 bsf             INTCON,GIE
0073   170B           00233                 bsf             INTCON,PEIE
                      00234 
0074   01B3           00235                 clrf    Step_Var
                      00236 
0075                  00237 Null_Loop
0075   149F           00238                 bsf             ADCON0,GO
0076                  00239 Wait_ADC
0076   0000           00240                 nop
0077   189F           00241                 btfsc   ADCON0,GO
0078   2876           00242                 goto    Wait_ADC
0079   081E           00243                 movf    ADRESH,W
007A   1B9E           00244                 btfsc   ADRESH,7
007B   2896           00245                 goto    ADC_GT_0x80
                      00246 
007C                  00247 ADC_LT_0x80
007C   1832           00248                 btfsc   Flags,DIRECTION
007D   2882           00249                 goto    LT_DIR_DONE
007E   138B           00250                 bcf             INTCON,GIE
007F   01B3           00251                 clrf    Step_Var
0080   01B9           00252                 clrf    Index_Location
0081   178B           00253                 bsf             INTCON,GIE
0082                  00254 LT_DIR_DONE
0082   1432           00255                 bsf             Flags,DIRECTION
                      00256 
0083                  00257 Get_Base_TMR1LH
                      00258                                                                 
0083   00B7           00259                 movwf   Base_TMR1L                      ; ( Base_TMR1H : Base_TMR1L ) = ADRESH * 2 + RPM
MPASM  4.01 Released                              QEI_SIM.ASM   6-10-2005  16:21:14         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                            _3600
0084   01B8           00260                 clrf    Base_TMR1H
0085   1003           00261                 bcf             STATUS,C
0086   0D37           00262                 rlf             Base_TMR1L,W
0087   3E35           00263                 addlw   RPM_3600
0088   1803           00264                 btfsc   STATUS,C
0089   0AB8           00265                 incf    Base_TMR1H,F
008A   00B7           00266                 movwf   Base_TMR1L
                      00267 
008B   30FF           00268                 movlw   0xff                            ; 0xffff - ( Base_TMR1H : Base_TMR1L )
008C   00B6           00269                 movwf   TempVar
008D   0837           00270                 movf    Base_TMR1L,W
008E   0236           00271                 subwf   TempVar,W
008F   00B4           00272                 movwf   Buf_TMR1L
0090   30FF           00273                 movlw   0xff
0091   00B6           00274                 movwf   TempVar
0092   0838           00275                 movf    Base_TMR1H,W
0093   0236           00276                 subwf   TempVar,W       
0094   00B5           00277                 movwf   Buf_TMR1H
                      00278                 
0095   2875           00279                 goto    Null_Loop
                      00280 
0096                  00281 ADC_GT_0x80                                                     ; W = 0x80 to 0xff
                      00282 
0096   3AFF           00283                 xorlw   0xff                            ; Complement W register ........................
                            ....
0097   1C32           00284                 btfss   Flags,DIRECTION
0098   289D           00285                 goto    GT_DIR_DONE
0099   138B           00286                 bcf             INTCON,GIE
009A   01B3           00287                 clrf    Step_Var
009B   01B9           00288                 clrf    Index_Location
009C   178B           00289                 bsf             INTCON,GIE
009D                  00290 GT_DIR_DONE
009D   1032           00291                 bcf             Flags,DIRECTION
                      00292 
009E   2883           00293                 goto    Get_Base_TMR1LH
                      00294 
009F                  00295 Delay
009F   081E           00296                 movf    ADRESH,W
00A0   00B0           00297                 movwf   DelayVar1
00A1   1903           00298                 btfsc   STATUS,Z
00A2   0AB0           00299                 incf    DelayVar1,F
00A3                  00300 D_Loop1
00A3   01B1           00301                 clrf    DelayVar2
00A4                  00302 D_Loop2
00A4   0000           00303                 nop
00A5   0BB1           00304                 decfsz  DelayVar2,F
00A6   28A4           00305                 goto    D_Loop2
00A7   0BB0           00306                 decfsz  DelayVar1,F
00A8   28A3           00307                 goto    D_Loop1
00A9   0008           00308                 return
                      00309 ; initialize eeprom locations
                      00310 
MPASM  4.01 Released                              QEI_SIM.ASM   6-10-2005  16:21:14         PAGE  7


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

2100                  00311                 ORG     0x2100
2100   0000 0001 0002 00312                 DE      0x00, 0x01, 0x02, 0x03
       0003 
                      00313 
                      00314 
                      00315                 END                       ; directive 'end of program'
MPASM  4.01 Released                              QEI_SIM.ASM   6-10-2005  16:21:14         PAGE  8


SYMBOL TABLE
  LABEL                             VALUE 

ADCON0                            0000001F
ADCS0                             00000004
ADCS1                             00000005
ADCS2                             00000006
ADC_GT_0x80                       00000096
ADC_LT_0x80                       0000007C
ADFM                              00000007
ADIE                              00000006
ADIF                              00000006
ADON                              00000000
ADRESH                            0000001E
ADRESL                            0000009E
ANS0                              00000000
ANS1                              00000001
ANS2                              00000002
ANS3                              00000003
ANSEL                             0000009F
Base_TMR1H                        00000038
Base_TMR1L                        00000037
Buf_TMR1H                         00000035
Buf_TMR1L                         00000034
C                                 00000000
CAL0                              00000002
CAL1                              00000003
CAL2                              00000004
CAL3                              00000005
CAL4                              00000006
CAL5                              00000007
CHS0                              00000002
CHS1                              00000003
CINV                              00000004
CIS                               00000003
CM0                               00000000
CM1                               00000001

⌨️ 快捷键说明

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