您的位置:首页单片机其他单片机
内容搜索:
阅读内容
背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默认  

SH67P54读写24C02程序

[日期:2008-04-11 ] [来源:网络 作者:佚名] [字体: (投递新闻)
来源:网上转载       作者:程序匠人
 
 
;*****************************************************
;Company :
;File Name : JJ.asm
;Author :
;Create Data : 2006-04-30
;Last Modified : 2006-04-30
;Description :
;Version : 1.0
;*****************************************************
IE    EQU    00H
IRQ    EQU    01H
TM0    EQU    02H
BTM    EQU    03H
TL0    EQU    04H
TH0    EQU    05H
LCDON    EQU    07H
PA    EQU    08H
PB    EQU    09H
PC    EQU    0AH
PD    EQU    0BH
LVD    EQU    0DH
TBR    EQU    0EH
INX    EQU    0FH
DPL    EQU    10H
DPM    EQU    11H
DPH    EQU    12H
PULLEN    EQU    13H
OXS    EQU    14H
LPS1    EQU    15H
PACR    EQU    16H
PBCR    EQU    17H
PCCR    EQU    18H
PDCR    EQU    19H
TEMP    EQU    20H
TEMP0    EQU    21H
TEMP1    EQU    22H
TEMP2    EQU    23H
TEMP3    EQU    24H
TEMP4    EQU    25H
TEMP5    EQU    26H
TEMP6    EQU    27H
FLAG0    EQU    28H
PH0    EQU    29H
PM0    EQU    2AH
PL0    EQU    2BH
PH1    EQU    2CH
PM1    EQU    2DH
PL1    EQU    2EH
FLAG    EQU    2FH;
FLAG1    EQU    30H
FLAG2    EQU    31H    ;XIAO SHUDIAN BIAOZHI
FLAG3    EQU    32H    ;SHI BIE S12 S13
SH    EQU    33H    ;MAI CHONG DE JI SHU EXAMPLE:20,40,80.160
SM    EQU    34H
SL    EQU    35H
SUML    EQU    36H
SUMM    EQU    37H
SUMH    EQU    38H
;;;;;;;;;YI WEI BIAN LIANG;;;;;;;;;;;;
LFT_H    EQU    39H         ;left high nibble register
LFT_L    EQU    3AH        ;left low nibble register
N    EQU    3BH        ;variable register(N=1~7)
RUT_H    EQU    3CH        ;left result high nibble register
RUT_L    EQU    3DH        ;left result low nibble register
R7    EQU    3EH

RH    EQU    3FH
RL    EQU    40H

T0    EQU    20H
T1    EQU    21H
T2    EQU    22H
T3    EQU    23H

Q    EQU    41H

   ORG    0000H
MAIN:;;;;;;;;;;4M QI ZHEN;;;;;;;;;;
     ldi    PACR,0FH
   LDI    PBCR,0FH
   LDI    PB,0000B
   LDI    T1,0FH
   LDI    T2,0FH
   LDI    T3,0FH
   LDI    RL,00H
   LDI    RH,00H
   LDI    OXS,0001B
   CALL    DELAY5MS
   LDI    OXS,0011B
   CALL    DELAY5MS
   LDI    LPS1,0011B
   LDI    LVD,0000B
   LDI    LCDON,0100B
;;;;;;;;;;;;;;;;;;;;;;;
   CALL    SSTOP
   CALL    RD24
     SBIM    RL,0BH
     BC    TT
   
   CALL    DISPLAY
   JMP    TT1
TT:   LDI    RL,00H
   CALL    DISPLAY
TT1:    JMP    $
;;;;;;;;;;;;;;;;;;;;;;;;;;;     
RD24:   

   LDI    PA,1000B
   LDI    PB,0000B
   CALL    START24
   LDI    LFT_L,00H
   LDI    LFT_H,0AH
   CALL    SHIFT0
   CALL    ACK
   LDI    LFT_L,00H
   LDI    LFT_H,00H
   CALL    SHIFT0
   CALL    ACK
   CALL    START24
   LDI    LFT_L,01H
   LDI    LFT_H,0AH
   CALL    SHIFT0
   CALL    ACK
   LDI    PA,1000B
   LDI    R7,07H
   LDI    PA,1000B
   LDI    PACR,0111B
   
RD000:   
    LDI    PB,0001B
   LDI    Q,1000B
   AND    PA,00H
   ADD    PA,00H
   LDA    RL,00H
   ADCM    RL,00H
   LDA    RH,00H
   ADCM    RH,00H
   LDI    PB,0000B
   SBIM    R7,01H
   BC    RD000
   RTNI
SHIFT0:   
   LDI    N,07H        ;left 7 bit
SHIFT8:    LDA    LFT_H,00H
   STA    PA,00H
   LDI    PB,0001B
   
    SBIM    N,01H        ;N-1 to judge left is ok ?
   BC    LEFT
   LDI    PB,0000B        ;N>0,jump to LEFT   
   JMP    ENDLEFT    ;N<0,left ok! jump to ENDLEFT
LEFT:   
   LDA    LFT_L,00H    ;left low nibble one bit
   ADDM    LFT_L,00H
   LDA    LFT_H,00H    ;left high nibble one bit
   ADCM    LFT_H,00H
   LDI    PB,0000B
   JMP    SHIFT8        ;jump to left again
ENDLEFT: RTNI            ;return to main program
START24:DI    PA,0000B
   LDI    PA,1000B
   LDI    PB,0001B
   LDI    PA,0000B
   LDI    PB,0000B
   RTNI
SSTOP:    LDI    PA,0000B
   LDI    PB,0001B
   LDI    PA,1000B
   RTNI
ACK:    LDI    PB,0001B
   LDI    PB,0000B
   RTNI
DELAY2:
    NOP
    NOP
    NOP
    NOP
    RTNI      
   
   
;;;;;;YAN SHI;;;;;;;;;;
DELAY5MS:
   LDI    T2,0FH
DELAY1: LDI    T1,0fH
DELAY0: LDI    T0,0FH
DELAY:    SBIM    T0,01H
   BC    DELAY
   SBIM    T1,01H
   BC    DELAY0
   SBIM    T2,01H
   BC    DELAY1
      
   RTNI
;;;;;;;;;;;;;;;;;;
DISPLAY:
LDI    DPH,06H
LDI    DPM,00H
LDI    DPL,08H
LDI    TBR,0EH
LDA    RL,00H
CALL    MARK
STA    INX,00H

ADIM    DPL,01H
LDA    TBR,00H
STA    INX,00H
RTNI
   ORG    02DFH
MARK:
   TJMP
   RTNW    07H,0DH         ;0
   RTNW    06H,00H        ;1
   RTNW    03H,0EH        ;2
   RTNW    07H,0AH        ;3
   RTNW    06H,03H        ;4
   RTNW    05H,0BH    ;5
   RTNW    05H,0FH    ;6
   RTNW    07H,00H    ;7
   RTNW    07H,0FH        ;8
   RTNW    07H,0BH        ;9   

   

   END
PA0----SDA       PB0----SCL   PB1----WP
阅读:
录入:JETTA

推荐 】 【 打印
本文评论
      全部评论
发表评论


点评: 字数
姓名:
站长推荐