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

📄 24i2c.lst

📁 01单片机网站51单片机开发板全部配套程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
0100 C297            162                CLR SDA
0102 AFE0            163                MOV R7,ACC                   ;将接收到的数据保存到R7
0104 D0E0            164                POP ACC                      ;还原ACC
0106 22              165                RET
                     166     ;----------------------------------------------------------------
                     167     ;设置结束 在SEND & READ 后DSA & SCL均=0 ,本程序退出后 SDA & SCL=1
                     168     ;----------------------------------------------------------------
0107 3112            169     R2STOP:    ACALL D15US                  ;对2401操作结束
0109 D296            170                SETB SCL                     ;在SCL=1时,SDA由0变为1表示结束
010B 3112            171                ACALL D15US
010D D297            172                SETB SDA
010F 3112            173                ACALL D15US
0111 22              174                RET
                     175     ;*****************************************************************  
                     176     ;I2C串行时钟延时程序
                     177     ;------------------------
0112 C0D0            178     D15US:   PUSH PSW                       ;3区
0114 D2D3            179              SETB RS0
0116 D2D4            180              SETB RS1 
0118 7C08            181              MOV R4,#08H
011A DCFE            182              DJNZ R4,$
011C D0D0            183              POP PSW
011E 22              184              RET
                     185     ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                     186     ;************************************************************************
                     187     ;74164显示程序,使用RS1=1,RS0=0的1区
                     188     ;---------------------------------------------------------
011F C0E0            189     display:  PUSH ACC             ;保存ACC
0121 C0D0            190               push psw
A51 MACRO ASSEMBLER  24I2C                                                                  12/05/03 19:09:36 PAGE     4

0123 C2D4            191               clr rs1
0125 D2D3            192               setb rs0             ;使用第一区工作寄存器 
0127 90018E          193               mov dptr,#xstab    
012A E530            194               mov a,sjgw           ;取得数据
012C 93              195               movc a,@a+dptr       ;提取字模
012D 315B            196               acall dsout          ;调用送出子程序
012F C290            197              clr gw
0131 3167            198               acall ds1ms          ;调用显示1ms延时程序
0133 D290            199              setb gw
0135 E531            200               mov a,sjsw
0137 93              201               movc a,@a+dptr        ;提取字模
0138 315B            202               acall dsout          ;送出
013A C291            203              clr sw
013C 3167            204               acall ds1ms          ;显示1ms  
013E D291            205              setb sw        
0140 E532            206               mov a,sjbw
0142 93              207               movc a,@a+dptr        ;提取字模
0143 315B            208               acall dsout          ;送出
0145 C292            209              clr bw
0147 3167            210               acall ds1ms          ;显示1ms 
0149 D292            211              setb bw 
014B E533            212               mov a,sjqw
014D 93              213               movc a,@a+dptr        ;提取字模
014E 315B            214               acall dsout          ;送出
0150 C293            215              clr qw
0152 3167            216               acall ds1ms          ;显示1ms
0154 D293            217              setb qw
0156 D0D0            218               pop psw
0158 D0E0            219               POP ACC              ;出栈
015A 22              220               ret                  ;返回调用
                     221       ;---送出循环----------
015B                 222     dsout:    
015B 7808            223               MOV R0,#8            ;传送一个字节8位
015D 33              224     dSLOOP:   RLC A                ;右移
015E 9294            225               MOV xsdat,C          ;送数据到数据口
0160 D295            226               SETB xsclk           ;送一时钟
0162 C295            227               CLR xsclk
0164 D8F7            228               DJNZ R0,dSLOOP
0166 22              229               RET         
                     230        ;---显示延时---------- 
0167 790A            231     ds1ms:    mov r1,#10
0169 7A64            232     ds1lo:    mov r2,#100
016B DAFE            233               djnz r2,$
016D D9FA            234               djnz r1,ds1lo
016F 22              235               ret                  ;延时返回
                     236     ;************************************************************************
0170 C0D0            237     D10MS:   PUSH PSW                       ;3区
0172 D2D3            238              SETB RS0
0174 D2D4            239              SETB RS1 
0176 7A0A            240              mov r2,#10
0178 7BFF            241     d10lo:   MOV R3,#0FFH
017A DBFE            242              DJNZ R3,$
017C DAFA            243              djnz r2,d10lo                        
017E D0D0            244              POP PSW
0180 22              245              RET
                     246     ;*****************************************************************         
