智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2679|回复: 11
打印 上一主题 下一主题

求一个测试舵机的可用程序

[复制链接]

39

主题

850

帖子

0

精华

跨届大侠

同学,今晚去你宿舍偷高压锅。

Rank: 10Rank: 10Rank: 10

积分
8530

活跃会员奖章优秀会员奖章在线王奖章论坛元老奖章

QQ
威望
3783
贡献
2239
兑换币
2331
注册时间
2012-7-26
在线时间
1255 小时
跳转到指定楼层
1#
发表于 2013-1-23 14:27:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
板子刚弄好,我想测试一下各个模块的工作情况,舵机那一块我编写了一个简单的PWM程序可是不知道什么原因,有时拨一下它,它会动,但是很多时候都不动。

16

主题

1510

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5586

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
2953
贡献
1231
兑换币
29
注册时间
2012-6-2
在线时间
702 小时
2#
发表于 2013-1-23 14:38:53 | 只看该作者
随便写一个50ms,占空比1.5ms的就可以,断电后再拨拉杆,范围0.5ms~~2.5ms
回复 支持 反对

使用道具 举报

68

主题

1086

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4578

活跃会员奖章优秀会员奖章论坛元老奖章论坛骨干奖章在线王奖章

QQ
威望
2515
贡献
1213
兑换币
1382
注册时间
2012-9-19
在线时间
425 小时
3#
发表于 2013-1-23 15:01:40 | 只看该作者
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

#define ZK1 PWMDTY01     //电机占空比
#define ZK5 PWMDTY45
#define ZK3 PWMDTY23   //舵机占空


/***************************************************
** 函数名称: 总线时钟PLL设置40MHz
** 功能描述:总线频率40MHZ 晶振频率为16MHz
** 说明:
****************************************************/
void PLL_Init_40M(void)   
{                    
    CLKSEL=0X00;      //关闭锁相环
    PLLCTL_PLLON=1;   //锁相环电路允许
    SYNR =0xc0|0x04;  //pllclock=2*osc*(1+SYNR)/(1+REFDV)=80MHz;                     
    REFDV=0x80|0x01;
    _asm(nop);          //BUS CLOCK=40M  延时等待稳定
    POSTDIV=0x00;     //fPLL= fVCO/(2xPOSTDIV)
    _asm(nop);        //fBUS=fPLL/2=40M
    _asm(nop);
    while(!(CRGFLG_LOCK==1))//时钟频率已经稳定,锁相环频率锁定
      {
          ;
      }
    CLKSEL_PLLSEL =1; //使能锁相环时钟
}




/***************************************************
** 函数名称:Steer_Init
** 功能描述:舵机PWM初始化
** 说明:23级联               
****************************************************/
void Steer_Init(void)
  {
    PWME_PWME3 = 0;      //先禁止各通道输出
    PWMCTL_CON23 = 1;    //两两级联成16位PWM
    PWMPRCLK_PCKB = 2;  //预分频系数为B 4,总线频率,即10MHZ
    PWMSCLB = 2;  //SB_CLK = B_CLK / (2*2) ==2.5MHz
    PWMCLK_PCLK3 = 1;   //通道选  clock SB做时钟源
                                             
    PWMCNT3=0;  //23计数器清零

    PWMCAE_CAE3=0;    //选择输出模式为左对齐输出模式   
    PWMPOL_PPOL3=1;    //先输出高电平,计数到DTY时,反转电平
   
    PWMPER23=50000; // 20ms ;50Hz
    PWMDTY23=0;
    PWME_PWME3 = 1;      
}





void main(void)
{
  
   PLL_Init_40M();
   Steer_Init();
   ZK3=5000;
   ZK1=200;
   ZK5=0;


}

这是个好使的程序,你看看吧,祝你好运!!!
回复 支持 反对

使用道具 举报

29

主题

637

帖子

0

精华

常驻嘉宾

我是孤独的赛车手 车手是不需要女人的

Rank: 8Rank: 8

