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

📄 lab6.lst

📁 pic单片机资料
💻 LST
📖 第 1 页 / 共 3 页
字号:
0013   0586               M         andwf   PORTB,F
0014   01B0           00025                 clrf    LEDCtr          ; Initialze Task Couters to 0
0015   01B1           00026                 clrf    PiezoCtr                ;  " (both LED and Piezo)
                      00027                 LEDEnable   H'FC'               ; MACRO to setup I/O port to drive LEDs RB1 and RB0
0016   1683 1303          M         BANKSEL TRISB
0018   30FC               M         movlw   H'FC'
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0019   0086               M         movwf   TRISB
001A   1283 1303          M         BANKSEL PORTB
                      00028                 PiezoEnable D'500'              ; 500 Hz Beep when PiezoOn is used
001C   1683 1303          M         BANKSEL TRISC
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
MPASM  5.02                          LAB6.ASM   4-13-2006  17:15:28         PAGE  5


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

001E   1107               M         bcf             TRISC,2
001F   307C               M         movlw   ((DEVICE_FREQ_HZ/D'64')/D'500')-1
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0020   0092               M         movwf   PR2
0021   303E               M         movlw   ((DEVICE_FREQ_HZ/D'128')/D'500')
0022   1283 1303          M         BANKSEL CCPR1L
0024   0095               M         movwf   CCPR1L
0025   3006               M         movlw   0x06            ; Turn on TMR2 (for PWM) 
0026   0092               M         movwf   T2CON           ; and /16 prescale
0027   2050           00029                 call    DoReloadTimer   ; Preload the timer for appropriate time delay
0028   1683 1303      00030                 BANKSEL OPTION_REG      ; set banking to access OPTION_REG in bank 1
002A   30C7           00031                 movlw   B'11000111'     ; Set up TMR0 for 256 prescale and 
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
002B   0081           00032                 movwf   OPTION_REG      ;  internal clock mode
002C   1283 1303      00033                 BANKSEL PORTB           ; Return to accessing BANK 0
                      00034 
002E   30A0           00035                 movlw   B'10100000'     ; Turn on GIE and TMR0 中断
002F   008B           00036                 movwf   INTCON          ;  "
                      00037 
0030                  00038 LEDTest
0030   3008           00039                 movlw   D'8'            ; Test LED1 Counter Value for overflow
0031   0230           00040                 subwf   LEDCtr,W                ;  by subtracting 8 from it.  Leave result in W
0032   1D03           00041                 btfss   STATUS,Z                ; Test for 0 to determine if equal
0033   2835           00042                 goto    NotEqual1               ; If counter is not 8, test if LED should be on or off
0034   01B0           00043                 clrf    LEDCtr          ; If counter is 8, it is reset to 0
0035                  00044 NotEqual1
0035   3003           00045                 movlw   D'3'            ; Test LED counter against "On" time
0036   0230           00046                 subwf   LEDCtr,W                ;  by subtracting 3 from it.  Leave result in W
0037   1803           00047                 btfsc   STATUS,C                ; Test for negative value to determine if less than 3
0038   283C           00048                 goto    TurnOffLED      ; if 3 or more, goto LEDOff Code
0039                  00049 TurnOnLED
                      00050                 LEDOn   0               ; else, Turn on LED 0 since counter is less than 3 
0039   3001               M         movlw   1 << 0
003A   0486               M         iorwf   PORTB,F
003B   283E           00051                 goto    PiezoTest               ; LED Testing done, goto PiezoTest
003C                  00052 TurnOffLED
                      00053                 LEDOff  0               ; Turn off LED since counter is 3 or more (up to 7)
003C   30FE               M         movlw   H'FF' - ((1 << 0)         & H'00FF')
003D   0586               M         andwf   PORTB,F
                      00054                                         ; LED Testing now done, so fall into PiezoTest
                      00055 
003E                  00056 PiezoTest
003E   301E           00057                 movlw   D'30'           ; Test Piezo Counter Value
003F   0231           00058                 subwf   PiezoCtr,W              ;  by subtracting 30 from it.  Leave result in W
0040   1D03           00059                 btfss   STATUS,Z                ; Test for 0 to determine if equal
0041   2843           00060                 goto    NotEqual2               ; If counter is not 30, test if LED should be on or off
0042   01B1           00061                 clrf    PiezoCtr                ; If counter is 30, it is reset to 0
0043                  00062 NotEqual2
0043   300A           00063                 movlw   D'10'           ; Test Piezo Counter against "On" time
0044   0231           00064                 subwf   PiezoCtr,W              ;  by subtracting 10 from it.  Leave result in W
0045   1803           00065                 btfsc   STATUS,C                ; Test for negative value to determine if less than 3
0046   284C           00066                 goto    TurnOffPiezo    ; if 10 or more, goto LEDOff Code
0047                  00067 TurnOnPiezo
MPASM  5.02                          LAB6.ASM   4-13-2006  17:15:28         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00068                 LEDOn   1               ; Turn on LED1
0047   3002               M         movlw   1 << 1
0048   0486               M         iorwf   PORTB,F
                      00069                 PiezoOn                 ; Turn on Piezo (by turning on CCP1)
