



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
pwm输出控制伺服电机转向资源:1、伺服电机。PWM输出周期在一定范围内,舵机的转向会和PWM的占空比成正比例关系。2、HCS12的PWM输出。方案:1、HCS12中的PWM模块,通过硬件进行PWM输出。2、HCS12中的ECT的比较输出模块,通过比较输出进行PWM的输出。鉴于PWM模块为输出PWM专用模块,通过设置相应寄存器即可实现PWM输出,简单方便,而且精确。故选用PWM模块进行PWM输出。说明:1、通过PWM控制舵机的转角,舵机接口一般为3根线,黑色地线,红色为电源线,一般采用4.8V和6V两种标准。另外一根线为控制信号线。2、通过级联方式实现16位PWM输出。3、周期为18MS20MS即输出周期为56Hz50Hz。4、对齐方式为PWM左对齐方式。5、输出极性为起始高电平。6、脉宽为1100us1900us不等,实现-45到45的转向角。7、通过级联方式实现16位PWM输出。通道PWM45组成通道A。8、时钟源选择。BusBlock:24MHz。void pllclk(void) /24MHz SYNR=0x02;/PLLCLK =2*OSCCLK*(SYNR + 1)/(REFDV + 1) REFDV=0x01; CLKSEL=0x80;/选定PLL时钟9、PWM时钟。通道时钟周期2us输出周期20MSPWM输出频率:50Hz。预分频:8分频3MHz PWMPRCLK=0x66分频:6分频 500kHz ClockSX=ClockX/(2*PWMSCLX) PWMSCLx=ClockX/ClockSX*2=3M/(500k*2)=3=0x03通过两次分频可得通道时钟周期为:100US即10KHZ通道A时钟频率选择PWMPRCLK和PWMSCLA;通道B时钟频率选择PWMPRCLK和PWMSCLB;周期计算公式: 左对齐方式:输出周期=通道时钟周期*(PWMPERx+1)PWMPERx=输出周期/通道时钟周期-1 =20MS/2us-1 =9999=0x270f10、占空比设置:左对齐起始输出高电平: 占空比=(PWMDTYx+1)/(PWMPERx+1)*100% PWMDTYx=占空比*(PWMPERx+1)/100%根据公式:(PWMDTYx+1)/(PWMPERx+1)*100%=脉宽宽度/输出周期*100%PWMDTYx=(脉宽宽度*PWMPERx)/输出周期-1 =(脉宽宽度*9999)20000-1脉宽宽度=旋转角度*(400)/45+1500(us)通过循环即可以求出伺服电机转动角度对应的PWMDTx的值。PWMDTYx28=859,855,850,846,841,837,832,828,824,819,815,810,806,801,797,792,788,784,779,775,770,766,761,757,752,748,744,740,735,731,726,722,717,713,708,704,700,695,691,686,682,677,673,668,664,660,655,651,646,642,637求PWMDTYx值的程序如下:#includevoid main()long int i,X,y;X=25;for(i=-25;i=25;i+)y=X*(400)/45+1500;printf(angle:%3dpulse:%duscycle:20MSPWMDTYx:%dPWMPERx:9999n,X,y,(int)(9999.0/20000.0)*y)-1);X-;CODE:#include #include #pragma LINK_INFO DERIVATIVE mc9s12xs128/=/16位PWM输出控制伺服电机转动/author: yangtze/time:2009/4/21/=/#define PWMPERx0x270F;unsigned int PWMDTYxtable=0x035b,0x0357,0x0352,0x034e,0x0349,0x0345,0x0340,0x033c,0x0338,0x0333,0x032f,0x032a,0x0326,0x0321,0x031d,0x0318,0x0314,0x0310,0x030b,0x0307,0x0302,0x02fe,0x02f9,0x02f5,0x02f0,0x02ec,0x02e8,0x02e4,0x02df,0x02db,0x02d6,0x02d2,0x02cd,0x02c9,0x02c4,0x02c0,0x02bc,0x02b7,0x02b3,0x02ae,0x02aa,0x02a5,0x02a1,0x029c,0x0298,0x0294,0x028f,0x028b,0x0286,0x0282,0x027d;void pllclk(void)/24MHzSYNR=0x02;/PLLCLK =2*OSCCLK*(SYNR + 1)/(REFDV + 1)REFDV=0x01;CLKSEL=0x80;/选定PLL时钟void PWMServoMotor_init(void)/PWM初始化设置PWMPRCLK=0X66;/设置通道周期PWMSCLA=0X03;PWMSCLB=0X03;PWMCLK=0XFF;PWMPOL=0X00;/起始输出为高电平PWMCAE=0X00;/波形左对齐PWMCTL=0XFC;/选择级联方式输出void PWM_Pulse(unsigned int PWMPERx,unsigned int PWMDTYx)/PWM输出周期和占空比设置 PWMPERH=(PWMPERx8)&0X00FF; PWMPERL=PWMPERx&0X00FF; PWMPER4=PWMPERH;/设置输出周期 PWMPER5=PWMPERL; PWMDTYH=(PWMDTYx8)&0X00FF; PWMDTYL=PWMDYx&0X00FF; PWMDTY4=PWMDTYH;/设置脉宽 PWMDTY5=PWMDTYL; PWME=0X18;/通道45使能开void main(void)unsigned int PWMDTYx;PWMDTYx=PWMDTYxtable5;pllclk();PWMServoMotor_init();PWM_Pulse(PWMPERx,PWMDTYx);EnableInterrupts;for(;) /上次编写直流电机驱动的程序时,本来是用16位的PWM调制,可是最后使用的却仅仅只是8位的。这次又是在使用PWM模块,认真的去研究了这个模块的 使用方式,才知道,16位的和8位的最大的区别不是周期长短或者是占空比大小什么的。事实上位数上的差别,影响影响最大的是调制精度。位数越大,能设定的 通道周期越小,这样在设定的周期和占空比上,就能更精确。而不是之前理解的那样,能提供更大的输出周期。分享一个xs128的PWM程序。/-/功能说明:MC9S12XS128-PWM例程/使用说明:实现通道3(PTP3)输出频率为1KHz,占空比为50%的方波,用示波器观察/-/#include /* common defines and macros */#include derivative.h /* derivative-specific definitions */-初始化函数-/-时钟初始化程序-/void PLL_Init(void) /PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1) /锁相环时钟=2*16*(2+1)/(1+1)=48MHzREFDV=1; /总线时钟=48/2=24MHzSYNR=2;while(!(CRGFLG&0x08);CLKSEL=0x80; /选定锁相环时钟/-PWM初始化程序-/void PWM_Init(void)PWME_PWME3=0x00;/ DisablePWM 禁止 PWMPRCLK=0x33; / 0011 0011 A=B=24M/8=3M时钟预分频寄存器设置PWMSCLA=150; / SA=A/2/150=10k 时钟设置PWMSCLB=15; / SB=B/2/15 =100k 时钟设置 PWMCLK_PCLK3=1; / PWM3-SB 时钟源的选择PWMPOL_PPOL3=1; / Duty=High Time 极性设置PWMCAE_CAE3=0; / Left-aligned 对齐方式设置PWMCTL=0x00; / no concatenation 控制寄存器设置 PWMPER3=100; / Frequency=SB/100=1K 周期寄存器设置PWMDTY3=50; / Duty cycle = 50% 占空比寄存器设置PWME_PWME3=1; / EnablePWM 使能/-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 税法期末考试题及答案
- 企事业单位安全生产综合治理职责
- 农业机械设备远程管理系统创新创业项目商业计划书
- 智能灯泡调色器创新创业项目商业计划书
- 电动汽车电池健康管理技术创新创业项目商业计划书
- 初一政治考试题及答案
- 2025秋部编人教版二年级语文上册学习兴趣激发计划
- 2025年PEP小学英语六年级上册学习氛围计划
- 小学四年级心理疏导帮扶计划
- 特级建筑集团分公司岗位职责
- 2016年山东水利水电建筑工程预算定额((下册))
- 建设工程验收授权委托书模板
- 2023年新教科版五年级上册科学全册练习题(一课一练)
- 2023年05月海南东方市综合行政执法局公开招聘综合行政执法辅助人员28名笔试题库含答案解析
- 北师大版初中物理九年级全册第十章《机械能,内能及其转化》检测题(包含答案解析)
- 通信原理第7版樊昌信版新版
- 一汽商用车企业级BOM技术方案V1.7
- GB/T 13808-1992铜及铜合金挤制棒
- 中国马克思主义与当代(社会问题)
- 光伏并网逆变器调试报告
- EMR术的配合要点
评论
0/150
提交评论