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

📄 main.lst

📁 Source code for driver KS107 (LCD display with resolution 128x64 pixels). Files are in assembler and
💻 LST
📖 第 1 页 / 共 3 页
字号:
 NOPAGING

PC - 8051 ASSEMBLER, V1.1                 24.07.2005/09:40:41   PAGE   1


  LOC  OBJ          LINE          SOURCE STATEMENT

                     1    ; -------------------------------
                     2    ; -   Use: compiler Asm51 V1.1  -
                     3    ; -         linker  rl51        -
                     4    ; -------------------------------
                     5    PUBLIC M,ARRAY
                     6    PUBLIC RS,E,CS1,CS2,RESET
                     7    EXTRN NUMBER(DISP_ROW,DISP_COL)
                     8    EXTRN CODE(DISP_CLEAR,DISP_ON,DISP_OFF,DISP_INIT)
                     9    EXTRN CODE(DISP_ICON,DISP_TEXT,DISP_WRITE)
                    10    
                    11    $include (89c51cc1.INC)
                =   12+1  ;        REV.   2.0    19.10. 2003
  0081          =   13+1  SP       DATA   081H  ;Stack Pointer
  0082          =   14+1  DPL      DATA   082H  ;Data Pointer - Low Byte
  0083          =   15+1  DPH      DATA   083H  ;Data Pointer - High Byte
  0086          =   16+1  SPDR     DATA   086H  ;SPI Data register
  0087          =   17+1  PCON     DATA   087H  ;Power Control
  0088          =   18+1  TCON     DATA   088H  ;Timer Control
  0089          =   19+1  TMOD     DATA   089H  ;Timer Mode
  008A          =   20+1  TL0      DATA   08AH  ;Timer 0 - Low Byte
  008B          =   21+1  TL1      DATA   08BH  ;Timer 1 - Low Byte
  008C          =   22+1  TH0      DATA   08CH  ;Timer 0 - High Byte
  008D          =   23+1  TH1      DATA   08DH  ;Timer 1 - High
  008E          =   24+1  AUXR     DATA   08EH  ;Auxiliary Register 0
  008F          =   25+1  CKCON    DATA   08FH  ;Clock Control     
  0096          =   26+1  WMCON    DATA   096H  ;WatchDog & E2PROM Control
  0098          =   27+1  SCON     DATA   098H  ;Serial Port Control
  0099          =   28+1  SBUF     DATA   099H  ;Serial Port Buffer
  009B          =   29+1  CANGIT   DATA   09BH  ;CAN General Interrupt    
  009C          =   30+1  CANTEC   DATA   09CH  ;CAN Transmit Error Counter
  009D          =   31+1  CANREC   DATA   09DH  ;CAN Receive Error Counter
  00A1          =   32+1  CANTCON  DATA   0A1H  ;CAN Timer Control        
  00A2          =   33+1  AUXR1    DATA   0A2H  ;Auxiliary Register 1       
  00A2          =   34+1  DPS      DATA   0A2H  ;Auxiliary Register 1
  00A3          =   35+1  CANMSG   DATA   0A3H  ;CAN Message Data
  00A4          =   36+1  CANTTCL  DATA   0A4H  ;CAN Timer TTC low
  00A5          =   37+1  CANTTCH  DATA   0A5H  ;CAN Timer TTC high 
  00A6          =   38+1  WDTRST   DATA   0A6H  ;Watchdog Timer Reset     
  00A7          =   39+1  WDTPRG   DATA   0A7H  ;Watchdog Timer Program
  00A8          =   40+1  IEN0     DATA   0A8H  ;Interrupt Enable
  00A9          =   41+1  SADDR    DATA   0A9H  ;Slave Address
  00AA          =   42+1  CANGSTA  DATA   0AAH  ;CAN General Status
  00AB          =   43+1  CANGCON  DATA   0ABH  ;CAN General Control
  00AC          =   44+1  CANTIML  DATA   0ACH  ;CAN Timer low
  00AD          =   45+1  CANTIMH  DATA   0ADH  ;CAN Timer high
  00AE          =   46+1  CANSTML  DATA   0AEH  ;CAN Timer Stamp low
  00AF          =   47+1  CANSTMH  DATA   0AFH  ;CAN Timer Stamp high
  00B1          =   48+1  CANPAGE  DATA   0B1H  ;CAN Page 
  00B2          =   49+1  CANSTCH  DATA   0B2H  ;CAN Status Channel
  00B3          =   50+1  CANCONCH DATA   0B3H  ;CAN Control Channel
  00B4          =   51+1  CANBT1   DATA   0B4H  ;CAN Bit Timing 1                   
  00B5          =   52+1  CANBT2   DATA   0B5H  ;CAN Bit Timing 2 
  00B6          =   53+1  CANBT3   DATA   0B6H  ;CAN Bit Timing 3 
  00B7          =   54+1  IPH0     DATA   0B7H  ;Interrupt Priority Control High 0
  00B8          =   55+1  IP       DATA   0B8H  ;Interrupt Priority
  00B8          =   56+1  IPL0     DATA   0B8H  ;Interrupt Priority Control Low 0
  00B9          =   57+1  SADEN    DATA   0B9H  ;Slave Address Mask
  00BA          =   58+1  CANSIT1  DATA   0BAH  ;CAN Status Interrupt Channel byte 1
  00BB          =   59+1  CANSIT2  DATA   0BBH  ;CAN Status Interrupt Channel byte 2
  00BC          =   60+1  CANIDT1  DATA   0BCH  ;CAN Identifier Tag byte 1 (Part A and B)
  00BD          =   61+1  CANIDT2  DATA   0BDH  ;CAN Identifier Tag byte 2 (Part A and B)
  00BE          =   62+1  CANIDT3  DATA   0BEH  ;CAN Identifier Tag byte 3 (Part A and B)
  00BF          =   63+1  CANIDT4  DATA   0BFH  ;CAN Identifier Tag byte 4 (Part A and B)
  00C0          =   64+1  P4       DATA   0C0H  ;Port4
  00C1          =   65+1  CANGIE   DATA   0C1H  ;CAN General Interrupt Enable
  00C2          =   66+1  CANIE1   DATA   0C2H  ;CAN Interrupt Enable Channel byte 1      
  00C3          =   67+1  CANIE2   DATA   0C3H  ;CAN Interrupt Enable Channel byte 2
  00C4          =   68+1  CANIDM1  DATA   0C4H  ;CAN Identifier Mask byte 1 (Part A and B)
  00C5          =   69+1  CANIDM2  DATA   0C5H  ;CAN Identifier Mask byte 2 (Part A and B)
  00C6          =   70+1  CANIDM3  DATA   0C6H  ;CAN Identifier Mask byte 3 (Part A and B)
  00C7          =   71+1  CANIDM4  DATA   0C7H  ;CAN Identifier Mask byte 4 (Part A and B)
  00C8          =   72+1  T2CON    DATA   0C8H  ;Timer/Counter 2 Control Register
  00C9          =   73+1  T2MOD    DATA   0C9H  ;Timer 2 Mode
  00CA          =   74+1  RCAP2L   DATA   0CAH  ;Timer 2 Capture Register - Low Byte
  00CB          =   75+1  RCAP2H   DATA   0CBH  ;Timer 2 Capture Register - High Byte
  00CC          =   76+1  TL2      DATA   0CCH  ;Timer 2 - Low Byte
  00CD          =   77+1  TH2      DATA   0CDH  ;Timer 2 - High Byte
  00CE          =   78+1  CANEN1   DATA   0CEH  ;CAN Enable Channel byte 1
  00CF          =   79+1  CANEN2   DATA   0CFH  ;CAN Enable Channel byte 2
  00D0          =   80+1  PSW      DATA   0D0H  ;Program Status Word
  00D1          =   81+1  FCON     DATA   0D1H  ;Flash Control
  00D2          =   82+1  EECON    DATA   0D2H  ;EEPROM Control
  00D5          =   83+1  SPCR     DATA   0D5H  ;SPI Control Register
  00D8          =   84+1  CCON     DATA   0D8H  ;PCA Timer/Counter Control
  00D9          =   85+1  CMOD     DATA   0D9H  ;PCA Timer/Counter Mode
  00DA          =   86+1  CCAPM0   DATA   0DAH  ;PCA Timer/Counter Mode0
  00DB          =   87+1  CCAPM1   DATA   0DBH  ;PCA Timer/Counter Mode1
  00DC          =   88+1  CCAPM2   DATA   0DCH  ;PCA Timer/Counter Mode2
  00DD          =   89+1  CCAPM3   DATA   0DDH  ;PCA Timer/Counter Mode3
  00DE          =   90+1  CCAPM4   DATA   0DEH  ;PCA Timer/Counter Mode4
  00E0          =   91+1  ACC      DATA   0E0H  ;Accumulator
  00E8          =   92+1  IEN1     DATA   0E8H  ;Interrupt Enable Control 1
  00E9          =   93+1  CL       DATA   0E9H  ;PCA Timer/Counter Low byte
  00EA          =   94+1  CCAP0L   DATA   0EAH  ;PCA Compare Capture Module 0L
  00EB          =   95+1  CCAP1L   DATA   0EBH  ;PCA Compare Capture Module 1L
  00EC          =   96+1  CCAP2L   DATA   0ECH  ;PCA Compare Capture Module 2L
  00ED          =   97+1  CCAP3L   DATA   0EDH  ;PCA Compare Capture Module 3L
  00EE          =   98+1  CCAP4L   DATA   0EEH  ;PCA Compare Capture Module 4L
  00F0          =   99+1  B        DATA   0F0H  ;Multiplication Register
  00F2          =  100+1  ADCLK    DATA   0F2H  ;ADC Clock
  00F3          =  101+1  ADCON    DATA   0F3H  ;ADC Control
  00F4          =  102+1  ADDL     DATA   0F4H  ;ADC Data Low byte
  00F5          =  103+1  ADDH     DATA   0F5H  ;ADC Data High byte
  00F6          =  104+1  ADCF     DATA   0F6H  ;ADC Configuration
  00F7          =  105+1  IPH1     DATA   0F7H  ;Interrupt Priority Control High 1
  00F8          =  106+1  IPL1     DATA   0F8H  ;Interrupt Priority Control Low 1
  00F9          =  107+1  CH       DATA   0F9H  ;PCA Timer/Counter High byte
  00FA          =  108+1  CCAP0H   DATA   0FAH  ;PCA Compare Capture Module 0H
  00FB          =  109+1  CCAP1H   DATA   0FBH  ;PCA Compare Capture Module 1H
  00FC          =  110+1  CCAP2H   DATA   0FCH  ;PCA Compare Capture Module 2H
  00FD          =  111+1  CCAP3H   DATA   0FDH  ;PCA Compare Capture Module 3H
  00FE          =  112+1  CCAP4H   DATA   0FEH  ;PCA Compare Capture Module 4H
  0088          =  113+1  IT0      BIT    088H  ;TCON.0 - External Interrupt 0 Type
  0089          =  114+1  IE0      BIT    089H  ;TCON.1 - External Interrupt 0 Edge Flag
  008A          =  115+1  IT1      BIT    08AH  ;TCON.2 - External Interrupt 1 Type
  008B          =  116+1  IE1      BIT    08BH  ;TCON.3 - External Interrupt 1 Edge Flag
  008C          =  117+1  TR0      BIT    08CH  ;TCON.4 - Timer 0 On/Off Control
  008D          =  118+1  TF0      BIT    08DH  ;TCON.5 - Timer 0 Overflow Flag
  008E          =  119+1  TR1      BIT    08EH  ;TCON.6 - Timer 1 On/Off Control
  008F          =  120+1  TF1      BIT    08FH  ;TCON.7 - Timer 1 Overflow Flag
  0090          =  121+1  T2       BIT    090H  ;P1.0 - External Count Input to Timer 2
  0091          =  122+1  T2EX     BIT    091H  ;P1.1 - Timer 2 Capture/Reload Trigger
  0098          =  123+1  RI       BIT    098H  ;SCON.0 - Receive Interrupt Flag
  0099          =  124+1  TI       BIT    099H  ;SCON.1 - Transmit Interrupt Flag
  009A          =  125+1  RB8      BIT    09AH  ;SCON.2 - Receive Bit 8
  009B          =  126+1  TB8      BIT    09BH  ;SCON.3 - Transmit Bit 8
  009C          =  127+1  REN      BIT    09CH  ;SCON.4 - Receive Enable
  009D          =  128+1  SM2      BIT    09DH  ;SCON.5 - Serial Mode Control Bit 2
  009E          =  129+1  SM1      BIT    09EH  ;SCON.6 - Serial Mode Control Bit 1
  009F          =  130+1  SM0      BIT    09FH  ;SCON.7 - Serial Mode Control Bit 0
  00A8          =  131+1  EX0      BIT    0A8H  ;IE.0 - External Interrupt 0 Enable
  00A9          =  132+1  ET0      BIT    0A9H  ;IE.1 - Timer 0 Interrupt Enable
  00AA          =  133+1  EX1      BIT    0AAH  ;IE.2 - External Interrupt 1 Enable
  00AB          =  134+1  ET1      BIT    0ABH  ;IE.3 - Timer 1 Interrupt Enable
  00AC          =  135+1  ES       BIT    0ACH  ;IE.4 - Serial Port Interrupt Enable
  00AD          =  136+1  ET2      BIT    0ADH  ;IE.5 - Timer 2 Overflow Interrupt
  00AE          =  137+1  EC       BIT    0AEH  ;IE.6 - PCA Interrupt Enable               
  00AF          =  138+1  EA       BIT    0AFH  ;IE.7 - Global Interrupt Enable
  00B0          =  139+1  RXD      BIT    0B0H  ;P3.0 - Serial Port Receive Input
  00B1          =  140+1  TXD      BIT    0B1H  ;P3.1 - Serial Port Transmit Output
  00B2          =  141+1  INT0     BIT    0B2H  ;P3.2 - External Interrupt 0 Input
  00B3          =  142+1  INT1     BIT    0B3H  ;P3.3 - External Interrupt 1 Input
  00B4          =  143+1  T0       BIT    0B4H  ;P3.4 - Timer 0 Count Input
  00B5          =  144+1  T1       BIT    0B5H  ;P3.5 - Timer 1 Count Input
  00B6          =  145+1  WR       BIT    0B6H  ;P3.6 - Write Control for External Memory
  00B7          =  146+1  RD       BIT    0B7H  ;P3.7 - Read Control for External Memory
  00B8          =  147+1  PX0      BIT    0B8H  ;IP.0 - External Interrupt 0 Priority
  00B9          =  148+1  PT0      BIT    0B9H  ;IP.1 - Timer 0 Priority
  00BA          =  149+1  PX1      BIT    0BAH  ;IP.2 - External Interrupt 1 Priority
  00BB          =  150+1  PT1      BIT    0BBH  ;IP.3 - Timer 1 Priority
  00BC          =  151+1  PS       BIT    0BCH  ;IP.4 - Serial Port Priority
  00BD          =  152+1  PT2      BIT    0BDH  ;IP.5 - Timer 2
  00C8          =  153+1  CPRL2    BIT    0C8H  ;T2CON.0 - Capture/Reload Flag
  00C9          =  154+1  CT2      BIT    0C9H  ;T2CON.1 - Timer/Counter Select
  00CA          =  155+1  TR2      BIT    0CAH  ;T2CON.2 - Timer 2 Start/Stop Control
  00CB          =  156+1  EXEN2    BIT    0CBH  ;T2CON.3 - Timer 2 External Enable Flag
  00CC          =  157+1  TCLK     BIT    0CCH  ;T2CON.4 - Transmit Clock Flag
  00CD          =  158+1  RCLK     BIT    0CDH  ;T2CON.5 - Receive Clock Flag
  00CE          =  159+1  EXF2     BIT    0CEH  ;T2CON.6 - Timer 2 External Flag
  00CF          =  160+1  TF2      BIT    0CFH  ;T2CON.7 - Timer 2 Overflow Flag
  00D0          =  161+1  P        BIT    0D0H  ;PSW.0 - Accumulator Parity Flag
  00D2          =  162+1  OV       BIT    0D2H  ;PSW.2 - Overflow Flag
  00D3          =  163+1  RS0      BIT    0D3H  ;PSW.3 - Register Bank Select 0
  00D4          =  164+1  RS1      BIT    0D4H  ;PSW.4 - Register Bank Select 1
  00D5          =  165+1  F0       BIT    0D5H  ;PSW.5 - Flag 0
  00D6          =  166+1  AC       BIT    0D6H  ;PSW.6 - Auxiliary Carry Flag
  00D7          =  167+1  CY       BIT    0D7H  ;PSW.7 - Carry Flag
                =  168+1  
  0000          =  169+1  Bank0    EQU    00000000B
  0004          =  170+1  Bank1    EQU    00000100B
  0008          =  171+1  Bank2    EQU    00001000B
  000C          =  172+1  Bank3    EQU    00001100B
                   173    $include (DEFHW.INC)
                =  174+1  ; --------------------------------------
                =  175+1  ; - I/O signals                 -
                =  176+1  ; --------------------------------------
  00A0          =  177+1  RS      BIT     P2.0    ; RS signal
  00A1          =  178+1  E       BIT     P2.1    ; E signal
  00A2          =  179+1  CS1     BIT     P2.2    ; CS1 signal 
  00A3          =  180+1  CS2     BIT     P2.3    ; CS2 signal
  00A4          =  181+1  RESET   BIT     P2.4    ; RESET signal 
                =  182+1  
  00B6          =  183+1  LED1    BIT     P3.6 
                =  184+1  
                =  185+1  
                =  186+1  
                   187+1  
----               188    DSEG    AT    30H
0030               189    WAIT:   DS      1
0031               190    M:      DS      4
0035               191    ARRAY:  DS      5
                   192    
----               193    DSEG    AT    0E0H
                   194    STACK:
                   195    
----               196            CSEG
                   197    
                   198            ORG 0

⌨️ 快捷键说明

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