蓝牙BLE---DA14683的IIC主机通信讲解

版权声明:转载请注明出处。技术交流加微信:life5270 https://blog.csdn.net/JaLLs/article/details/84873468

DA14683的IIC主机通信例程

Date: 2018.12.07

Create: Jim

导入例程

首先导入ble_peripheral例程或者pxp_reporter例程

再到以下位置把硬件IIC的宏定义打开:

获取IIC例程源码

到以下地址复制代码,然后分别做成demo_i2c.c和demo_i2c.h

https://blog.csdn.net/JaLLs/article/details/84873407

把h文件和c文件分别复制近以下目录:

初始化IIC

到main.c文件中,首先添加头文件:

然后到periph_init函数中添加初始化语句:

到此,IIC驱动就初始化完成了。

Demo_i2c.c文件讲解

修改IIC引脚

在以下位置修改IIC的两个引脚定义:

修改从机地址

在以下位置修改从机地址:

demo_i2c_init

初始化函数实体如下:

cfg结构体定义了IIC的通信速率,模式,地址位数,和工作模式。

cfg结构体初始化参数设置完成以后便调用hw_i2c_init函数初始化IIC参数。

i2c_write_reg

以下是IIC主机发送数据给从机的函数接口:

第一个形参reg是你要写进的从设备的寄存器(说白了就是起始地址)

第二个形参val就是要写的数据了。

第三个形参len就是写入的数据长度。

需要研究最终的数据发送实现方式,可以研究hw_i2c_write_buffer_sync这个函数。

i2c_read_reg

以下是IIC主机读取从机设备数据的接口:

第一个形参reg是要读的从设备的寄存器(起始地址)

第二个形参val是读取的数据存放的指针。

第三个形参len就是读取的数据长度。

需要研究最终的数据读取实现方式,可以研究hw_i2c_read_buffer_sync这个函数。

到此,我们的IIC主机通信介绍完毕。

 

猜你喜欢

转载自blog.csdn.net/JaLLs/article/details/84873468