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

📄 dz9664.lst

📁 1. Source Code for CSTN . 2. Keil ASM with Detail Remark. 3. Winbond Single Chip.
💻 LST
📖 第 1 页 / 共 5 页
字号:
A51 MACRO ASSEMBLER  DZ9664                                                               07/11/2003 13:11:32 PAGE     1


MACRO ASSEMBLER A51 V7.00
OBJECT MODULE PLACED IN dz9664.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE dz9664.asm SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1     name DZ9664
                       2     ;/----------------------------------------------------------------------------
                       3     ;; MPU: WINBOND W78C438CP-40
                       4     ;; OSC: 24 MHz
                       5     ;; LCM controller IC: philips DZ9664/1 (ROW68 x 12bit X COL98 X 3)
                       6     ;; LCM display resolution: R68 X C98 PIXEL,80K bits 4K/65k/256 COLORS
                       7     ;; Purpose: DEMO
                       8     ;; Date: 2003.3.27
                       9     ;/----------------------------------------------------------------------------
                      10     ;                .CHIP 8052
                      11     ;                .SYMBOLS ON
                      12     ;                .RAMCHK OFF
                      13     ;#----------------------------------------------------------------------------
  0080                14     DATA_BUS        equ    P0               ;O/P
  00B4                15     LED1            bit    P3.4             ;LED DISPLAY
  00B5                16     LED2            bit    P3.5             ;LED DISPLAY
  0095                17     CD              bit    p1.5             ;O/P data or command
  0096                18     CS              bit    P1.6             ;O/P always low
  0097                19     RESB            bit    P1.7             ;O/P use cpu rst pin
  00B6                20     WRB             bit    P3.6             ;O/P use @R write to P0 bus
  00B7                21     RDB             bit    P3.7             ;O/P pull-high
  00A7                22     UPKEY           bit    P2.7             ;UP KEY
  00A6                23     DOWNKEY         bit    P2.6             ;DOWN KEY
  00A5                24     CLOCKKEY        bit    P2.5             ;CLOCK KEY
  00A4                25     CONTRASTKEY             bit    P2.4             ;CONTRAST KEY
                      26     ;CPUclk         bit     0XBF.2          ;SET CPU DOUBLE CLOCK RATE
                      27     ;%----------------------------------------------------------------------------
  0020                28     SYSTEMflag      EQU     20H     ;B0=CONTRAST H/L
  0000                29     CONTRASTflag    BIT     SYSTEMflag.0
  0001                30     showTIMEflag    BIT     SYSTEMflag.1
                      31     
  0010                32     FORcolor        EQU     10H     ;USE RS BANK2 FOR COLOR
  0011                33     BACKcolor       EQU     11H     ;FORGROUND/BACKGROUND COLOR
  0012                34     BitCounter      equ     12h     ;use to color bit counter 8->0 
                      35     
  0030                36     TEMP            equ    30H
  0031                37     TIMER0count     equ    31H
  0032                38     SECOND_COUNT    equ    32H
  0033                39     OneSecondCounter        equ    33H
  0034                40     MEMORY_DATA     equ    34H
                      41     ;MEMORY_DATA2    equ    35H
                      42     ;MEMORY_DATA3    equ    36H
  0037                43     KEYvalue        equ    37H
  0038                44     INDEX           EQU     38H
  0039                45     HI_BYTE         EQU     39H
  003A                46     LO_BYTE         EQU     3AH
  003B                47     SECOND          EQU     3BH
  003C                48     MINUTE          EQU     3CH
  003D                49     HOURSE          EQU     3DH
  0035                50     DPTR_DPH        equ    35H
  0036                51     DPTR_DPL        equ    36H
                      52     ;IMAGE_COUNT     equ    37H
                      53     
                      54     ;----------------------------------------------------------------------------
                      55     ;----------------------------------------------------------------------------
                      56     ;EPMA            EQU    0A2H
                      57     ;P8              EQU    0A6H
  0060                58     LCMseg          EQU    96
