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

📄 t.ls1

📁 at89c51 读取写入24c64的C源代码
💻 LS1
📖 第 1 页 / 共 5 页
字号:
0012 00              934             NOP     
                     935     ; SCL=0;
                     936                             ; SOURCE LINE # 305
0013 C2B4            937             CLR     P3_4
                     938     ; _nop_();
                     939                             ; SOURCE LINE # 306
0015 00              940             NOP     
                     941     ; return(ck);
                     942                             ; SOURCE LINE # 307
0016 A200     F      943             MOV     C,ck?750
                     944     ; }
                     945                             ; SOURCE LINE # 308
0018                 946     ?C0050:
0018 22              947             RET     
                     948     ; END OF I2C_ReceiveAck
                     949     
                     950     ; 
                     951     ; 
                     952     ; void I2C_SendAck()
                     953     
----                 954             RSEG  ?PR?I2C_SendAck?T
0000                 955     I2C_SendAck:
                     956                             ; SOURCE LINE # 311
                     957     ; 
                     958     ; {
                     959                             ; SOURCE LINE # 313
                     960     ; SDA=0;
                     961                             ; SOURCE LINE # 314
0000 C2B5            962             CLR     P3_5
                     963     ; _nop_();
                     964                             ; SOURCE LINE # 315
0002 00              965             NOP     
                     966     ; _nop_();
                     967                             ; SOURCE LINE # 316
0003 00              968             NOP     
                     969     ; SCL=1;
                     970                             ; SOURCE LINE # 317
0004 D2B4            971             SETB    P3_4
                     972     ; delay();          //remain
                     973                             ; SOURCE LINE # 318
0006 120000   F      974             LCALL   delay
                     975     ; SCL=0;
                     976                             ; SOURCE LINE # 319
A51 MACRO ASSEMBLER  T                                                                    06/27/2008 14:06:20 PAGE    16

0009 C2B4            977             CLR     P3_4
                     978     ; _nop_();
                     979                             ; SOURCE LINE # 320
000B 00              980             NOP     
                     981     ; _nop_();
                     982                             ; SOURCE LINE # 321
000C 00              983             NOP     
                     984     ; }
                     985                             ; SOURCE LINE # 322
000D 22              986             RET     
                     987     ; END OF I2C_SendAck
                     988     
                     989     ; 
                     990     ; void I2C_SendNoAck()
                     991     
----                 992             RSEG  ?PR?I2C_SendNoAck?T
0000                 993     I2C_SendNoAck:
                     994                             ; SOURCE LINE # 324
                     995     ; 
                     996     ; {
                     997                             ; SOURCE LINE # 326
                     998     ; SDA=1;
                     999                             ; SOURCE LINE # 327
0000 D2B5           1000             SETB    P3_5
                    1001     ; _nop_();
                    1002                             ; SOURCE LINE # 328
0002 00             1003             NOP     
                    1004     ; _nop_();
                    1005                             ; SOURCE LINE # 329
0003 00             1006             NOP     
                    1007     ; SCL=1;
                    1008                             ; SOURCE LINE # 330
0004 D2B4           1009             SETB    P3_4
                    1010     ; delay();   //remain
                    1011                             ; SOURCE LINE # 331
0006 120000   F     1012             LCALL   delay
                    1013     ; SCL=0;
                    1014                             ; SOURCE LINE # 332
0009 C2B4           1015             CLR     P3_4
                    1016     ; _nop_();
                    1017                             ; SOURCE LINE # 333
000B 00             1018             NOP     
                    1019     ; _nop_();
                    1020                             ; SOURCE LINE # 334
000C 00             1021             NOP     
                    1022     ; }
                    1023                             ; SOURCE LINE # 335
000D 22             1024             RET     
                    1025     ; END OF I2C_SendNoAck
                    1026     
                    1027     ; 
                    1028     ; void I2C_SendByte(byte SData)
                    1029     
----                1030             RSEG  ?PR?_I2C_SendByte?T
0000                1031     _I2C_SendByte:
                    1032             USING   0
                    1033                             ; SOURCE LINE # 337
                    1034     ;---- Variable 'SData?1051' assigned to Register 'R7' ----
                    1035     ; {uchar i;
                    1036                             ; SOURCE LINE # 338
                    1037     ; for(i=0;i<8;i++)
                    1038                             ; SOURCE LINE # 339
                    1039     ;---- Variable 'i?1052' assigned to Register 'R6' ----
0000 E4             1040             CLR     A
0001 FE             1041             MOV     R6,A
0002                1042     ?C0053:
A51 MACRO ASSEMBLER  T                                                                    06/27/2008 14:06:20 PAGE    17

                    1043     ; {  SDA=(bit)(SData&0x80);
                    1044                             ; SOURCE LINE # 340
0002 EF             1045             MOV     A,R7
0003 33             1046             RLC     A
0004 92B5           1047             MOV     P3_5,C
                    1048     ;    SData=SData<<1;
                    1049                             ; SOURCE LINE # 341
0006 EF             1050             MOV     A,R7
0007 25E0           1051             ADD     A,ACC
0009 FF             1052             MOV     R7,A
                    1053     ;    SCL=1;
                    1054                             ; SOURCE LINE # 342
000A D2B4           1055             SETB    P3_4
                    1056     ;    delay();
                    1057                             ; SOURCE LINE # 343
000C 120000   F     1058             LCALL   delay
                    1059     ;    SCL=0;
                    1060                             ; SOURCE LINE # 344
000F C2B4           1061             CLR     P3_4
                    1062     ; }
                    1063                             ; SOURCE LINE # 345
0011 0E             1064             INC     R6
0012 BE08ED         1065             CJNE    R6,#08H,?C0053
                    1066     ; }
                    1067                             ; SOURCE LINE # 346
