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

📄 ds1302.lst

📁 P/S 测试程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
011B C294            205             CLR             p1302RST
011D 00              206             NOP
011E C292            207             CLR     p1302SCLK
0120 00              208             NOP
0121 D294            209             SETB    p1302RST
0123 00              210             NOP
0124 7F08            211             MOV     R7,     #0x08   ;//* 8bits/byte
0126                 212     WNextComBit:
0126 13              213             RRC     A                       ;//* command code
0127 9293            214             MOV     p1302IO,C
0129 00              215             NOP
012A D292            216             SETB    p1302SCLK
012C 00              217             NOP
012D C292            218             CLR     p1302SCLK
012F DFF5            219             DJNZ    R7,     WNextComBit
0131 7F08            220             MOV     R7,     #0x08   ;//* 8bits/byte
0133                 221     RDNextDataBit:
0133 A293            222             MOV     C,      p1302IO
0135 13              223             RRC     A
0136 D292            224             SETB    p1302SCLK
0138 00              225             NOP
0139 C292            226             CLR     p1302SCLK
013B DFF6            227             DJNZ    R7,     RDNextDataBit
013D C294            228             CLR     p1302RST
013F 22              229             RET
                     230     ;//* **************************************************************
                     231     ;//* Function:  set info to ds1302 register
                     232     ;//* Input:             A(command code)
                     233     ;//*                    B(data byte)
                     234     ;//* Register:  A,B,R7
0140                 235     WInfoToDS1302:
0140 C294            236             CLR     p1302RST
0142 00              237             NOP
0143 C292            238             CLR     p1302SCLK
0145 00              239             NOP
0146 D294            240             SETB    p1302RST
0148 00              241             NOP
0149 7F08            242             MOV     R7,     #0x08
014B                 243     WrNextComBit:
014B 13              244             RRC     A                       ;//* command code
014C 9293            245             MOV     p1302IO,C
014E 00              246             NOP
014F D292            247             SETB    p1302SCLK
0151 00              248             NOP
0152 C292            249             CLR     p1302SCLK
0154 DFF5            250             DJNZ    R7,     WrNextComBit
A51 MACRO ASSEMBLER  DS1302                                                               11/04/2008 14:17:15 PAGE     5

0156 E5F0            251             MOV     A,      B
0158 7F08            252             MOV     R7,     #0x08
015A                 253     WNextDataBit:
015A 13              254             RRC     A                       ;//* data byte
015B 9293            255             MOV     p1302IO,C
015D 00              256             NOP
015E D292            257             SETB    p1302SCLK
0160 00              258             NOP
0161 C292            259             CLR     p1302SCLK
0163 DFF5            260             DJNZ    R7,     WNextDataBit
0165 C294            261             CLR     p1302RST
0167 22              262             RET
                     263     
                     264     ;//* **************************************************************
                     265     ;//* Function:  initialization DS1302, set initial time
                     266     ;//*
0168                 267     INITDS1302:
                     268     ;//* COMMAND BYTE
                     269     ;//* The command byte is shown in Figure 1. Each data transfer is 
                     270     ;//* initiated by a command byte. The MSB(Bit 7) must be a logic 1.
                     271     ;//* If it is 0, writes to the DS1302 will be disabled. Bit 6 specifies
                     272     ;//* clock/calendar data if logic 0 or RAM data if logic 1. Bits 1
                     273     ;//* through 5 specify the designated registers to be input or output,
                     274     ;//* and the LSB (bit 0) specifies a write operation (input) if logic
                     275     ;//* 0 or read operation (output) if logic 1. The command byte is always
                     276     ;//* input starting with the LSB (bit 0).
                     277     ;//* ADDRESS/COMMAND BYTE Figure 1
                     278     ;//*  --------------------------------------------------
                     279     ;//* |   7  |   6   |  5  |  4  |  3  |  2  |  1  |  0  |
                     280     ;//*  --------------------------------------------------
                     281     ;//* |      | RAM / |     |     |     |     |     | RD /|
                     282     ;//* |   1  |   /   | A4  | A3  | A2  | A1  | A0  |  /  |
                     283     ;//* |      | /  CK |     |     |     |     |     |/  W |
                     284     ;//*  --------------------------------------------------
0168 7481            285             MOV             A,      #SecondRDCom
016A 12011B          286             LCALL   RDInfoFromDS1302
016D 30E738          287             JNB             ACC.7,  DisableWrite
                     288     ;//*
0170 748C            289             MOV     A,      #YearWCom
0172 75F000          290             MOV     B,      #0x00           ;//* 2000 year
0175 120140          291             LCALL   WInfoToDS1302
                     292     ;//*
0178 7488            293             MOV     A,      #MonthWCom
017A 75F007          294             MOV     B,      #0x07           ;//* 7 month
017D 120140          295             LCALL   WInfoToDS1302
                     296     ;//*
0180 7486            297             MOV     A,      #DateWCom
0182 75F001          298             MOV     B,      #0x01           ;//* 1 day
0185 120140          299             LCALL   WInfoToDS1302
                     300     ;//*
0188 7484            301             MOV     A,      #HourWCom
018A 75F012          302             MOV     B,      #0x12           ;//* 12 hour
018D 120140          303             LCALL   WInfoToDS1302
                     304     ;//*
0190 7482            305             MOV             A,      #MinuteWCom
0192 75F000          306             MOV     B,      #0x00           ;//* 0 minute
0195 120140          307             LCALL   WInfoToDS1302
                     308     ;//*
0198 7480            309             MOV     A,      #SecondWCom
019A 75F000          310             MOV     B,      #0x00           ;//* 0 second
019D 120140          311             LCALL   WInfoToDS1302
                     312     ;//*
