背景:最近项目基于海思HI3536芯片做叻一款设备原本设计了CPLD逻辑控制可以cpu风扇的pwm频率调速,后面由于降成本的原因砍掉了CPLD逻辑同时竞品的cpu风扇的pwm频率也没有调速功能,默認全速转为了差异化,项目组决定用GPIO模拟PWM波做个简单的调速功能当然精度要求不是很严格。
为了精度考虑将功能放在了内核态实现,同时采用内核定时器根据目标速度来动态调整GPIO的高低时间达到模拟调整占空比进而实现PWM波形的功能,目前内核频率设置成了100HZ,功能验证OK信号质量等由于项目还处于前期预研阶段,硬测没有投入后续待项目正式启动后再根据信号质量的测试结果决定是否调整频率。(然後后续再补充用户态接口结合cpu风扇的pwm频率调速算法实现完整的自动调速功能--这部分工作这里就不体现了)
点击(此处)折叠或打开
调试问题:早期调试过程中,高低电平间的保持时间采用了mdelay函数结果发现时间存在不精确的情况,同时CPU占用率偏高因为
通过动态调整定时器的expires 来实现,实测精度比较高
注册家电维修技术论坛与同行暢聊维修技术,享更多技术论坛功能您需要 才可以下载或查看,没有帐号 FG是转速信号,用于CPU侦测转速转速=频率*30(4极cpu风扇的pwm频率)。PWM通过方波占空比控制转速蓝线PWM接地--最低转速,蓝线PWM不接最高转速 那么问题来了两种方案1.,蓝线pwm线直接用电位器接地效果好吗 2.自己用3845芯片和mos管弄出个pwm脉冲占空比控制cpu风扇的pwm频率的蓝线pwm线电位器调速 第二种方案制作麻烦点! 请问各位两种效果是一样吗?还是各有什么优缺點 |