0015                1068     ?C0056:
0015 22             1069             RET     
                    1070     ; END OF _I2C_SendByte
                    1071     
                    1072     ; 
                    1073     ; byte I2C_ReceiveByte()
                    1074     
----                1075             RSEG  ?PR?I2C_ReceiveByte?T
0000                1076     I2C_ReceiveByte:
                    1077             USING   0
                    1078                             ; SOURCE LINE # 348
                    1079     ; {uchar i;
                    1080                             ; SOURCE LINE # 349
                    1081     ;  byte RData;
                    1082     ;  RData=0;
                    1083                             ; SOURCE LINE # 351
                    1084     ;---- Variable 'RData?1154' assigned to Register 'R7' ----
0000 E4             1085             CLR     A
0001 FF             1086             MOV     R7,A
                    1087     ; 
                    1088     ; for(i=0;i<8;i++)
                    1089                             ; SOURCE LINE # 353
                    1090     ;---- Variable 'i?1153' assigned to Register 'R6' ----
0002 FE             1091             MOV     R6,A
0003                1092     ?C0057:
                    1093     ; {  SDA=1;
                    1094                             ; SOURCE LINE # 354
0003 D2B5           1095             SETB    P3_5
                    1096     ;   _nop_();
                    1097                             ; SOURCE LINE # 355
0005 00             1098             NOP     
                    1099     ;   SCL=1;
                    1100                             ; SOURCE LINE # 356
0006 D2B4           1101             SETB    P3_4
                    1102     ;   _nop_();
                    1103                             ; SOURCE LINE # 357
0008 00             1104             NOP     
                    1105     ;   _nop_();
                    1106                             ; SOURCE LINE # 358
0009 00             1107             NOP     
                    1108     ;   RData=RData<<1;
A51 MACRO ASSEMBLER  T                                                                    06/27/2008 14:06:20 PAGE    18

                    1109                             ; SOURCE LINE # 359
000A EF             1110             MOV     A,R7
000B 25E0           1111             ADD     A,ACC
000D FF             1112             MOV     R7,A
                    1113     ;   RData=RData|SDA;
                    1114                             ; SOURCE LINE # 360
000E A2B5           1115             MOV     C,P3_5
0010 E4             1116             CLR     A
0011 33             1117             RLC     A
0012 4207           1118             ORL     AR7,A
                    1119     ;   _nop_();
                    1120                             ; SOURCE LINE # 361
0014 00             1121             NOP     
                    1122     ;   _nop_();
                    1123                             ; SOURCE LINE # 362
0015 00             1124             NOP     
                    1125     ;   SCL=0;
                    1126                             ; SOURCE LINE # 363
0016 C2B4           1127             CLR     P3_4
                    1128     ; }
                    1129                             ; SOURCE LINE # 364
0018 0E             1130             INC     R6
0019 BE08E7         1131             CJNE    R6,#08H,?C0057
001C                1132     ?C0058:
                    1133     ; return(RData);
                    1134                             ; SOURCE LINE # 365
                    1135     ; }
                    1136                             ; SOURCE LINE # 366
001C                1137     ?C0060:
001C 22             1138             RET     
                    1139     ; END OF I2C_ReceiveByte
                    1140     
                    1141     ; 
                    1142     ; void I2C_SendToSubAddress(byte SlaveAddress,uint SubAddress,byte *pSData,uchar N)
                    1143     
----                1144             RSEG  ?PR?_I2C_SendToSubAddress?T
0000                1145     _I2C_SendToSubAddress:
                    1146             USING   0
                    1147                             ; SOURCE LINE # 368
0000 8B00     F     1148             MOV     pSData?1257,R3
0002 8A00     F     1149             MOV     pSData?1257+01H,R2
0004 8900     F     1150             MOV     pSData?1257+02H,R1
                    1151     ;---- Variable 'SubAddress?1256' assigned to Register 'R4/R5' ----
                    1152     ;---- Variable 'SlaveAddress?1255' assigned to Register 'R7' ----
                    1153     ; {uchar i;
                    1154                             ; SOURCE LINE # 369
                    1155     ; I2C_Start();
                    1156                             ; SOURCE LINE # 370
0006 120000   F     1157             LCALL   I2C_Start
                    1158     ; I2C_SendByte(SlaveAddress);    //send slave address(write device)
                    1159                             ; SOURCE LINE # 371
0009 120000   F     1160             LCALL   _I2C_SendByte
                    1161     ; I2C_ReceiveAck();
                    1162                             ; SOURCE LINE # 372
000C 120000   F     1163             LCALL   I2C_ReceiveAck
                    1164     ; 
                    1165     ; I2C_SendByte(SubAddress/256);    //send sub address
                    1166                             ; SOURCE LINE # 374
                    1167     ; I2C_ReceiveAck();
   

⌨️ 快捷键说明

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