A51 MACRO ASSEMBLER  DZ9664                                                               07/11/2003 13:11:32 PAGE     2

  0040                59     LCMcom          EQU    64
                      60     ;MODEL_SEL2_S    EQU    98
                      61     ;MODEL_SEL2_C    EQU    68
  0000                62     BLACK           EQU    00000000B
  0003                63     BLUE            EQU    00000011B
  00E0                64     RED             EQU    11100000B
  00E3                65     PURPLE          EQU    11100011B
  001C                66     GREEN           EQU    00011100B
  001F                67     DARK_GREEN      EQU    00011111B
  00FC                68     YELLOW          EQU    11111100B
  00FF                69     WHITE           EQU    11111111B
  17FF                70     IMAGE_ADDR      EQU    6144-1          ;;96 * 64 = 6144
                      71     ;@----------------------------------------------------------------------------
                      72             public  allDZ9664
                      73             public  clearLCM
                      74             public  PHOTO2
                      75             public  INITDZ9664LCM
                      76             public  LCMhome
                      77     
                      78     ?PR?all9664c?LCM9664c   segment code
                      79     
----                  80             rseg    ?PR?all9664c?LCM9664c
0000                  81     allDZ9664:
0000 00               82                     nop
                      83     ;&-------------------------------------------
                      84     
0000                  85                     ORG    0000H
0000 804E             86                     JMP    ISPcheck
                      87                     ;;
                      88     ;                ORG    0003H                   ;INT0 ADDRESS
                      89     ;                JMP     $
                      90                     ;;
000B                  91                     ORG    000BH                   ;TIMER0 ADDRESS
                      92     ;               RETI
000B 020000   F       93                     LJMP    TIMER0ISR
                      94                     ;;
                      95     ;                ORG    0013H                   ;INT1 ADDRESS
                      96     ;                JMP     $
                      97     
001B                  98                     ORG    001BH                   ;TIMER1 ADDRESS
001B 020000   F       99                     LJMP    TIMER1ISR                ;;
                     100     
                     101                     ;;
                     102     ;                ORG    0023H                   ;UART ADDRESS
                     103     ;                JMP     $
                     104                     ;;
                     105     ;                ORG    002BH                   ;TIMER2 ADDRESS
                     106     ;                JMP     $
                     107                     ;;
                     108     ;                ORG    0033H                   ;INT2 ADDRESS
                     109     ;                JMP     $
                     110                     ;;
                     111     ;                ORG    003BH                   ;INT3 ADDRESS
                     112     ;                JMP     $
                     113     ;*-------------------------------------------
0050                 114                     ORG    50H
                     115     ;*-------------------------------------------
0050                 116     ISPcheck:                               ;======================
0050 E5A0            117                     MOV     A,P2            ;CHECK ISP PIN
0052 5480            118                     ANL     A,#10000000B    ;27=0 THEN ISP  
0054 702A            119                     JNZ     START
                     120     
0056                 121     ISPmode:                                ;ENTER ISP MODE
0056 75BF10          122             mov     0bfh,#10h        ; enxram
0059 900F0B          123             mov     dptr,#0F0Bh
005C 742E            124             mov     a,#00101110b        
A51 MACRO ASSEMBLER  DZ9664                                                               07/11/2003 13:11:32 PAGE     3

005E F0              125             movx    @dptr,a         ; slvaadr=2E
005F 900F0C          126             mov     dptr,#0F0Ch
0062 7493            127             mov     a,#93h
0064 F0              128             movx    @dptr,a         ; en isp
0065 00              129             nop
0066 758701          130             mov     pcon,#00000001b
0069 00              131             nop
006A 00              132             nop
006B 00              133             nop
                     134     ;========================================
0080                 135                     ORG     80H     ;ISP PAGE1
                     136     ;=========================================
