标题: 为什么这个15单片机程序驱动不了无刷电机? [打印本页]

作者: luo6824791    时间: 2018-9-4 19:09
标题: 为什么这个15单片机程序驱动不了无刷电机?
这个是输出PWM控制有刷空心杯电机的程序,我把它用来换成无刷电机的就不行了,我用串口改变PWM的值后我用示波器发现是方波了,为什么无刷电机就不转呢
如果要修改的话怎么改

单片机源程序:
  1. #include "STC15.h"
  2. #include "intrins.h"
  3. #define FOSC 22118400L
  4. #define BaudRate 115200

  5. sbit Motor1 = P3^7;

  6. void Delay(unsigned int t)
  7. {
  8. while(t--)_nop_();  
  9. }
  10. unsigned char PWM=1;
  11. void main(void)
  12. {

  13. //初始化串口1
  14. SCON=0x50;
  15. PCON&=0x3f;
  16. AUXR|=0x15; //0001 0101  置位对应位   
  17. AUXR&=0xf7; //1111 0111  清零对应位
  18. T2L = (0xffff - (FOSC/4/BaudRate));
  19. T2H = (0xffff - (FOSC/4/BaudRate))>>8;
  20. CLK_DIV&=0xef; //xxx0 xxxx    不开广播模式
  21. EA=1;
  22. ES=1;
  23. PS=0;

  24. while(1)
  25. {
  26.   Motor1=1;
  27.   Delay(PWM);
  28.   Motor1=0;
  29.   Delay(50-PWM);
  30. }
  31. }
  32. void Uart1_interrupt()  interrupt 4
  33. {
  34. if(RI)
  35. {
  36.   RI=0;
  37.   PWM=SBUF;
  38. }
  39. }


复制代码


作者: wc86110    时间: 2018-9-4 20:48
配件改变了还用原来的程序或电路可能不妥,要改还是得有根据才行是不?
作者: 人中狼    时间: 2018-9-4 21:46
无刷电机和有刷电机的驱动原理不一样,要大改,看看四轴飞行器方面的资料吧,体积大一点的都是用无刷电机
作者: hts2008222    时间: 2018-12-5 09:38
无刷电机程序是要按需要换相才能运转起来的






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