• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Unionpi_Tiger—i2c实验
2
3## 										读取温湿度传感器——开发笔记
4
5
6
7#### 第一步:先了解传感器硬件信息
8
9![i2c_1](../figures/i2c/i2c-1.png)
10
11![image-20220729155106791](../figures/i2c/i2c-2.png)![image-20220729155949313](../figures/i2c/i2c-3.png)
12
13![image-20220729160036896](../figures/i2c/i2c-4.png)
14
15![image-20220729161158375](../figures/i2c/i2c-5.png)
16
17<img src="../figures/i2c/i2c-6.png" alt="image-20220729161656087" style="zoom:33%;" />
18
19#### 第二步:了解I2C通信协议及如何使用I2C与这个芯片通信
20
21​																				I2C的总线结构图
22
23![image-20220729161921243](../figures/i2c/i2c-7.png)
24
25![image-20220729162315134](../figures/i2c/i2c-8.png)
26
27![image-20220729162341360](../figures/i2c/i2c-9.png)
28
29![image-20220729162617160](../figures/i2c/i2c-10.png)
30
31![image-20220729163016371](../figures/i2c/i2c-11.png)
32
33**简单总结**:先发从机地址选定芯片-->发送控制命令-->读取芯片内部寄存器的值(读取温湿度)-->显示出来
34
35
36
37#### 第三步:了解linux环境下的i2c应用开发
38
39​		![image-20220729172458364](../figures/i2c/i2c-12.png)
40
41
42
43![image-20220729165227550](../figures/i2c/i2c-13.png)
44
45
46
47![image-20220729165327637](../figures/i2c/i2c-14.png)
48
49
50
51![image-20220729165430480](../figures/i2c/i2c-15.png)
52
53
54
55PS:sample中使用的是linux中i2c子系统的ioctl编写接口
56
57
58
59![image-20220729165835934](../figures/i2c/i2c-16.png)
60
61
62
63![image-20220729170248057](../figures/i2c/i2c-17.png)
64
65
66
67![i2c_2](../figures/i2c/i2c-18.png)
68
69![image-20220729172755177](../figures/i2c/i2c-19.png)
70
71
72
73
74
75​         **先发从机地址选定芯片-->发送控制命令-->读取芯片内部寄存器的值(读取温湿度)-->显示出来**
76
77