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

📄 p16lcd.lst

📁 详细介绍了PIC16单片机的功能特点以及各个功能模块的使用方法和技巧
💻 LST
📖 第 1 页 / 共 3 页
字号:
0071   1188           00227         bcf     LCD_D7  
0072   1B80           00228         btfsc   temp_wr, 7
0073   1588           00229         bsf     LCD_D7
0074   1F00           00230         btfss   temp_wr, 6
0075   1108           00231         bcf     LCD_D6  
0076   1B00           00232         btfsc   temp_wr, 6
0077   1508           00233         bsf     LCD_D6
0078   1E80           00234         btfss   temp_wr, 5
0079   1088           00235         bcf     LCD_D5  
007A   1A80           00236         btfsc   temp_wr, 5
007B   1488           00237         bsf     LCD_D5
007C   1E00           00238         btfss   temp_wr, 4
007D   1008           00239         bcf     LCD_D4
007E   1A00           00240         btfsc   temp_wr, 4
007F   1408           00241         bsf     LCD_D4  
                      00242 
0080   0000           00243         NOP
0081   0000           00244         NOP
                      00245 
0082   1085           00246         bcf     LCD_E                   ; Send the data
                      00247 
0083   0008           00248         return
                      00249 ; *******************************************************************
                      00250 
                      00251 
                      00252 
                      00253 
MPASM  4.01 Released                               P16LCD.ASM   5-27-2005  10:17:24         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00254 
                      00255 ; *******************************************************************
0084                  00256 LCDWrite
                      00257 ;       call    LCDBusy
0084   2???           00258         call    LCDWriteNibble
0085   ???? ????      00259         BANKSEL temp_wr
0087   0E??           00260         swapf   temp_wr, f
0088   2???           00261         call    LCDWriteNibble
0089   ???? ????      00262         banksel temp_wr
008B   0E??           00263         swapf   temp_wr,f
                      00264 
008C   0008           00265         return
                      00266 
  0000                00267         GLOBAL  LCDWrite
                      00268 ; *******************************************************************
                      00269 
                      00270 
                      00271 
                      00272 
                      00273 
                      00274 ; *******************************************************************
                      00275 ;     _____    _____________________________________________________
                      00276 ; RS  _____>--<_____________________________________________________
                      00277 ;               ____________________________________________________
                      00278 ; RW  _________/
                      00279 ;                  ____________________      ____________________
                      00280 ; E   ____________/                    \____/                    \__
                      00281 ;     _________________                __________                ___
                      00282 ; DB  _________________>--------------<__________>--------------<___
                      00283 ;
008D                  00284 LCDRead
008D   1683 1303      00285         banksel TRISD
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
008F   1408           00286         bsf     LCD_D4_DIR              ; Set data bits to inputs
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0090   1488           00287         bsf     LCD_D5_DIR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0091   1508           00288         bsf     LCD_D6_DIR
Message[302]: Register in operand not in bank 0.  Ensure that bank bits are correct.
0092   1588           00289         bsf     LCD_D7_DIR              
                      00290 
0093   1283 1303      00291         BANKSEL PORTA
0095   1C03           00292         btfss   STATUS, C               ; Set the register select
0096   1185           00293         bcf     LCD_RS
0097   1803           00294         btfsc   STATUS, C       
0098   1585           00295         bsf     LCD_RS
                      00296 
0099   1505           00297         bsf     LCD_RW                  ;Read = 1
                      00298 
009A   0000           00299         NOP
009B   0000           00300         NOP                     
                      00301 
009C   1485           00302         bsf     LCD_E                   ; Setup to clock data
MPASM  4.01 Released                               P16LCD.ASM   5-27-2005  10:17:24         PAGE  7


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00303 
009D   0000           00304         NOP
009E   0000           00305         NOP
009F   0000           00306         NOP
00A0   0000           00307         NOP
                      00308 
