AZJH

    1. 第五篇 GD32L23x的I2C使用-读写DHT12 3/9402 GD32 MCU 2022-10-27
      大佬,我一直卡在检测状态标志位是怎么回事,求回复!以下是我的源码 void mt30d_transfer_data(uint8_t addr,uint8_t data_len,uint8_t* data) { uint8_t i; //设置从机地址和执行写操作 i2c_master_addressing(I2C1, addr, I2C_MASTER_TRANSMIT); //设置写的数据字节数 i2c_transfer_byte_number_config(I2C1,data_len);   //等待总线空闲 while(i2c_flag_get(I2C1, I2C_FLAG_I2CBSY)); //发送start信号 i2c_start_on_bus(I2C1); //等待数据寄存器空 I2C_STAT(I2C1) |= I2C_STAT_TBE; while(!i2c_flag_get(I2C1, I2C_FLAG_TBE)); //开始向寄存器中写入数据 for(i=0;i<data_len;i++){ i2c_data_transmit(I2C1,*( data+i)); //等待数据寄存器空 while(!i2c_flag_get(I2C1, I2C_FLAG_TI)); } //等待发送完成 while(!i2c_flag_get(I2C1, I2C_FLAG_TC)); //发送stop信号 i2c_stop_on_bus(I2C1); while(!i2c_flag_get(I2C1, I2C_FLAG_STPDET)); i2c_flag_clear(I2C1, I2C_FLAG_STPDET); }

最近访客

现在还没有访客

< 1/0 >

统计信息

已有--人来访过

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

留言

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


现在还没有留言