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

📄 cat1161.lst

📁 压缩包中包括多个常用的汇编
💻 LST
📖 第 1 页 / 共 2 页
字号:
 203          /*  spot          2005-06-20     Creat Inital version. (Version 1.0)        */
 204          /****************************************************************************/
 205          void write_iic_data(u_char write_data[], u_char address, u_char num)
 206          {
 207   1          u_char n;
 208   1      
 209   1          iic_start();
 210   1          iic_send_byte(0xa0);
 211   1          iic_wait_ack();
 212   1          iic_send_byte(address);
 213   1          iic_wait_ack();
 214   1      
 215   1          for(n=0; n<num; n++)
 216   1          {
 217   2              iic_send_byte(write_data[n]);
 218   2              iic_wait_ack();
 219   2          }
 220   1      
 221   1          iic_stop();
 222   1      }
 223          
 224          /****************************************************************************/
 225          /* 函数名:read_iic_data                                                    */
 226          /* 功  能:从iic设备读取N个字节                                             */
 227          /* 作  者:spot                                                             */
 228          /* 输  入:                                                                 */
 229          /*         read_data               存放读取字节的数组                       */
 230          /*         address                 指定从address处开始读取                  */
 231          /*         num                     读取的字节数                             */
 232          /*                                                                          */
 233          /* 输  出:无                                                               */
 234          /*                                                                          */
 235          /* 历史记录:                                                               */
 236          /*  spot          2005-06-20     Creat Inital version. (Version 1.0)        */
 237          /****************************************************************************/
 238          void read_iic_data(u_char read_data[], u_char address, u_char num)
 239          {
 240   1          u_char n;
 241   1      
C51 COMPILER V6.12  CAT1161                                                                09/24/2005 15:47:31 PAGE 5   

 242   1          iic_start();
 243   1          iic_send_byte(0xa0);
 244   1          iic_wait_ack();
 245   1          iic_send_byte(address);
 246   1          iic_wait_ack();
 247   1      
 248   1          iic_start();
 249   1          iic_send_byte(0xa1);
 250   1          iic_wait_ack();
 251   1      
 252   1          for (n=0; n<num; n++)
 253   1          {
 254   2          	read_data[n] = iic_receive_byte();
 255   2      
 256   2          	if (n != (num - 1))     /* 最后一个数据不应答 */
 257   2          	{
 258   3          	    iic_ack();
 259   3          	}
 260   2          }
 261   1      
 262   1          iic_no_ack();
 263   1          iic_stop();
 264   1      }
 265          
 266          main()
 267          {
 268   1          u_char test_write[16];
 269   1          u_char test_read[16];
 270   1          u_int i;
 271   1      
 272   1          /* iic读写函数单步调试,可以观看写入数据与读出数据结果 */
 273   1          while(1)
 274   1          {
 275   2          	for (i=0; i<16; i++)
 276   2          	{
 277   3          	    test_read[i]  = 0;
 278   3                  test_write[i] = i;
 279   3          	}
 280   2          	write_iic_data(test_write, 0, 16);
 281   2             
 282   2              read_iic_data(test_read, 0, 16);
 283   2      
 284   2          	for (i=0; i<16; i++)
 285   2          	{
 286   3          	    test_write[i] = i + 16;
 287   3          	    test_read[i]  = 0;
 288   3          	}
 289   2          	write_iic_data(test_write, 16, 16);
 290   2             
 291   2          	read_iic_data(test_read, 16, 16);
 292   2          	read_iic_data(test_read, 0, 16);
 293   2          }
 294   1      }
C51 COMPILER V6.12  CAT1161                                                                09/24/2005 15:47:31 PAGE 6   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
iic_no_ack . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
T2 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
u_long . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4
u_short. . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
IE . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
_read_iic_data . . . . . . . . . . . .  PUBLIC   CODE   PROC     000BH  -----
  read_data. . . . . . . . . . . . . .  AUTO     DATA   PTR      0000H  3
  address. . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0004H  1
  num. . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0004H  1
  n. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0004H  1
iic_receive_byte . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  i. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
  ddata. . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0006H  1
EXF2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CEH  1
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
IP . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
_write_iic_data. . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  write_data . . . . . . . . . . . . .  AUTO     DATA   PTR      0000H  3
  address. . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0004H  1
  num. . . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0004H  1
  n. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0004H  1
u_int. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
T2EX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  test_write . . . . . . . . . . . . .  AUTO     DATA   ARRAY    0000H  16
  test_read. . . . . . . . . . . . . .  AUTO     DATA   ARRAY    0010H  16
  i. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_INT    0020H  2
C_T2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C9H  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
RCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CDH  1
TCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CCH  1
SCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0098H  1
TCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0088H  1
_iic_send_byte . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  sbyte. . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
  i. . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0006H  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
CP_RL2 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C8H  1
iic_ack. . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
iic_start. . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
C51 COMPILER V6.12  CAT1161                                                                09/24/2005 15:47:31 PAGE 7   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
ET2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ADH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
TF2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CFH  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
iic_wait . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0007H  -----
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
PT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
PT2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BDH  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
SDA. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0085H  1
TR2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CAH  1
PX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
iic_wait_ack . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0012H  -----
  errtime. . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
iic_stop . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
SCL. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0084H  1
EXEN2. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CBH  1
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
T2CON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C8H  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
u_char . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1
PSW. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D0H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    388    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      44
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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