积分
3136
威望
1664
贡献
630
兑换币
621
注册时间
2011-4-16
在线时间
421 小时
4#
发表于 2013-1-23 15:13:44 | 只看该作者
最简单的可以用信号发生器。。。。哈哈哈
回复 支持 反对

使用道具 举报

39

主题

850

帖子

0

精华

跨届大侠

同学,今晚去你宿舍偷高压锅。

Rank: 10Rank: 10Rank: 10

积分
8530

活跃会员奖章优秀会员奖章在线王奖章论坛元老奖章

QQ
威望
3783
贡献
2239
兑换币
2331
注册时间
2012-7-26
在线时间
1255 小时
5#
 楼主| 发表于 2013-1-23 15:18:39 | 只看该作者
可欣 发表于 2013-1-23 15:01
#include       /* common defines and macros */
#include "derivative.h"      /* derivative-specific  ...

谢谢,再问一下,我的舵机是SD05的,B车模的舵机,这个合用吗?
回复 支持 反对

使用道具 举报

39

主题

850

帖子

0

精华

跨届大侠

同学,今晚去你宿舍偷高压锅。

Rank: 10Rank: 10Rank: 10

积分
8530

活跃会员奖章优秀会员奖章在线王奖章论坛元老奖章

QQ
威望
3783
贡献
2239
兑换币
2331
注册时间
2012-7-26
在线时间
1255 小时
6#
 楼主| 发表于 2013-1-23 15:26:58 | 只看该作者
可欣 发表于 2013-1-23 15:01
#include       /* common defines and macros */
#include "derivative.h"      /* derivative-specific  ...

下了你的程序,还是没什么反应
回复 支持 反对

使用道具 举报

68

主题

1086

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4578

活跃会员奖章优秀会员奖章论坛元老奖章论坛骨干奖章在线王奖章

QQ
威望
2515
贡献
1213
兑换币
1382
注册时间
2012-9-19
在线时间
425 小时
7#
发表于 2013-1-24 14:06:46 | 只看该作者
你那引脚接没有接错,你看看,是xs128的片子吗???
回复 支持 反对

使用道具 举报

39

主题

850

帖子

0

精华

跨届大侠

同学,今晚去你宿舍偷高压锅。

Rank: 10Rank: 10Rank: 10

积分
8530

活跃会员奖章优秀会员奖章在线王奖章论坛元老奖章

QQ
威望
3783
贡献
2239
兑换币
2331
注册时间
2012-7-26
在线时间
1255 小时
8#
 楼主| 发表于 2013-1-24 23:37:26 | 只看该作者
可欣 发表于 2013-1-24 14:06
你那引脚接没有接错,你看看,是xs128的片子吗???

是s12的,那引脚没接错。不知道是不是要设置频率为300Hz
回复 支持 反对

使用道具 举报

68

主题

1086

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4578

活跃会员奖章优秀会员奖章论坛元老奖章论坛骨干奖章在线王奖章

QQ
威望
2515
贡献
1213
兑换币
1382
注册时间
2012-9-19
在线时间
425 小时
9#
发表于 2013-1-26 12:46:34 | 只看该作者
什么频率为300M啊,一般舵机的频率为50HZ,就是周期是20ms   
回复 支持 反对

使用道具 举报

39

主题

850

帖子

0

精华

跨届大侠

同学,今晚去你宿舍偷高压锅。

Rank: 10Rank: 10Rank: 10

积分
8530

活跃会员奖章优秀会员奖章在线王奖章论坛元老奖章

QQ
威望
3783
贡献
2239
兑换币
2331
注册时间
2012-7-26
在线时间
1255 小时
10#
 楼主| 发表于 2013-1-26 12:49:53 | 只看该作者
可欣 发表于 2013-1-26 12:46
什么频率为300M啊,一般舵机的频率为50HZ,就是周期是20ms

这个好像是特制舵机,有人说要陪300hz啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-11 15:01 , Processed in 0.055350 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表