8,460
个编辑
更改
→PWM散热风扇的使用方法
<li><p>开发板上的风扇可以通过PWM来调节转速和开关,使用的PWM引脚为'''PWM3_IR_M1'''</p></li>
<li><p>Linux系统默认使用[https://github.com/orangepi-xunlong/linux-orangepi/blob/orange-pi-5.10-rk3588/drivers/hwmon/pwm-fan.c '''pwm-fan''']驱动来控制风扇,所使用的dts配置如下所示:</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>'''orange-pi-5.10-rk3588/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts'''</p>
:<p>fan: pwm-fan {</p>::<p>compatible = "pwm-fan";</p>::<p>#cooling-cells = <2>;</p>::<p>pwms = <&pwm3 0 50000 0>;</p>::<p>cooling-levels = <0 50 100 150 200 255>;</p>::<p>rockchip,temp-trips = <</p>:::<p>50000 1</p>:::<p>55000 2</p>:::<p>60000 3</p>:::<p>65000 4</p>:::<p>70000 5</p>::<p>>;</p> ::<p>status = "okay";</p>:<p>};</p>|}
<p>其中:</p>
<ol style="list-style-type: lower-alpha;">
<li><p>'''cooling-levels = <0 50 100 150 200 > 255>''':用来配置转速(pwm的占空比)的档位,档位数量和大小可以自己定义,这里配置6个档位,转速的范围是0-255。</p></li>
<li><p>'''rockchip,temp-trips''':用来配置CPU温度和风扇转速档位的对应关系,可以根据实际需要进行调整,上面的配置50度对应档位1,70度对对应档位5。</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''开机后如果发现风扇没有转是正常的,因为开机后CPU的温度一般都低于50度,只有当CPU的温度达到50度后,风扇才会开始转。'''</p>
<p>'''使用下面的命令可以让所有CPU都跑满,然后就能看到风扇会开始工作了:'''</p>
<p>orangepi@orangepi:~$ '''for i in $(seq 0 $(( $(nproc --all) - 1)) ); do (taskset -c $i yes > /dev/null &); done'''</p></big>|}</li></ol>
</li></ol>