0080                 137     START:
0080 75815F          138                     MOV     SP,#5FH         ;@ STACK
                     139                     ;SETB   CPUclk          ;SET CPU DOUBLE CLOCK RATE
                     140                     ;ORL    0XBF,#00010100B
0083                 141     INIT_IO:
0083 C2B4            142                     CLR     LED1
0085 D2B5            143                     SETB    LED2
0087 753701          144                     MOV     KEYvalue,#01
008A 7820            145                     MOV     R0,#20H         ;CLEAR RAM(20H-FFH)
008C                 146     CLEAR_RAM:
008C 7600            147                     MOV     @R0,#0
008E 08              148                     INC     R0
008F B800FA          149                     CJNE    R0,#00H,CLEAR_RAM
                     150     
0092 753B00          151             MOV     SECOND,#0                       ;CLOCK VARIABLE
0095 753C00          152             MOV     MINUTE,#0
0098 753D12          153             MOV     HOURSE,#12h
009B 7533FA          154             MOV     OneSecondCounter,#(1000/4)
009E                 155     TIMER0INIT:
009E 758900          156             MOV     TMOD,#00000000B                 ;TIMER0 MODE0
00A1 758C63          157             MOV     TH0,#(8192-5000)/32             ;13 BIT
00A4 758A18          158             MOV     TL0,#(8192-5000) MOD 32         ;8+5=13 BIT
00A7 D2A9            159             SETB    ET0                             ;ENABLE TIMER0 INT
00A9 D28C            160             SETB    TR0                             ;TIMER0 START
00AB                 161     TIMER1INIT:
00AB 85F08D          162             MOV     TH1,HIGH (65536-4000)           ;4mS INT
00AE 85608B          163             MOV     TL1,LOW  (65536-4000)           ;8+8=16 BIT
00B1 438910          164             ORL     TMOD,#00010000B                 ;TIMER1 MODE1 16BIT
00B4 D2AB            165             SETB    ET1                             ;ENABLE TIMER1 INT
00B6 D28E            166             SETB    TR1                             ;START TIMER1
                     167     
00B8 D2AF            168             SETB    EA                      ;ENABLE ALL INTINIT_LCM:
                     169             
00BA 120000   F      170             CALL    INITDZ9664LCM
00BD 900000   F      171             MOV     DPTR,#W22               ;home page / title screen
00C0 120000   F      172             CALL    pictureDISPLAY
                     173     ;==========================================================
00C3                 174     KEYcheck:
00C3 E5A0            175             MOV     A,P2
00C5 F4              176             CPL     A
00C6 60FB            177             JZ      KEYcheck        ;NO KEY PRESS
00C8 E5A0            178             MOV     A,P2
00CA F5F0            179             MOV     B,A             ;BACKUP KEYBOARD VALUE
00CC 7D01            180             MOV     R5,#1
00CE 120000   F      181             CALL    DELAY_50MS      ;DEBOUNCE TIME
00D1 E5A0            182             MOV     A,P2
00D3 B5F0ED          183             CJNE    A,B,KEYcheck    ;IS STILL PRESS KEY,NON THEN BACK
                     184             ;MOV     R5,#1  
                     185             ;CALL    DELAY_50MS     ;RELEASE KEY?
                     186             ;CJNE   A,B,KEYB0       ;IF KEYPRESS THEN GOBACK
                     187             ;JMP    KEYcheck
                     188     
                     189             ;JNB    showTIMEflag,KEYB0
                     190             ;CALL   SHOWtime
A51 MACRO ASSEMBLER  DZ9664                                                               07/11/2003 13:11:32 PAGE     4

00D6                 191     KEYB0:
00D6 20A707          192             JB      UPKEY,KEYB1             ;UP
00D9 0537            193             INC     KEYvalue
00DB 120000   F      194             CALL    SHOWmap
00DE 8012            195             JMP     KEYcheckOK

⌨️ 快捷键说明

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