DW_APB_IIC作为master,IIC_VIP作为slave,mastr发出地址后,VIP端返回NACK,master发出的地址就是slave_cfg设置的地址,并且全都没有使能10bit寻址。

DW_APB_IIC作为master,IIC_VIP作为slave,mastr发出地址后,VIP端返回NACK,master发出的地址就是slave_cfg设置的地址,并且全都没有使能10bit寻址。

关注让【道友老李】来帮你解答,本回答参考gpt编写,并整理提供,如果还有疑问可以点击头像关注私信或评论。
如果答案让您满意,请采纳、关注,非常感谢!问题描述及分析:
// master发送地址给slave
void master_send_address(uint8_t slave_addr) {
// 写入从机地址
I2C_WriteData(DW_APB_IIC, slave_addr << 1);
// 标记要发送数据
I2C_SetDirection(DW_APB_IIC, I2C_DIRECTION_WRITE);
// 产生起始信号
I2C_GenerateStart(DW_APB_IIC);
// 等待ACK位
while (!I2C_CheckEvent(DW_APB_IIC, I2C_EVENT_MASTER_ACKNOWLEDGEMENT_FAILURE));
// 产生停止信号
I2C_GenerateStop(DW_APB_IIC);
}
以上是解答问题的基本格式,如果需要更具体的代码实现或者其他方面的帮助,请提供更多信息。