0049   300C               M         movlw   H'0C'
004A   0097               M         movwf   CCP1CON
004B   2830           00070                 goto    LEDTest         ; manage tasks by returning to top of list
004C                  00071 TurnOffPiezo
                      00072                 LEDOff  1               ; Turn off LED1
004C   30FD               M         movlw   H'FF' - ((1 << 1)         & H'00FF')
004D   0586               M         andwf   PORTB,F
                      00073                 PiezoOff                        ; Turn off Piezo (by turning off CCP1)
004E   0197               M         clrf    CCP1CON
004F   2830           00074                 goto    LEDTest         ; manage tasks by returning to top of list
                      00075 
                      00076 ; Subroutine to reload TMR0
0050                  00077 DoReloadTimer
0050   303D           00078                 movlw   D'256' - D'195' ; Preload Timer to 
0051   0081           00079                 movwf   TMR0            ; count 195 times before roll-over
0052   0008           00080                 return                  ; return from subroutine
                      00081                 END
MPASM  5.02                          LAB6.ASM   4-13-2006  17:15:28         PAGE  7


SYMBOL TABLE
  LABEL                             VALUE 

ACKDT                             00000005
ACKEN                             00000004
ACKSTAT                           00000006
ADCON0                            0000001F
ADCON1                            0000009F
ADCS0                             00000006
ADCS1                             00000007
ADCS2                             00000006
ADDEN                             00000003
ADFM                              00000007
ADIE                              00000006
ADIF                              00000006
ADON                              00000000
ADRESH                            0000001E
ADRESL                            0000009E
BCLIE                             00000003
BCLIF                             00000003
BF                                00000000
BRGH                              00000002
C                                 00000000
C1INV                             00000004
C1OUT                             00000006
C2INV                             00000005
C2OUT                             00000007
CCP1CON                           00000017
CCP1IE                            00000002
CCP1IF                            00000002
CCP1M0                            00000000
CCP1M1                            00000001
CCP1M2                            00000002
CCP1M3                            00000003
CCP1X                             00000005
CCP1Y                             00000004
CCP2CON                           0000001D
CCP2IE                            00000000
CCP2IF                            00000000
CCP2M0                            00000000
CCP2M1                            00000001
CCP2M2                            00000002
CCP2M3                            00000003
CCP2X                             00000005
CCP2Y                             00000004
CCPR1H                            00000016
CCPR1L                            00000015
CCPR2H                            0000001C
CCPR2L                            0000001B
CHS0                              00000003
CHS1                              00000004
CHS2                              00000005
CIS                               00000003
CKE                               00000006
CKP                               00000004
CM0                               00000000
MPASM  5.02                          LAB6.ASM   4-13-2006  17:15:28         PAGE  8


SYMBOL TABLE
  LABEL                             VALUE 

CM1                               00000001
CM2                               00000002
CMCON                             0000009C
CMIE                              00000006
CMIF                              00000006
CREN                              00000004
CSRC                              00000007
CVR0                              00000000
CVR1                              00000001
CVR2                              00000002
CVR3                              00000003
CVRCON                            0000009D
CVREN                             00000007
CVROE                             00000006
CVRR                              00000005
D                                 00000005
DATA_ADDRESS                      00000005
DC                                00000001
DEVICE_FREQ_HZ                    D'4000000'
D_A                               00000005
Dly0                              00000020
Dly1                              00000021
Dly2                              00000022
Dly3                              00000023
Dly32                             
DoDly32                           00000401
DoReloadTimer                     00000050
EEADR                             0000010D
EEADRH                            0000010F
EECON1                            0000018C
EECON2                            0000018D
EEDATA                            0000010C
EEDATH                            0000010E
EEIE                              00000004
EEIF                              00000004
EEPGD                             00000007
F                                 00000001
FERR                              00000002
FSR                               00000004
GCEN                              00000007
GIE                               00000007
GO                                00000002
GO_DONE                           00000002
I2C_DATA                          00000005
I2C_READ                          00000002
I2C_START                         00000003
I2C_STOP                          00000004
IBF                               00000007
IBOV                              00000005
INDF                              00000000
INTCON                            0000000B
INTE                              00000004
INTEDG                            00000006
MPASM  5.02                          LAB6.ASM   4-13-2006  17:15:28         PAGE  9


SYMBOL TABLE
  LABEL                             VALUE 

INTF                              00000001
IRP                               00000007

⌨️ 快捷键说明

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