Rockchip平台cpu散热风扇随温度自动调速的配置方法
Rockchip平台cpu散热风扇随温度自动调速的配置方法
CPU的散热风扇硬件是有一个PWM来控制转速,Android的内核中有对应的驱动,Rockchip RK3588上面已经实现根据cpu温度自动调速的功能,下面介绍rockchip平台上面如何进行软件配置。
注:根据cpu温度调整风扇转速的功能在RK3588 Android2的 SDK的RKR12版本上才有支持。
1,确认kernel的config配置打开如下配置:
arch/arm64/configs/rockchip_defconfig
CONFIG_SENSORS_PWM_FAN=y
2,DTS中加入fan的配置
fan: pwm-fan {compatible = "pwm-fan";#cooling-cells = <2>;pwms = <&pwm9 0 50000 0>;cooling-levels = <0 50 100 150 200 255>;rockchip,temp-trips = <50000 155000 260000 365000 470000 5>;};
其中:
- pwms = <&pwm11 0 50000 0>; 是配置使用那个pwm
- cooling-levels = <0 50 100 150 200 255>;是配置转速(pwm的占空比)的档位,档位数量和大小可以自己定义,这里配置6个档位,转速的范围是0-255。
- rockchip,temp-trips 是配置cpu温度和风扇转速档位的对应关系,可以根据实际需要进行调整,如50度对应档位1。
3,配置打开PWM
这里风扇接的pwm11,所以dts中要配置打开pwm11,并配置对应的pinctrl。 不同的硬件设计使用的pwm可能不一样,需要根据实际硬件设计来对应配置。
&pwm11 {pinctrl-0 = <&pwm11m1_pins>;status = "okay";
};
4,调试
可以通过下面的节点查看风扇与温度对应的档位信息
rk3588_s:/ # cat /sys/class/thermal/cooling_device0/
cur_state max_state power/ subsystem/ type uevent
//当前风扇档位
1|rk3588_s:/ # cat /sys/class/thermal/cooling_device0/cur_state
0
//最新档位数
rk3588_s:/ # cat /sys/class/thermal/cooling_device0/max_state
6
可以echo 0-6的值到/sys/class/thermal/cooling_device0/cur_state进行手动调试转速
Rockchip平台cpu散热风扇随温度自动调速的配置方法相关推荐
- jetson nano 风扇自动调速
jetson nano 风扇自动调速 概述 一.临时调试 二.驱动脚本 概述 jetson nano一定要配一个可调风扇,jetson nano散热不好极容易死机!! 一.临时调试 PWM范围:0-2 ...
- 基于Arduino的自动调速风扇
好久没有更新了,家里实在太乱,最近趁着618活动,买了一堆收纳抽屉和置物架,把家里彻底收拾了一下,然后客厅就成了这个奇葩样子,注孤生的节奏了. 话不多说,夏天到了,天气逐渐热起来,风扇成了必不可少的消 ...
- 【毕业设计】基于超声波与红外的自动调速风扇系统(代码开源) -物联网 嵌入式 stm32
文章目录 1 简介 1 设计概要 2 系统设计 2.1 系统供电问题 2.2 自动/手动模式的切换 2.3 PWM信号的产生 2.4 单片机内部资源的分配 三.硬件搭建 3.1 单片机最小系统 3.2 ...
- 毕业设计 超声波红外自动调速风扇系统
文章目录 1 简介 1 设计概要 2 系统设计 2.1 系统供电问题 2.2 自动/手动模式的切换 2.3 PWM信号的产生 2.4 单片机内部资源的分配 三.硬件搭建 3.1 单片机最小系统 3.2 ...
- Jetson Nano-PWM自动调速
由于Nano散热差时,会造成宕机等问题,所以必须配上风扇,PWM最佳 手动设置 PWM范围:0 - 255 最小0即不转,255为最大转速 sudo sh -c 'echo 255 > /sys ...
- 基于51的多功能小风扇,可以实现定时,摇头,超声波自动调速等功能
最近也是想加入一个实验室,考核题目就是写一个小风扇!下面是题目要求 由于我也是大一新生,也就自学了一点51和c语言知识,代码写的可能有点拙,还请多多指教! #include <REGX52.H& ...
- 全志平台GPIO 在sys_config.fex中的具体定义及配置方法
全志平台GPIO 在sys_config.fex中的具体定义及配置方法 1.GPIO的定义与使用 1.1.GPIO在sys_config.fex 中的定义 在对应方案中的sys_config.fex ...
- 计算机cpu散热方式,调整电脑CPU散热风扇转速的简单方法【图文】
电脑风扇对于电脑的使用和寿命有着密不可分的关系,怎么调节电脑的风扇的转速来控制电脑CPU的散热?首先电脑风扇转速的控制,通常有两种方法可以进行调节,第一种就是一刀切式的调整,直接到BIOS里面手动将风 ...
- NanoPC-T4 上实现pwm风扇自动调速
友善之臂推出的 NanoPC-T4 是一款采用 瑞芯微 RK3399 方案的嵌入式开发板,性能强大.发热量也杠杠的. 其板载PWM调速风扇接口采用GH1.25 插头,支持PWM调速.但查看了下 dts ...
- 使用postcss-plugin-px2rem和postcss-pxtorem(postcss-px2rem)-px自动转换rem的配置方法-vue-cli3.0
在vue-cli3.0中使用postcss-plugin-px2rem 插件 插件的作用是 自动将vue项目中的px转换为rem postcss-plugin-px2rem优势: 因为 postcs ...
最新文章
- 03-VTK基础概念(2)
- linux清除邮件队列
- 为Linux用ISO制作U盘启动及基本原理
- PL/SQL学习笔记(四)
- 30岁学python编程_朋友问我,你都30岁了学编程来得及吗
- 【算法】一个简单的Resnet原理
- js sort方法根据数组中对象的某一个属性值进行排序(实用方法)
- 《MySQL——查询长时间不返回的三种原因与查询慢的原因》
- videojs暂停时显示大按钮_紧急!西安老人扶梯上仰面向后晕倒,这个救命按钮很多人不知道...
- ubuntu 9.10安装jdk1.5
- ubuntu18.04静态ip设置
- MySQL的初次使用
- 题5 正确的Java垃圾回收说法
- promise is not a constructor
- DLL中无法定位程序输入点inflateReset2于动态链接库
- 学透for循环-传统for循环与增强for循环
- 拥有有趣灵魂的程序员们,程序员访谈(一)
- ViewBinding和DataBinding的理解和区别
- Android开发 报错: xxx does not have a NavController set on xxx
- 用python画玫瑰花的简笔画-只用C++和Python,让你的简笔画实时动起来!
热门文章
- 新版捷兔云支付网站源码开源版 第三方支付源码 第四方支付源码 免签约支付源码
- mysql调查问卷数据库设计_客服-问卷调查-问题答案表 - 数据库设计 - 数据库表结构 - 果创云...
- 2022年G2电站锅炉司炉试题及在线模拟考试
- RPLIDAR在ROS下快速上手教程
- 【新品发布】行业领先数据恢复“先锋”震撼来袭
- ubuntu中安装pdf虚拟打印机
- 时间序列分析系列(一) : 基本概念
- ICLR 2021 | 自解释神经网络—Shapley Explanation Networks
- arduino两轮平衡车(二)-- 原理讲解
- Android虚拟机上安装apk软件指南