为什么我在软件配置从地址后里面地址变成了两倍?

2019-07-18 17:23发布

为什么,在软件配置从地址后,打开keil,里面地址变成两倍
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
TOPCB
2019-07-19 01:27
楼主,I2C硬件的地址占用7位,如下图所示,从代码上来看是直接左移了一位。
/*---------------------------- I2Cx OAR1 Configuration ---------------------*/
  /* Configure I2Cx: Own Address1 and addressing mode */
  hi2c->Instance->OAR1 = (hi2c->Init.AddressingMode | hi2c->Init.OwnAddress1);

  /*---------------------------- I2Cx OAR2 Configuration ---------------------*/
  /* Configure I2Cx: Dual mode and Own Address2 */
  hi2c->Instance->OAR2 = (hi2c->Init.DualAddressMode | hi2c->Init.OwnAddress2);

一周热门 更多>