目录
1、i2c软件驱动
从上一篇的《RT-Thread GD32F4xx I2C之硬件I2C驱动(eeprom)》中的介绍我们知道了,I2C驱动的两种实现方式。本次实现软件驱动的编写调试。软件I2C总线设备驱动使用GPIO模拟时序实现,在框架i2c-bit-ops.c中已经实现了时序,驱动中只需要实现对scl 和 sda引脚的设置及获取,并注册I2C总线设备即可。
同时,操作设备是AT24Cxx的eeprom设备,在RT-Thread软件包中有相应的驱动程序,本次调试也会使用。真正感受下RT-Thread的强大!
1.1 驱动文件
GD32F4xx的I2C驱动已经有大神编写了驱动,从RT-Thread的Github上可以搜索到,在rt-thread\bsp\gd32\arm\libraries\gd32_drivers路径下的drv_soft_i2c.c和drv_soft_i2c.h文件就是我们需要的驱动文件。
(1)gd32_bit_ops_default操作方法
static const struct rt_i2c_bit_ops gd32_bit_ops_default