sagsag211

    1. stm8s103的I2C通信问题! 3/8352 stm32/stm8 2012-07-04
      难道是我提的问题太菜了?哎
    2. stm8s103的I2C通信问题! 3/8352 stm32/stm8 2012-07-04
      /********************************************************************************************************* ** Function name:       I2C_ReadNByte ** Descriptions:        从有子地址器件任意地址开始读取N字节数据 ** input parameters:    sla         器件地址 **                      suba_type   子地址结构    1-单字节地址    3-8+X结构    2-双字节地址 **                      suba        器件子地址 **                      s           数据接收缓冲区指针 **                      num         读取的个数 ** Output parameters:   返回值为0时表示出错,为1时表示操作正确。 ** Returned value:      NONE *********************************************************************************************************/ INT8U I2C_ReadNByte (INT8U sla, INT32U suba_type, INT32U suba, INT8U *s, INT32U num) {     if (num > 0)                                                        /* 判断num个数的合法性          */     {                                                                   /* 参数设置                     */         if (suba_type == 1)         {                                                               /* 子地址为单字节               */             I2C_sla         = sla + 1;                                  /* 读器件的从地址,R=1          */             I2C_suba        = suba;                                     /* 器件子地址                   */             I2C_suba_num    = 1;                                        /* 器件子地址为1字节            */         }         if (suba_type == 2)         {                                                               /* 子地址为2字节                */             I2C_sla         = sla + 1;                                  /* 读器件的从地址,R=1          */             I2C_suba        = suba;                                     /* 器件子地址                   */             I2C_suba_num    = 2;                                        /* 器件子地址为2字节            */         }         if (suba_type == 3)         {                                                               /* 子地址结构为8+X              */             I2C_sla         = sla + ((suba >> 7 )& 0x0e) + 1;           /* 读器件的从地址,R=1          */             I2C_suba        = suba & 0x0ff;                             /* 器件子地址                   */             I2C_suba_num    = 1;                                        /* 器件子地址为8+x              */         }         I2C_buf     = s;                                                /* 数据接收缓冲区指针           */         I2C_num     = num;                                              /* 要读取的个数                 */         I2C_suba_en = 1;                                                /* 有子地址读                   */         I2C_end     = 0;                                                                         /* 清除STA,SI,AA标志位          */         LPC_I2C->CONCLR = (1
    3. stm8s103的I2C通信问题! 3/8352 stm32/stm8 2012-07-04
      主机从从机读数据采用突发发送后突发读时序:起始地址->从机地址/写控制命令->从机ACK->数据地址->从机ACK->起始地址->从机地址/读控制命令->ACK->从机发送数据->主机ACK...->非应答->STOP 按照以上方式,在我的课题应用之,扩展器PCA9548是作为从机了,从机地址是0XE0,通过扩展器扩展出来的8个i2c总线接口分别连接8个stm8s103,这8个接口的地址怎么定义?求助大侠们啊!

最近访客

< 1/1 >

统计信息

已有52人来访过

  • 芯积分:--
  • 好友:--
  • 主题:1
  • 回复:3

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言