智能车制作

 找回密码
 注册

扫一扫,访问微社区

123
返回列表 发新帖
楼主: juejiang
打印 上一主题 下一主题

如何用代码来控制舵机

  [复制链接]

2

主题

39

帖子

0

精华

高级会员

Rank: 4

积分
532
威望
340
贡献
94
兑换币
6
注册时间
2012-3-3
在线时间
49 小时
毕业学校
西南石油大学
21#
发表于 2012-3-7 16:53:07 | 只看该作者
楼主最好弄本书来看看,如果楼主是用的MC9S12XS的芯片的话,可以再亚马逊网店上弄本《MC9S12XS单片机原理及嵌入式系统开发》上面讲的很详细(虽然变得不是很全),当然也可以找网上的资料。
void PWM_INIT(void){
  DDRP          = 0XA2;
  PWME          = 0X22;//使能通道1和通到底5
  PWMCLK        = 0X02;//SA作为时钟源;
  PWMCTL        = 0X50;//01010000通道01,45级联标志
  PWMCAE        =OXOO;//左对齐输出,此语句可以省略,因为寄存器默认设置都为0
  PWMPOL        = 0X02;//1,5通道高电平占空
  PWMSCLA        = 0X06;//不要改变,用于舵机控制 ,比例因子A寄存器,clock SA=Clock A/(2*PWMSCLA)
  PWMPER01        = 0XFFFF;//舵机周期,不要改动 左对齐方式下PWM周期=通道时钟周期(clock SA)*PWMPER(PWMPER01)
  PWMDTY01        = 0X1300;//舵机中值占空比(调试为0x1300/0xffff) 起始电平为高的情况下 占空比=PWMDTYx/PWMPERx

  PWMPER45        = 0X1F40;//最高5KHz,BTS9600可以使用
  PWMDTY45        = 0X06ff;//速度控制位,
  PTP_PTP7      = 1;//正传方向
}
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-6 18:29 , Processed in 0.035941 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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