Discuz! Board

标题: NRF52832的twi(IIC)写数据会连续发送2次SLAVE_ADD [打印本页]

作者: qiang4119    时间: 2020-12-4 09:54
标题: NRF52832的twi(IIC)写数据会连续发送2次SLAVE_ADD
  1. errCode = nrf_drv_twi_tx(&s_twiHandle, slaveAddr, ®Addr, 1, true);
  2.     if(errCode != NRF_SUCCESS)
  3.     {

  4.         return 1;
  5.     }

  6.     while((!s_twiTxDone) && --timeout);        
  7.     if(!timeout)
  8.     {

  9.         return 2;
  10.     }
  11.     s_twiTxDone = false;
复制代码
用17.0.2的库,写I2C的时候,看波形显示发了两次从机地址再发寄存器地址,这是为什么?以下是配置
  1. void I2C_Init(void)
  2. {
  3.     uint32_t errCode;

  4.         
  5.     // 初始化TWI配置结构体
  6.     const nrf_drv_twi_config_t twiConfig =
  7.     {
  8.         .scl                = BOARD_TWI_SCL_IO,             // 配置TWI SCL引脚
  9.         .sda                = BOARD_TWI_SDA_IO,             // 配置TWI SDA引脚
  10.         .frequency          = NRF_DRV_TWI_FREQ_100K,        // 配置TWI时钟频率
  11.         .interrupt_priority = APP_IRQ_PRIORITY_HIGH         // TWI中断优先级设置
  12.     };
  13.    
  14.     // 初始化TWI
  15.     errCode = nrf_drv_twi_init(&s_twiHandle, &twiConfig, twi_handleEvent, NULL);
  16.     APP_ERROR_CHECK(errCode);
  17.    
  18.     // 使能TWI
  19.     nrf_drv_twi_enable(&s_twiHandle);

  20. }
复制代码

作者: qiang4119    时间: 2020-12-4 10:29
换成15.3.0的库也是一样的,配置上的问题吗?
作者: fengjunzhe    时间: 2020-12-12 20:51
这啥也看不出来呀;
发两次从机地址,读写位有变化吗




欢迎光临 Discuz! Board (http://www.qfv8.com/) Powered by Discuz! X3