TI中文支持网
TI专业的中文技术问题搜集分享网站

motorware 中添加I2C

我想在motorware proj_lab3a例程中加入I2C程序;

1.  在hal_obj.h  中的HAL_Obj结构体添加了

    I2C_Handle i2cHandle;
    I2C_Obj i2c;

2.在hal.c中添加了

 硬件初始化

// initialize the I2C
  obj->i2cHandle = I2C_init((void *)I2CA_BASE_ADDR,sizeof(I2C_Obj));

//  配置了IIC

  HAL_setupI2C(handle);

3.  程序编辑通过;

    但在仿真时IIC寄存器并没有写成功,求助是什么原因

笨鸟:

这样初始化,应该是不完全的,还是没初始化好。可以参考官方I2C的例程。在仿真时IIC寄存器并没有写成功,说明你还是没有执行写的程序。

我想在motorware proj_lab3a例程中加入I2C程序;

1.  在hal_obj.h  中的HAL_Obj结构体添加了

    I2C_Handle i2cHandle;
    I2C_Obj i2c;

2.在hal.c中添加了

 硬件初始化

// initialize the I2C
  obj->i2cHandle = I2C_init((void *)I2CA_BASE_ADDR,sizeof(I2C_Obj));

//  配置了IIC

  HAL_setupI2C(handle);

3.  程序编辑通过;

    但在仿真时IIC寄存器并没有写成功,求助是什么原因

Young Hu:

检查 I2CA_BASE_ADDR地址对不对?

obj->i2cHandle = I2C_init((void *)I2CA_BASE_ADDR,sizeof(I2C_Obj));

检查下面这个函数。

  HAL_setupI2C(handle);

我想在motorware proj_lab3a例程中加入I2C程序;

1.  在hal_obj.h  中的HAL_Obj结构体添加了

    I2C_Handle i2cHandle;
    I2C_Obj i2c;

2.在hal.c中添加了

 硬件初始化

// initialize the I2C
  obj->i2cHandle = I2C_init((void *)I2CA_BASE_ADDR,sizeof(I2C_Obj));

//  配置了IIC

  HAL_setupI2C(handle);

3.  程序编辑通过;

    但在仿真时IIC寄存器并没有写成功,求助是什么原因

wujie xi:

回复 Young Hu:

 I2CA_BASE_ADDR地址对

 

HAL_setupI2C(handle);  这个地址是对的。用的是24C256

上述寄存器仿真没有写成功

赞(0)
未经允许不得转载:TI中文支持网 » motorware 中添加I2C
分享到: 更多 (0)