0181 C0D0            247     D1MS:    PUSH PSW                       ;3区
0183 D2D3            248              SETB RS0
0185 D2D4            249              SETB RS1 
0187 7B64            250              MOV R3,#100
0189 DBFE            251              DJNZ R3,$
018B D0D0            252              POP PSW
018D 22              253              RET
                     254     ;************************************************************************
                     255     ;显示字表(共阴)
018E                 256     xstab:    DB  3FH,06H,5BH,4FH    ;"0","1","2","3"
A51 MACRO ASSEMBLER  24I2C                                                                  12/05/03 19:09:36 PAGE     5

0192                 257               DB  66H,6DH,7DH,07H    ;"4","5","6","7"
0196                 258               DB  7FH,6FH,77H,7cH    ;"8","9","A","B" 
019A                 259               DB  39H,5eh,79h,71h    ;"C","D","E","F"
                     260               
                     261               endA51 MACRO ASSEMBLER  24I2C                                                                  12/05/03 19:09:36 PAGE     6

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


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

ACC. . . . . . . .  D ADDR   00E0H   A   
ADDKEY . . . . . .  C ADDR   0034H   A   
ADDL1. . . . . . .  C ADDR   0036H   A   
B. . . . . . . . .  D ADDR   00F0H   A   
B2C. . . . . . . .  C ADDR   0069H   A   
BW . . . . . . . .  B ADDR   0090H.2 A   
D10LO. . . . . . .  C ADDR   0178H   A   
D10MS. . . . . . .  C ADDR   0170H   A   
D15US. . . . . . .  C ADDR   0112H   A   
D1MS . . . . . . .  C ADDR   0181H   A   
DISPLAY. . . . . .  C ADDR   011FH   A   
DS1LO. . . . . . .  C ADDR   0169H   A   
DS1MS. . . . . . .  C ADDR   0167H   A   
DSLOOP . . . . . .  C ADDR   015DH   A   
DSOUT. . . . . . .  C ADDR   015BH   A   
GW . . . . . . . .  B ADDR   0090H.0 A   
I2CADD . . . . . .  N NUMB   0020H   A   
I2CREAD. . . . . .  C ADDR   00C4H   A   
I2CWRI . . . . . .  C ADDR   007DH   A   
JSTEM. . . . . . .  N NUMB   0021H   A   
MAIN . . . . . . .  C ADDR   0019H   A   
N1 . . . . . . . .  C ADDR   0022H   A   
N2 . . . . . . . .  C ADDR   002BH   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
PSW. . . . . . . .  D ADDR   00D0H   A   
QW . . . . . . . .  B ADDR   0090H.3 A   
R2READ . . . . . .  C ADDR   00E9H   A   
R2RLOP1. . . . . .  C ADDR   00EDH   A   
R2SEND . . . . . .  C ADDR   009CH   A   
R2SLOP1. . . . . .  C ADDR   00A2H   A   
R2SLOP2. . . . . .  C ADDR   00B7H   A   
R2STAR . . . . . .  C ADDR   00DEH   A   
R2STOP . . . . . .  C ADDR   0107H   A   
READ . . . . . . .  B ADDR   00B0H.2 A   
READKEY. . . . . .  C ADDR   0045H   A   
READL1 . . . . . .  C ADDR   0047H   A   
RS0. . . . . . . .  B ADDR   00D0H.3 A   
RS1. . . . . . . .  B ADDR   00D0H.4 A   
SADD . . . . . . .  B ADDR   00B0H.4 A   
SCL. . . . . . . .  B ADDR   0090H.6 A   
SDA. . . . . . . .  B ADDR   0090H.7 A   
SJBW . . . . . . .  N NUMB   0032H   A   
SJGW . . . . . . .  N NUMB   0030H   A   
SJQW . . . . . . .  N NUMB   0033H   A   
SJSW . . . . . . .  N NUMB   0031H   A   
SP . . . . . . . .  D ADDR   0081H   A   
SW . . . . . . . .  B ADDR   0090H.1 A   
WRI. . . . . . . .  B ADDR   00B0H.3 A   
WRIKEY . . . . . .  C ADDR   0059H   A   
WRIL1. . . . . . .  C ADDR   005BH   A   
XSCLK. . . . . . .  B ADDR   0090H.5 A   
XSDAT. . . . . . .  B ADDR   0090H.4 A   
XSTAB. . . . . . .  C ADDR   018EH   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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