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

📄 iic_rw.lst

📁 一个用于驱动TFT屏的驱动程序,使用IC:1828,program (无EEPROM 无IR,完整说明)IIC只写一个
💻 LST
📖 第 1 页 / 共 2 页
字号:
                                           ; SOURCE LINE # 49
0012 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 50
0015 120000      R     LCALL   start_IIC
                                           ; SOURCE LINE # 52
0018 AF00        R     MOV     R7,device
001A 0500        R     INC     device
001C 120000      R     LCALL   _send_IIC
001F 9200        R     MOV     ack,C
0021 5007              JNC     ?C0004
                                           ; SOURCE LINE # 53
0023 AF00        R     MOV     R7,address
0025 120000      R     LCALL   _send_IIC
0028 9200        R     MOV     ack,C
002A         ?C0004:
                                           ; SOURCE LINE # 55
002A 30001F      R     JNB     ack,?C0003
                                           ; SOURCE LINE # 56
002D         ?C0005:
                                           ; SOURCE LINE # 59
002D E4                CLR     A
002E F500        R     MOV     buffer,A
                                           ; SOURCE LINE # 60
0030 120000      R     LCALL   stop_IIC
                                           ; SOURCE LINE # 61
0033 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 62
0036 120000      R     LCALL   start_IIC
                                           ; SOURCE LINE # 64
0039 AF00        R     MOV     R7,device
003B 0500        R     INC     device
003D 120000      R     LCALL   _send_IIC
0040 9200        R     MOV     ack,C
0042 5008              JNC     ?C0003
                                           ; SOURCE LINE # 65
                                           ; SOURCE LINE # 66
0044 120000      R     LCALL   receive_IIC
0047 8F00        R     MOV     buffer,R7
                                           ; SOURCE LINE # 67
0049 120000      R     LCALL   nack_IIC
                                           ; SOURCE LINE # 68
C51 COMPILER V7.50   IIC_RW                                                                09/29/2006 10:54:50 PAGE 7   

                                           ; SOURCE LINE # 69
004C         ?C0003:
004C 0500        R     INC     i
004E E500        R     MOV     A,i
0050 C3                CLR     C
0051 940A              SUBB    A,#0AH
0053 40B7              JC      ?C0001
0055         ?C0002:
                                           ; SOURCE LINE # 71
0055 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 72
0058 120000      R     LCALL   stop_IIC
                                           ; SOURCE LINE # 73
005B 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 75
005E AF00        R     MOV     R7,buffer
                                           ; SOURCE LINE # 76
0060         ?C0007:
0060 22                RET     
             ; FUNCTION _read1828 (END)

             ; FUNCTION _write1828 (BEGIN)
                                           ; SOURCE LINE # 84
0000 8F00        R     MOV     address,R7
0002 8D00        R     MOV     buf_data,R5
                                           ; SOURCE LINE # 85
                                           ; SOURCE LINE # 90
0004 120000      R     LCALL   stop_IIC
                                           ; SOURCE LINE # 91
0007 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 92
000A 120000      R     LCALL   start_IIC
                                           ; SOURCE LINE # 94
000D 7FDE              MOV     R7,#0DEH
000F 120000      R     LCALL   _send_IIC
                                           ; SOURCE LINE # 95
0012 AF00        R     MOV     R7,address
0014 120000      R     LCALL   _send_IIC
                                           ; SOURCE LINE # 96
0017 AF00        R     MOV     R7,buf_data
0019 020000      R     LJMP    _send_IIC
             ; FUNCTION _write1828 (END)

             ; FUNCTION _send_IIC (BEGIN)
                                           ; SOURCE LINE # 107
0000 8F00        R     MOV     bytedata,R7
                                           ; SOURCE LINE # 108
                                           ; SOURCE LINE # 109
0002 E4                CLR     A
0003 F500        R     MOV     i,A
                                           ; SOURCE LINE # 112
0005 C281              CLR     scl
                                           ; SOURCE LINE # 113
0007 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 115
000A 750008      R     MOV     i,#08H
000D         ?C0009:
                                           ; SOURCE LINE # 116
                                           ; SOURCE LINE # 118
000D E500        R     MOV     A,bytedata
000F 30E704            JNB     ACC.7,?C0012
                                           ; SOURCE LINE # 119
C51 COMPILER V7.50   IIC_RW                                                                09/29/2006 10:54:50 PAGE 8   

0012 D280              SETB    sda
0014 8002              SJMP    ?C0013
0016         ?C0012:
                                           ; SOURCE LINE # 121
0016 C280              CLR     sda
0018         ?C0013:
                                           ; SOURCE LINE # 122
0018 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 123
001B E500        R     MOV     A,bytedata
001D 25E0              ADD     A,ACC
001F F500        R     MOV     bytedata,A
                                           ; SOURCE LINE # 126
0021 D281              SETB    scl
                                           ; SOURCE LINE # 127
0023 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 128
0026 C281              CLR     scl
                                           ; SOURCE LINE # 129
