藍芽BLE---DA14683的IIC主機通訊講解
阿新 • • 發佈:2018-12-29
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主機通訊介紹完畢。