标题: 暴力改电风扇PWM调速 [打印本页]

作者: 高低都不调    时间: 2018-9-18 16:44
标题: 暴力改电风扇PWM调速
不是我写的程序,网上的程序小小改变了一下芯片用的STC15F104
风扇淘宝买的,卖家将调速线剪了。我重新上。
程序不完美的地方,速度反馈线没有利用。调速按键不好使。欢迎大神指点。

制作出来的实物图如下:


单片机源码:
  1. //晶振12MHz
  2. //在P1_0输出20KHz,0-255级可调占空比 每一级0.39%
  3. #include<at89x51.h>
  4. sbit L1=P3^3;//档位显示LED
  5. sbit L2=P3^4;
  6. sbit L3=P3^5 ;
  7. unsigned char PWM=0x01;//PWM的百分比,开机默认风力
  8. unsigned int cnt;

  9. void InitT0(void)
  10. {
  11. TMOD=0x02;//定时器0工作方式2 8位自动重装
  12. TH0=206;//pwm 50us 20khz
  13. TL0=206;
  14. TR0=1;//开始计时
  15. ET0=1;//允许定时器中断
  16. EA=1;//开启总中断
  17. }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
  18. void main(void)
  19. {
  20. InitT0();//初始化T0定时器
  21. IT0=1;
  22. EX0=1;
  23. while(1)
  24. {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 -
  25. }
  26. }
  27. void Timer0(void) interrupt 1//用于PWM的定时器
  28. {
  29. static unsigned char counter=0;//记录中断次数
  30. counter++;
  31. if(counter >= PWM) P3_1 = 0; else P3_1 = 1;
  32. }

  33. void INTERR(void) interrupt 0
  34.         {
  35.         cnt++;
  36.                 {
  37.                 switch(cnt)
  38.                         {
  39.                          case 1:PWM=25;L1=0;L2=1;L3=1;break;
  40.                          case 2:PWM=100;L1=1;L2=0;L3=1;break;
  41.                          case 3:PWM=255;L1=1;L2=1;L3=0;cnt=0;break;
  42.                          default:break;
  43.                         }
  44.                 }
  45.         }
复制代码


               




作者: wangxindir    时间: 2018-9-19 08:35
我前一阵鼓捣开关电源,一直有个想法,就是利用废旧开关电源IC调节占空比,通过取压反馈来调节,用开关电源上自带的开关管控制风扇, 感觉可行吗?最近天天看孩子,没时间试。
作者: wss6331989    时间: 2018-9-19 09:37
很给力
作者: 高低都不调    时间: 2018-9-19 13:20
wangxindir 发表于 2018-9-19 08:35
我前一阵鼓捣开关电源,一直有个想法,就是利用废旧开关电源IC调节占空比,通过取压反馈来调节,用开关电源 ...

用TL494应该可以。不用单片机可以接可调调占空比。
作者: 高低都不调    时间: 2018-9-20 13:39
perfect123 发表于 2018-9-19 15:07
这么大一点的风扇你是用来吹蚊子的吗?如果真的想搞,直接网上买那个pwm的功率模块啊,叫大功率mos管,才2 ...

别看风扇小,风力可不小。实测电流达2a。噪音想飞机,出门带上还是挺实用的
作者: 拼搏83    时间: 2018-10-13 11:36
楼主有图吗想做一个玩玩
作者: 刷新中    时间: 2020-12-16 16:43
感谢楼主的分享。收藏、值得学习
作者: SHANWAZI    时间: 2021-1-3 21:00
兄弟为什么编译不过呢     那个while(){}里面是不是少了点什么?
作者: Highnose    时间: 2021-1-4 17:13
我以为是交流呢
作者: 刘工程    时间: 2021-1-12 15:04
些标题只能搏人眼球:暴力改电风扇PWM调速,一看不到啥暴力在哪,二电风扇只是一个散热小风扇,没啥实用价值,三还花一堆时间写一堆代码,不如花一两块钱直接买一片PWM IC芯片实际。
作者: 吴刚童    时间: 2021-1-21 10:56
DIY精神,不错。五年级的学生玩的东西。大神出来一顿猛损。各玩各的。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1