0028 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 130
002B 1500        R     DEC     i
002D D3                SETB    C
002E E500        R     MOV     A,i
0030 6480              XRL     A,#080H
0032 9480              SUBB    A,#080H
0034 50D7              JNC     ?C0009
0036         ?C0010:
                                           ; SOURCE LINE # 131
0036 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 133
0039 D280              SETB    sda
                                           ; SOURCE LINE # 134
003B 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 135
003E D281              SETB    scl
                                           ; SOURCE LINE # 136
0040 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 137
0043 A280              MOV     C,sda
0045 9200        R     MOV     ack,C
                                           ; SOURCE LINE # 138
0047 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 139
004A C281              CLR     scl
                                           ; SOURCE LINE # 140
004C 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 142
004F A200        R     MOV     C,ack
0051 B3                CPL     C
                                           ; SOURCE LINE # 143
0052         ?C0014:
0052 22                RET     
             ; FUNCTION _send_IIC (END)

             ; FUNCTION receive_IIC (BEGIN)
                                           ; SOURCE LINE # 151
                                           ; SOURCE LINE # 152
                                           ; SOURCE LINE # 153
0000 E4                CLR     A
0001 F500        R     MOV     i,A
                                           ; SOURCE LINE # 154
C51 COMPILER V7.50   IIC_RW                                                                09/29/2006 10:54:50 PAGE 9   

0003 F500        R     MOV     receive,A
                                           ; SOURCE LINE # 156
0005 750008      R     MOV     i,#08H
0008         ?C0015:
                                           ; SOURCE LINE # 157
                                           ; SOURCE LINE # 158
0008 E500        R     MOV     A,receive
000A 25E0              ADD     A,ACC
000C F500        R     MOV     receive,A
                                           ; SOURCE LINE # 159
000E D281              SETB    scl
                                           ; SOURCE LINE # 160
0010 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 161
0013 308003            JNB     sda,?C0018
                                           ; SOURCE LINE # 162
0016 430001      R     ORL     receive,#01H
0019         ?C0018:
                                           ; SOURCE LINE # 164
0019 C281              CLR     scl
                                           ; SOURCE LINE # 165
001B 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 166
001E 1500        R     DEC     i
0020 E500        R     MOV     A,i
0022 D3                SETB    C
0023 9400              SUBB    A,#00H
0025 50E1              JNC     ?C0015
0027         ?C0016:
                                           ; SOURCE LINE # 167
0027 AF00        R     MOV     R7,receive
                                           ; SOURCE LINE # 168
0029         ?C0019:
0029 22                RET     
             ; FUNCTION receive_IIC (END)

             ; FUNCTION nack_IIC (BEGIN)
                                           ; SOURCE LINE # 192
                                           ; SOURCE LINE # 193
                                           ; SOURCE LINE # 195
0000 C280              CLR     sda
                                           ; SOURCE LINE # 196
0002 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 197
0005 D281              SETB    scl
                                           ; SOURCE LINE # 198
0007 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 200
000A D280              SETB    sda
                                           ; SOURCE LINE # 201
000C 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 202
000F C281              CLR     scl
                                           ; SOURCE LINE # 203
0011 020000      R     LJMP    delay_nop
             ; FUNCTION nack_IIC (END)

             ; FUNCTION start_IIC (BEGIN)
                                           ; SOURCE LINE # 211
                                           ; SOURCE LINE # 212
                                           ; SOURCE LINE # 213
0000 D280              SETB    sda
C51 COMPILER V7.50   IIC_RW                                                                09/29/2006 10:54:50 PAGE 10  

                                           ; SOURCE LINE # 214
0002 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 215
0005 D281              SETB    scl
                                           ; SOURCE LINE # 216
0007 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 217
000A C280              CLR     sda
                                           ; SOURCE LINE # 218
000C 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 219
000F C281              CLR     scl
                                           ; SOURCE LINE # 220
0011 020000      R     LJMP    delay_nop
             ; FUNCTION start_IIC (END)

             ; FUNCTION stop_IIC (BEGIN)
                                           ; SOURCE LINE # 227
                                           ; SOURCE LINE # 228
                                           ; SOURCE LINE # 229
0000 C281              CLR     scl
                                           ; SOURCE LINE # 230
0002 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 231
0005 C280              CLR     sda
                                           ; SOURCE LINE # 232
0007 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 233
000A D281              SETB    scl
                                           ; SOURCE LINE # 234
000C 120000      R     LCALL   delay_nop
                                           ; SOURCE LINE # 235
000F D280              SETB    sda
                                           ; SOURCE LINE # 236
0011 020000      R     LJMP    delay_nop
             ; FUNCTION stop_IIC (END)

             ; FUNCTION delay_nop (BEGIN)
                                           ; SOURCE LINE # 247
                                           ; SOURCE LINE # 248
                                           ; SOURCE LINE # 252
0000 22                RET     
             ; FUNCTION delay_nop (END)



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    311    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      10
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       2
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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