00A1   1D88           00309         btfss   LCD_D7                  ; Get high nibble
00A2   1380           00310         bcf     temp_rd, 7
00A3   1988           00311         btfsc   LCD_D7
00A4   1780           00312         bsf     temp_rd, 7
00A5   1D08           00313         btfss   LCD_D6                  
00A6   1300           00314         bcf     temp_rd, 6
00A7   1908           00315         btfsc   LCD_D6
00A8   1700           00316         bsf     temp_rd, 6
00A9   1C88           00317         btfss   LCD_D5                  
00AA   1280           00318         bcf     temp_rd, 5
00AB   1888           00319         btfsc   LCD_D5
00AC   1680           00320         bsf     temp_rd, 5
00AD   1C08           00321         btfss   LCD_D4                  
00AE   1200           00322         bcf     temp_rd, 4
00AF   1808           00323         btfsc   LCD_D4
00B0   1600           00324         bsf     temp_rd, 4
                      00325 
00B1   1085           00326         bcf     LCD_E                   ; Finished reading the data
                      00327 
00B2   0000           00328         NOP
00B3   0000           00329         NOP
00B4   0000           00330         NOP
00B5   0000           00331         NOP
00B6   0000           00332         NOP
00B7   0000           00333         NOP
00B8   0000           00334         NOP
00B9   0000           00335         NOP
                      00336 
00BA   1485           00337         bsf     LCD_E                   ; Setup to clock data
                      00338 
00BB   0000           00339         NOP
00BC   0000           00340         NOP
                      00341 
00BD   1D88           00342         btfss   LCD_D7                  ; Get low nibble
00BE   1180           00343         bcf     temp_rd, 3
00BF   1988           00344         btfsc   LCD_D7
00C0   1580           00345         bsf     temp_rd, 3
00C1   1D08           00346         btfss   LCD_D6                  
00C2   1100           00347         bcf     temp_rd, 2
00C3   1908           00348         btfsc   LCD_D6
00C4   1500           00349         bsf     temp_rd, 2
00C5   1C88           00350         btfss   LCD_D5                  
00C6   1080           00351         bcf     temp_rd, 1
00C7   1888           00352         btfsc   LCD_D5
00C8   1480           00353         bsf     temp_rd, 1
00C9   1C08           00354         btfss   LCD_D4                  
00CA   1000           00355         bcf     temp_rd, 0
MPASM  4.01 Released                               P16LCD.ASM   5-27-2005  10:17:24         PAGE  8


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

00CB   1808           00356         btfsc   LCD_D4
00CC   1400           00357         bsf     temp_rd, 0
                      00358 
00CD   1085           00359         bcf     LCD_E                   ; Finished reading the data
                      00360 
00CE                  00361 FinRd
00CE   0008           00362         return
                      00363 ; *******************************************************************
                      00364 
                      00365 
                      00366 
                      00367 
                      00368 
                      00369 
                      00370 ; *******************************************************************
00CF                  00371 LCDBusy
                      00372                                         ; Check BF
                      00373         rlcd    LCD_INS
                          M  IF 0          == 1
                          M         bsf     STATUS, C
                          M         call    LCDRead
                          M  ELSE
00CF   1003               M         bcf     STATUS, C
00D0   2???               M         call    LCDRead
                          M  ENDIF
00D1   1B80           00374         btfsc   temp_rd, 7
00D2   2???           00375         goto    LCDBusy
00D3   0008           00376         return
                      00377 
  0000                00378         GLOBAL  LCDBusy
                      00379 ; *******************************************************************
                      00380 
                      00381 
                      00382 
                      00383 
                      00384 
                      00385 
                      00386 ; *******************************************************************
00D4                  00387 DelayXCycles
00D4   0B??           00388         decfsz  delay, F
00D5   2???           00389         goto    DelayXCycles
00D6   0008           00390         return
                      00391 ; *******************************************************************
                      00392         
                      00393 
                      00394         END
MPASM  4.01 Released                               P16LCD.ASM   5-27-2005  10:17:24         PAGE  9


SYMBOL TABLE
  LABEL                             VALUE 

ACKDT                             00000005
ACKEN                             00000004
ACKSTAT                           00000006
ADCON0                            0000001F
ADCON1                            0000009F
ADCS0                             00000006
ADCS1                             00000007
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
CM1                               00000001
MPASM  4.01 Released                               P16LCD.ASM   5-27-2005  10:17:24         PAGE 10


SYMBOL TABLE
  LABEL                             VALUE 

CM2                               00000002
CMCON                             0000009C
CMIE                              00000006
CMIF                              00000006
COUNTER                           00000020
CREN                              00000004

⌨️ 快捷键说明

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