2.控制风扇

您当前位置: 首页 > 树莓派散热扩展板 > 树莓派散热扩展板(C语言)

树莓派智能贴身管家需要正确插入到树莓派的GPIO口上,并且打开树莓派的I2C功能。

本次实验现象为控制风扇的转速,静止2秒后开始,每秒增加风扇转速,最高速时运行2秒后又变为停止。

 

一、文件传输(已经有文件可以忽略此步骤)

1. 电脑端安装WinSCP工具,连接树莓派后把资料中下载的temp_control.zip压缩包传到树莓派的pi目录下。树莓派与win电脑传输文件的方法请参考:

https://www.yahboom.com/build.html?id=2631&cid=308

image.png

2.解压文件

打开树莓派的终端,找到刚刚传进树莓派的temp_control.zip文件

image.png

输入以下命令解压

unzip temp_control.zip

image.png

 

二、编译和运行程序

1.进入文件夹并查看当前文件夹下的文件

cd temp_control/

ls

image.png

2.编译程序文件

gcc -o fan fan.c -lwiringPi

image.png

其中,调用gcc编译器,-o表示生成文件,后面加生成的文件名,fan.c是源程序,-lwiringPi是引用树莓派的wiringPi库。

3.运行程序

./fan

image.png

此时风扇会在两秒钟后启动,并且每秒都增加转速,直到最高速运行2秒,又变静止开始。

 

三、代码解读

1.初始化树莓派I2C配置

image.png

2.循环控制风扇转速,根据协议可知风扇速度等级,0x00关闭,0x01全速,0x02:20%速度,0x03:30%速度,…,0x09:90%速度

image.png

3.限制state大小,大于9则设置为0,实现循环效果

image.png