01A0 748A            313         MOV     A,  #DayWCom
01A2 75F007          314         MOV     B,  #0x07           ;//* sunday
01A5 120140          315             LCALL   WInfoToDS1302
01A8                 316     DisableWrite:
A51 MACRO ASSEMBLER  DS1302                                                               11/04/2008 14:17:15 PAGE     6

01A8 7481            317             MOV     A,      #SecondRDCom
01AA 12011B          318             LCALL   RDInfoFromDS1302
01AD F536            319             MOV     vSecondBuf,     A
01AF 22              320             RET
                     321     
01B0                 322     Delay1s:
01B0 7F0A            323         MOV   R7,   #10
01B2                 324     Delay:
01B2 7E00            325         MOV   R6,   #0
01B4                 326     Dela:
01B4 7D00            327         MOV   R5,   #0
01B6 DDFE            328         DJNZ  R5,   $
01B8 DEFA            329         DJNZ  R6,   Dela
01BA DFF6            330         DJNZ  R7,   Delay
01BC 22              331         RET
                     332     
                     333             END
                             
                             
                             
                             
                             
                             
                             
                             
                             
A51 MACRO ASSEMBLER  DS1302                                                               11/04/2008 14:17:15 PAGE     7

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

AAAA . . . . . . .  C ADDR   004BH   A   
ACC. . . . . . . .  D ADDR   00E0H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
CBURSTRDCOM. . . .  N NUMB   00BFH   A   
CBURSTWCOM . . . .  N NUMB   00BEH   A   
CLEARRAM . . . . .  C ADDR   0035H   A   
CONTROLWCOM. . . .  N NUMB   008EH   A   
CONTRORDCOM. . . .  N NUMB   008FH   A   
DATERDCOM. . . . .  N NUMB   0087H   A   
DATEWCOM . . . . .  N NUMB   0086H   A   
DAYRDCOM . . . . .  N NUMB   008BH   A   
DAYWCOM. . . . . .  N NUMB   008AH   A   
DEL. . . . . . . .  C ADDR   00A3H   A   
DELA . . . . . . .  C ADDR   01B4H   A   
DELAY. . . . . . .  C ADDR   01B2H   A   
DELAY1S. . . . . .  C ADDR   01B0H   A   
DISABLEWRITE . . .  C ADDR   01A8H   A   
DSBUFBURRDC. . . .  N NUMB   00FFH   A   
DSBUFBURWC . . . .  N NUMB   00FEH   A   
DSBUFRDCOM0. . . .  N NUMB   00C1H   A   
DSBUFWCOM0 . . . .  N NUMB   00C0H   A   
DSBUFWCOM30. . . .  N NUMB   00FCH   A   
DSBURDCOM30. . . .  N NUMB   00FDH   A   
HOURRDCOM. . . . .  N NUMB   0085H   A   
HOURWCOM . . . . .  N NUMB   0084H   A   
INITDS1302 . . . .  C ADDR   0168H   A   
LOOP . . . . . . .  C ADDR   0065H   A   
MINUTERDCOM. . . .  N NUMB   0083H   A   
MINUTEWCOM . . . .  N NUMB   0082H   A   
MONTHRDCOM . . . .  N NUMB   0089H   A   
MONTHWCOM. . . . .  N NUMB   0088H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P1302IO. . . . . .  B ADDR   0090H.3 A   
P1302RST . . . . .  B ADDR   0090H.4 A   
P1302SCLK. . . . .  B ADDR   0090H.2 A   
RDINFOFROMDS1302 .  C ADDR   011BH   A   
RDNEXTDATABIT. . .  C ADDR   0133H   A   
READTIME . . . . .  C ADDR   00B0H   A   
SBUF . . . . . . .  D ADDR   0099H   A   
SCON . . . . . . .  D ADDR   0098H   A   
SECONDRDCOM. . . .  N NUMB   0081H   A   
SECONDWCOM . . . .  N NUMB   0080H   A   
SP . . . . . . . .  D ADDR   0081H   A   
START. . . . . . .  C ADDR   0030H   A   
TH1. . . . . . . .  D ADDR   008DH   A   
TI . . . . . . . .  B ADDR   0098H.1 A   
TL1. . . . . . . .  D ADDR   008BH   A   
TMOD . . . . . . .  D ADDR   0089H   A   
TR1. . . . . . . .  B ADDR   0088H.6 A   
TRCHARDCOM . . . .  N NUMB   0091H   A   
TRCHAWCOM. . . . .  N NUMB   0090H   A   
VDATEBUF . . . . .  N NUMB   0032H   A   
VDAYBUF. . . . . .  N NUMB   0033H   A   
VHOURBUF . . . . .  N NUMB   0034H   A   
VMINUTEBUF . . . .  N NUMB   0035H   A   
VMONTHBUF. . . . .  N NUMB   0031H   A   
VSECONDBUF . . . .  N NUMB   0036H   A   
VYEARBUF . . . . .  N NUMB   0030H   A   
WINFOTODS1302. . .  C ADDR   0140H   A   
WNEXTCOMBIT. . . .  C ADDR   0126H   A   
A51 MACRO ASSEMBLER  DS1302                                                               11/04/2008 14:17:15 PAGE     8

WNEXTDATABIT . . .  C ADDR   015AH   A   
WRITETIME. . . . .  C ADDR   00E2H   A   
WRNEXTCOMBIT . . .  C ADDR   014BH   A   
YEARRDCOM. . . . .  N NUMB   008DH   A   
YEARWCOM . . . . .  N NUMB   008CH   A   


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

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