


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
对于飞思卡尔智能车,电机和舵机的控制通常使用的都是以PWM脉冲宽度调制的方法实现的,其可行性基于电机可以由占空比控制转速,而舵机也由脉宽控制摆动。PWM 调制波有 8 个输出通道,每一个输出通道都可以独立的进行输出。每一个输出通道都有一个精确的计数器(计算脉冲的个数),一个周期控制寄存器和两个可供选择的时钟源。每一个 PWM 输出通道都能调制出占空比从 0100% 变化的波形。PWM控制程序的编写一般按照以下的一种流程:1,禁止PWM模块;/这是由于改变周期和脉宽等操作需要在PWM禁止的情况下才能被设置2,PWM级联选择,是否级联通道67,45,23,01;/最多单独使用8个8位和级联使用4个16位3,给通道选择时钟源控制位;/0,1,4,5通道可选择ClockA和ClockSA;2,3,6,7通道可选择ClockB和ClockSB4,给时钟源AB预分频;/可对总线时钟进行预分频,确定ClockA和ClockB,满足1,2,4,8,16,32,64,128这8个分频量5,根据时钟源AB确定时钟源SASB;/由ClockA和ClockB、分频设值来确定ClockA和ClockB,满足1-255的分频量6,输出极性的选择;/也就是选择输出极性先低后高还是先高后低7,对齐方式的选择;/可设置为左对齐或者中间对齐方式8,实际通道频率的计算;/也就是周期的设定9,占空比寄存器的设置;/占空比常数的设定,可以以此决定占空比10,使能PWM模块。/你已经首尾呼应了,有木有!/uc/myshow/blog/misc/gif/E_6743EN00SIGG.gif接下来通过寄存器的介绍,以上面流程为大纲,详细地说明一下该如何操作【PWME】寄存器PWME = (PWME7 | PWME6 | PWME5 | PWME4 | PWME3 | PWME2 | PWME1 | PWME0)将每一位设置为1即可使能该位,0对应的既是禁止。要注意的是,当选择了级联方式输出的话,1,3,5,7分别是级联单元的控制字,也就是接下来的操作需要对应这些位才可生效。现在把8个通道都禁止,得到语句 PWME = 0x00;【PWMCTL】寄存器PWMCTL = (CON67 | CON45 | CON23 | CON01 | PSWAI | PFRZ | 0 | 0)若CON67 = 1,那么通道6和7即是级联输出,新单元由通道7的控制字决定属性。若CON67 = 0,那么两者还是相互分立的8位输出通道。其他级联通道操作也是同理。为保持简洁性,对某些位的赋值略过,PSWAI和PFRZ通常设为0。 现在将8个通道两两相级联,得到语句 PWMCTL = 0xF0;【PWMCLK】寄存器PWMCLK = ( PCLK7 | PCLK6 | PCLK5 | PCLK4 | PCLK3 | PCLK2 | PCLK1 | PCLK0)其中0,1,4,5通道可选择ClockA和ClockSA;2,3,6,7通道可选择ClockB和ClockSB。若将某位设值为1,则该位选择的是ClockSA或ClockSB时钟。现在全部选择ClockSA或ClockSB时钟,则得到语句 PWMCLK = 0xFF;【PWMPRCLK】寄存器PWMPRCLK = (0 | PCKB2 | PCKB1 | PCKB0 | 0 | PCKA2 | PCKA1 | PCKA0), PCKA2 PCKA1 PCKA0分别对应ClockA预分频系数的三个数位,假设其分别为1 0 0,则对应十进制数是4,也就是分频系数为24=16(2的4次方),若总线频率16MHz,则ClockA = BusClock/(24) = 16MHz/16 = 1MHz; PCKB2 PCKB1 PCKB0分别对应ClockB时钟,设值方法同上。ClockA = BusClock/(2na)ClockB = BusClock/(2nb)现在设值预分频系数都为1,得到语句 PWMPRCLK = 0x00;【PWMSCLA&PWMSCLB】寄存器可以认为是纯数值寄存器,一共八位。如果ClockA为24MHz,现需要600KHz的ClockSA,则通过ClockSA = ClockA / (2*PWMSCLA)可得,PWMSCLA = ClockA/(2*ClockSA)= 24MHz/(2*0.6MHz) = 20;PWMSCLB的设值也同上,二者的公式相同:ClockSA = ClockA / (2*PWMSCLA)ClockSB = ClockB / (2*PWMSCLB) 上面例子可以得到语句 PWMSCLA = 20;【PWMPOL】寄存器PWMPOL = (PPOL7 | PPOL6 | PPOL5 | PPOL4 | PPOL3 | PPOL2 | PPOL1 | PPOL0)分别对每个通道的极性进行设置。若置1则先输出高电平,遇到触发置位变为低电平;置0则相反。现在设置所有通道为先低后高极性,则得到语句 PWMPOL = 0x00;【PWMCAE】寄存器PWMCAE = (CAE7 | CAE6 | CAE5 | CAE4 | CAE3 | CAE2 | CAE1 | CAE0)分别对每个通道进行输出方式设置。输出方式分为两种:左对齐和居中对齐。这里的区别将在占空比寄存器之后详细地说明。【PWMPERXX】寄存器(周期设置寄存器)共有八个这样的寄存器,名字PWMPER0 - PWMPER7;若级联使用,则为PWMPER01,PWMPER23,PWMPER45,PWMPER67。【PWMDTYXX】寄存器共有八个这样的(占空比设置)寄存器,名字PWMDTY0 - PWMDTY7;若级联使用,则为PWMDTY01,PWMDTY23,PWMDTY45,PWMDTY67。 上面提到的对齐方式区别在于:左对齐方式:计数器PWMCNT从0开始对时钟信号递增计数,当PWMCNT = PWMDTY时,比较器1输出有效,触发器置位,输出电平翻转。当PWMCNT = PWMPER时,比较器2输出有效,触发器复位,输出电平翻转。同时PWMCNT复位,一个周期结束。输出周期 = 通道周期*PWMPERx. 居中对齐方式:计数器PWMCNT从0开始对时钟信号递增计数,当PWMCNT = PWMDTY时,比较器输出有效,触发器置位,输出电平翻转。当PWMCNT = PWMPER时,PWMCNT从当前值开始递减计数,当再次满足PWMCNT = PWMDTY时,比较器输
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年职业病学化工职业病诊断与防治选择题答案及解析
- 2025年福建兴和投资发展集团有限公司招聘38人笔试参考题库附带答案详解
- 2025年甘肃天水星火青重机床公司招聘30人笔试参考题库附带答案详解
- 2025年湖南省通信产业服务有限公司春季校园招聘76人笔试参考题库附带答案详解
- 2025年泉州安溪县招商投资服务有限公司招聘3人笔试参考题库附带答案详解
- 地产活动参与者行为规范
- 信息安全培训计划制定
- 口腔科病例诊断与治疗方案集锦
- 2025年国网北京市电力公司高校毕业生招聘120人(第二批)笔试参考题库附带答案详解
- 难点详解自考专业(行政管理)含答案(突破训练)
- 小学数学教师新课标考试试题(含答案)
- 农村处理矛盾纠纷课件
- 厂房搬迁管理办法
- 保险学考试题(附答案)
- 中药处方点评管理办法
- 国企纪法教育实施路径
- 药品发放登记管理制度
- 临床科室科研管理制度
- 铁艺围栏采购合同
- 中国皮肤基底细胞癌诊疗指南2023
- 卫星通信技术在电力行业中的应用场景分析
评论
0/150
提交评论