智能车制作

标题: 求指教,sd5舵机问题 [打印本页]

作者: 51智能车    时间: 2013-6-12 08:47
标题: 求指教,sd5舵机问题
舵机可以打到中间,但是再调大调小数值就会向右打角度,不能向左打角度。
以下是pwm初始化,总线时钟48mhz。

PWMCTL_CON01=1;    //0和1联合成16位PWM;
    PWMCTL_CON23=1;    //2和3联合成16位PWM;
    PWMCTL_CON45=1;    //4和5联合成16位PWM;


    PWMPRCLK = 0X00;    /
    PWMSCLA = 24;    //  
    PWMSCLB = 24;    //


    PWMCLK_PCLK1=1;//SA作频率
    PWMCLK_PCLK3=1;//SB作频率
    PWMCLK_PCLK5=1;//选择clock SA做时钟源     


    PWMCAE_CAE1=0;//选择输出模式为左对齐输出模式,同时PWM周期=通道时钟周期*PWMPERX
    PWMCAE_CAE3=0;//选择输出模式为左对齐输出模式
    PWMCAE_CAE5=0;


    PWMCNT01=0;  //计数器清零
    PWMCNT23=0;
    PWMCNT45=0;


    PWMPOL_PPOL1=1;//先输出高电平,计数到DTY时,反转电平同时占空比的求法=占空比寄存器/周期寄存器
    PWMPOL_PPOL3=1;//先输出高电平,计数到DTY时,反转电平
    PWMPOL_PPOL5=1;


    PWMPER01=200;//周期=200/1000000s=0.2ms
    PWMDTY01=0;
    PWMPER23 = 200;   //周期20ms; 50Hz;
    PWMDTY23 =0;   //高电平时间为ms;
    PWMPER45=3333;
    PWMDTY45=middle;

    PWME_PWME1=1;
    PWME_PWME3=1;
    PWME_PWME5=1;   



作者: 51智能车    时间: 2013-6-12 08:48
各位高手,求指导。
作者: DEMOK    时间: 2013-6-12 12:09
SD05舵机建议给300HZ,50%占空比,建议你试下以下代码
  1. void PWM_Init(void)
  2. {   
  3.     //CH01  motor in1
  4.     //CH23  motor in2
  5.     //CH45  servo
  6.     //SB,B for ch2367
  7.     //SA,A for ch0145   
  8.     PWME  = 0x00;       //PWM禁止
  9.     PWMCTL = 0x70;                  //CH01、23、45级联成16位PWM;
  10.     PWMCAE = 0x00;                        //选择输出模式为左对齐输出模式
  11.     PWMPOL = 0xFF;                        //先输出高电平,计数到DTY时,反转电平
  12.     PWMPRCLK = 0x33;    //ClockA 8分频=BusClock/8=6MHz ;ClockB 8分频=BusClock/8=6MHz  
  13.     PWMSCLA = 0x01;     //ClockSA=ClockA/(2*1)=3MHz
  14.     PWMSCLB = 0x01;     //ClockSB=ClockB/(2*1)=3MHz      
  15.     PWMCLK  = 0xFF;     //CH0145选择clock SA做时钟源;CH2367选择clock SB做时钟源

  16.     PWMPER01=12000;             //电机设置 1,3 通
  17.     PWMDTY01=0;  
  18.     PWMPER23=12000;   
  19.     PWMDTY23=0;
  20.    
  21.                
  22.     PWMPER45 = 10000;   //频率= ClockSA/PWMPER45; 300Hz;
  23.     PWMDTY45 = 5000;    //0°----50%     
  24.    
  25.     PWMCNT01 = 0;       
  26.     PWMCNT23 = 0;       
  27.     PWMCNT45 = 0;                 //计数器清零;
  28.     PWME = 0x2A;     //PWM使能
  29. }
复制代码






欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2