智能车制作

标题: SD-5舵机调试问题 [打印本页]

作者: SC电磁    时间: 2013-1-21 09:35
标题: SD-5舵机调试问题
请问各位大侠SD-5舵机占空比太小舵机不转,太大舵机就打到极限位置,怎么回事啊?总线频率为64M

舵机PWM初始化代码如下:

void PWM_Init200HZ(void)  
{     
       //PWMCTL      PWM控制寄存器
   PWMCTL_CON45 = 1;                     
   PWME_PWME5 = 0;
    // PWMPRCLK    PWM时钟预分频寄存器
   PWMPRCLK_PCKA = 4;         // clockA  16分频,clockA = busclk/16 = 4MHz;
   PWMSCLA=1;                 // Clock SA = Clock A / (2 * PWMSCLA)  = 2 M
           //PWMCLK      PWM时钟选择寄存器
   PWMCLK_PCLK5 =1;        //PWM5选择 Clock SA  ,单位时钟为0.5us  
    // 通道1357输出极性 首先为高 占空比计数器计数完毕变为低  
   PWMPOL_PPOL5=1;
   //PWMCNTx     PWM计数寄存器
   PWMCNT45= 0;
   //PWMDTYx     PWM比较寄存器(PWM高电平)
    PWMDTY45= 0;
   //PWMPERx     PWM预置数寄存器(PWM周期)
   PWMPER45= 10000;  //PWM频率=Clock SA/PWMPER45=2M/10000=200HZ
     //PWME        PWM使能寄存器
   PWME_PWME5 = 1;

}   

PWMDTY45= 0; 或PWMDTY45= 1;或 PWMDTY45= 2;时舵机不转, PWMDTY45= 3;舵机就打到极限,望各位大侠不惜吝教!

作者: mxj1005071012    时间: 2013-1-21 10:03
脉冲频率设置错误  请查看这个舵机的频率要求 要基本一样 而不是自己想设多少就是多少
作者: Soran    时间: 2013-1-21 10:09
把频率改成300Hz
作者: SC电磁    时间: 2013-1-21 10:43
嗯 我改成50HZ就好了!
作者: 1570022023    时间: 2013-1-25 10:12
SC电磁 发表于 2013-1-21 10:43
嗯 我改成50HZ就好了!

SD-5舵机最好用300Hz的频率,我用285.7Hz占空比为450/2000(大概值)时候打在中点

作者: 1570022023    时间: 2013-1-25 10:23
SC电磁 发表于 2013-1-21 10:43
嗯 我改成50HZ就好了!

不好意思,占空比是950/2000(大概值)的时候打在中点
作者: ⊙Lin⊙    时间: 2013-1-25 16:42
1570022023 发表于 2013-1-25 10:23
不好意思,占空比是950/2000(大概值)的时候打在中点

能贴一下你的初始化程序么?

作者: 1570022023    时间: 2013-1-25 19:38
总线时钟为64M
void PWM_init7()         //舵机控制
{
  PWME_PWME7 = 0;         //禁止PWM模块
  PWMPRCLK = 0X33;        //CLOCKB的预分频设置为8      64M/8=8M     
  PWMSCLB = 7;            //SB的分频因子设置为7            
  PWMCLK_PCLK7 = 1;       //通道7选择SB为PWM时钟
  PWMPER67 = 2000;        //通道7周期寄存器设置为2000     8M/7/2/2000=285.7Hz
  PWMDTY67 = 950;          //通道7占空比寄存器设置(舵机中转,这是大概的值,具体的要根据舵机来设定)
  PWMPOL_PPOL7 = 1;       //PWM先输出高电平后输出低电平
  PWMCAE_CAE7 = 0;        //左对齐输出
  PWMCTL_CON67 = 1;       //联级
  PWME_PWME7 = 1;         //通道7使能
}
作者: 王晓光    时间: 2013-3-14 21:53
1570022023 发表于 2013-1-25 19:38
总线时钟为64M
void PWM_init7()         //舵机控制
{

你好,请问你给予舵机的电压是多少?我设置为300hz,就是不动
作者: 1570022023    时间: 2013-4-12 18:59
王晓光 发表于 2013-3-14 21:53
你好,请问你给予舵机的电压是多少?我设置为300hz,就是不动

5.5v
作者: 王晓光    时间: 2013-4-12 19:30
1570022023 发表于 2013-4-12 18:59
5.5v

谢谢了,问题已经解决了
作者: 心树    时间: 2013-5-7 21:38
求楼主发完整的程序到邮箱382661523@qq.com万分感谢
作者: 夏夜之星    时间: 2013-6-18 20:40
分频系数怎么确定啦
作者: mayroro    时间: 2014-5-13 19:16
1570022023 发表于 2013-1-25 19:38
总线时钟为64M
void PWM_init7()         //舵机控制
{

能问一下舵机的频率的设置公式是什么吗?





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