note “注意事项” RT-Thread I2C 设备接口使用的从机地址均不包含读写位,读写位控制需修改标志flags。 代码语言:javascript 复制 #defineRT_I2C_WR0x0000/* 写标志*/#defineRT_I2C_RD(1u<<0)/* 读标志*/#defineRT_I2C_ADDR_10BIT(1u<<2)/* 10 位地址模式*/#defineRT_I2C_NO_START(1u<<4)/* ...
/** 程序清单: 这是一个 I2C 设备使用例程* 例程导出了 i2c_aht10_sample 命令到控制终端* 命令调用格式:i2c_aht10_sample i2c1* 命令解释: 命令第二个参数是要使用的I2C总 线设备名称, 为空则使用默认的I2C总 线设备* 程序功能: 通过 I2C 设备读取温湿度传感器 aht10 的温湿度数据并打印*/#include<rt...
note “注意事项” RT-Thread I2C 设备接口使用的从机地址均不包含读写位,读写位控制需修改标志flags。 #define RT_I2C_WR 0x0000 /* 写标志*/#define RT_I2C_RD (1u << 0) /* 读标志*/#define RT_I2C_ADDR_10BIT (1u << 2) /* 10 位地址模式*/#define RT_I2C_NO_START (1u << 4) /*...
由于I2C 可以控制多从机的属性,设备驱动模型分为 I2C总线设备(类似与Linux里面的I2C适配器) + I2C从设备; 系统I2C设备驱动主要实现 I2C 总线设备驱动,而具体的I2C 从设备的实现则调用I2C总线设备ops 访问I2C 总线设备 一般情况下 MCU 的 I2C 器件都是作为主机和从机通讯,在 RT-Thread 中将 I2C 主机虚拟为 I2C...
本文主要介绍RT-thread中IIC总线设备驱动,涉及到的主要文件有:驱动框架文件(i2c_core.c,i2c_dev.c,i2c-bit-ops.c,i2c_dev.h,i2c.h);底层硬件驱动文件(i2c_soft.c,i2c_soft.h)。这里的i2c_soft.c和i2c_soft.h是指利用MCU的GPIO口模拟IIC总线时序,而不是利用MCU的硬件IIC接口。应用IIC总线设备驱动时,需要...
很多东西都已经有了,我们就不重复造相同的轮子了,直接白嫖过来用。本节,我们将会学习到RT-Thread I2C总线设备的基本使用。 接下来,我们将基于RT-Thread Studio来构建。 2、开始实践 上一节我们已经熟悉了怎么创建工程和配置项目了,这节我们直接略过这两步操作,直接看硬件图。
IST8310 是一款由 ISentek 公司推出的 3 轴磁场传感器,尺寸为 3.03.01.0mm,支持快速 I2C 通信,可达 400kHz,14 位磁场数据,测量范围可达1600uT(x,y-axis)和 2500uT(z-axis), 最高 200Hz 输出频率。使用IST8310磁力计可以检测地磁场强度,用于计算磁场角度。
在使用 I2C 总线设备前需要根据 I2C 总线设备名称获取设备句柄,进而才可以操作 I2C 总线设备,查找设备函数如下所示, 1rt_device_t rt_device_find(const char* name); 1. 一般情况下,注册到系统的 I2C 设备名称为 i2c0 ,i2c1等,使用示例如下所示: ...
I2C 总线设备使用示例 I2C 设备的具体使用方式可以参考如下示例代码,示例代码的主要步骤如下: 首先根据 I2C 设备名称查找 I2C 名称,获取设备句柄,然后初始化 aht10 传感器。 控制传感器的 2 的函数为写传感器寄存器 write_reg() 和读传感器寄存器 read_regs(),这两个函数分别调用了 rt_i2c_transfer() 传输数据。
本文主要介绍RT-thread中IIC总线设备驱动,涉及到的主要文件有:驱动框架文件(i2c_core.c,i2c_dev.c,i2c-bit-ops.c,i2c_dev.h,i2c.h);底层硬件驱动文件(i2c_soft.c,i2c_soft.h)。这里的i2c_soft.c和i2c_soft.h是指利用MCU的GPIO口模拟IIC总线时序,而不是利用MCU的硬件IIC接口。应用IIC总线设备驱动时,需要...