diff --git a/docs/Application_guide/zh/hardware/peripheral-interfaces/IIC.md b/docs/Application_guide/zh/hardware/peripheral-interfaces/IIC.md index eeaa3e9aef3c22bc24358f6b74cda635b85e8caa..27e0b38ee2c67fdec2c44e468a3673d93ce8164f 100644 --- a/docs/Application_guide/zh/hardware/peripheral-interfaces/IIC.md +++ b/docs/Application_guide/zh/hardware/peripheral-interfaces/IIC.md @@ -3,7 +3,7 @@ ## IIC 概述 IIC(Inter-IntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器以及其外围设备,IIC也被称为I2C,其实两者是完全相同的,只是名词不一样而已。 -它是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据。IIC 接口使用主机和从机的概念,通常一个主机会搭配一个或多个从机,主机负责启动和结束通信会活,QuecPython 支持的蜂窝通信模组目前仅做主机。 +它是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据。IIC 接口使用主机和从机的概念,通常一个主机会搭配一个或多个从机,主机负责启动和结束通信会话,QuecPython 支持的蜂窝通信模组目前仅做主机。 IIC拓扑结构如下: @@ -116,11 +116,11 @@ QMA7981有以下特点: #### QMA7981原理图 + QMA7981使用时需注意如下几点: - QMA7981有一路IIC,模组可通过IIC获取QMA7981数据。 - - QMA7981最多支持两路外部中断,且可以设置高电平中断有效或者低电平中断有效。注意设置QMA7981中断电平配置需要和模组这边外部中断检测对应,如:设置QMA7981中断有效电平为 -高电平,则模组外部中断引脚需要设置为低电平,上升沿触发。 + - QMA7981最多支持两路外部中断,且可以设置高电平中断有效或者低电平中断有效。注意设置QMA7981中断电平配置需要和模组这边外部中断检测对应,如:设置QMA7981中断有效电平为高电平,则模组外部中断引脚需要设置为低电平,上升沿触发。 ```python self.extint = ExtInt(INT1, ExtInt.IRQ_RISING, ExtInt.PULL_PD, self.ext_cb) data = self._read([self.INTPIN_CONF_ADDR], 1) @@ -129,8 +129,8 @@ data[0] |= 0x01 print('INTPIN_CONF_ADDR: {}'.format(data)) self._write([self.INTPIN_CONF_ADDR], [data[0]]) ``` -- 当AD0接地时 IIC从机地址为0x12,当AD0接到VDDIO时从机地址为0x13 -- QMA7981有两种工作模式:待机模式(Standby Mode)和激活模式(Active Mode)。QMA7981上电或者重启之后默认进入待机模式,可以通过设置PM寄存器(0x11)值进入激活模式 +- 当AD0接地时 IIC从机地址为0x12,当AD0接到VDDIO时从机地址为0x13。 +- QMA7981有两种工作模式:待机模式(Standby Mode)和激活模式(Active Mode)。QMA7981上电或者重启之后默认进入待机模式,可以通过设置PM寄存器(0x11)值进入激活模式。 - 当QMA7981水平静置条件下,由于地心引力的影响,Z轴会有一个g的加速度,X、Y轴为0。 @@ -139,7 +139,7 @@ QMA7981详细驱动可参考[QMA7981](https://github.com/QuecPython/examples/tre ### 温湿度传感器AHT10 AHT10 配有一个全新设计的 ASIC专用芯片、一个经过改进的MEMS半导体电容式湿度传感元件和一个标准的片上温度传感元件。主要引用场景有: -暖通空调 、除湿器、测试及检测设备、消费品、汽车 、自动控制、数据记录器、气象站、家电、湿度调节、医疗及其他相关温湿度检测控制 +暖通空调 、除湿器、测试及检测设备、消费品、汽车 、自动控制、数据记录器、气象站、家电、湿度调节、医疗及其他相关温湿度检测控制。 AHT10工作流程如下: - 给传感器上电,上电后传感器最多需要20ms时间(此时SCL为高电平)以达到空闲状态即做好准备接收由主机 (蜂窝模组)发送的命令。 @@ -167,20 +167,14 @@ def Trigger_measurement(self): self.aht10_transformation_temperature(r_data[1:6]) ``` -- 主机获取AHT10数据后,需要对原始数据进行转化,得到需要的温湿度信息。 - -**相对湿度 RH** 根据 SDA 输出的相对湿度信号 SRH 通过如下公式计算获得 +- 主机获取AHT10数据后,需要对原始数据进行转化,得到需要的温湿度信息。**相对湿度 RH** 根据 SDA 输出的相对湿 +度信号 SRH 通过如下公式计算获得 + -$$ -\mathrm{RH} \left ( {\%} \right ) = \frac{\mathrm{S} _{\mathrm{RH} } }{2^{20} } \times 100 \% -$$ **温度 T**可以通过将温度输出信号 ST 代入到下面的公式计算得到 - -$$ -\mathrm{T} \left ( \mathrm{^\circ C} \right ) = \frac{\mathrm{S} _{\mathrm{T} } }{2^{20} } \times 200 - 50 -$$ + ```python def aht10_transformation_temperature(self, data):