学习笔记--PWM波的生成

本文详细阐述了PWM生成原理,包括OC输出比较、PWM工作方式、通用定时器输出结构、输出模式逻辑以及PWM波的程序设计示例,重点介绍了如何配置TIM2生成PWM波,以及参数计算方法。
摘要由CSDN通过智能技术生成

一、PWM生成原理

1、OC(Output Compare) 输出比较 

        输出比较可以通过比较CNT和CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率的和占空比的PWM波形。

        每个高级定时器和通用定时器都有4个输出比较通道。高级定时器的前3个通道额外拥有死区生成和互补输出的功能。

2、 PWM(Pulse Width Modulation)脉冲宽度调制

        在具有惯性的数字系统中,可以通过对一系列脉冲的宽度进行调制,来等效的获取到所需要的模拟参量。

        PWM参数:频率 f = 1/Ts        占空比 = Ton = Ts        分辨率 = 占空比变换步距

         PWM的频率越快 ->等效的模拟的信号就越平稳->性能开销越大

3、通用定时器的输出比较通道

         当对比完CNT和CRR值之后,就会给输出模式控制器一个信号,然后输出模式控制器就会改变它输出的OC1REF(参考信号)的高低电平。然后

        (1)可以把REF映射到主模式的TRGO输出上去

        (2)或者前往下面的一路:给CC1P寄存器写0就会往上走,不改变REF信号;写1的话就往下走,通过一个非门取反

        之后就是一个输出使能电路,决定要不要输出。

        最后的OC1就是输出通道的引脚。

4、输出模式控制器的执行逻辑

 (1)冻结:CNT和CCR无效,不管大小,保持REF为原状态

 (2)匹配时有效电平(1)、无效电平(0),电平翻转

 (3)强制输出模式和冻结模式差不多 

 (4)PWM1模式和PWM2模式只是输出相反。

5、输出PWM的基本结构

        在时基单元中,CNT不断自增,ARR在CNT到一定值后自动重置CNT值。

        在输出比较单元中,CCR是我们设定的值,CNT不断自增并与CCR比较,通过比较的结果将REF不断置高低电平,最后通过极性选择和输出使能后在GPIO口输出。

6、参数计算

 7、高级定时器的输出比较通道

         死区发生器:会在OC1关闭的时候延迟一段时间然后导通OC1N/在OC1N关闭的时候延迟一段时间再导通上管。

二、PWM波生成的程序设计

         配置TIM2通道1为PWM输出。

         配置定时器一个周期为10ms、向上计数、内部时钟不分频、使能自动重装。

         配置PWM为模式1、4000的占空比、低电平、使能输出比较重装

三、任务结果

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TMS320F28003Xc是德州仪器(Texas Instruments)公司推出的一款高性能数字信号处理器(DSP)。它采用了C28x内核,主要用于工业控制、电机驱动、太阳能逆变器等领域。 以下是一些TMS320F28003Xc学习笔记的主要内容: 1. 架构和功能: - TMS320F28003Xc采用了32位的C28x内核,提供高性能的浮点运算能力和高精度的定时器。 - 它具有丰富的外设,包括模数转换器(ADC)、PWM输出、通用输入输出引脚(GPIO)等,可满足不同应用需求。 - 内置的专用硬件加速器可以提高运算效率,减少处理时间。 2. 开发环境: - TMS320F28003Xc可以使用Code Composer Studio(CCS)进行开发和调试。CCS是德州仪器的集成开发环境(IDE),提供了丰富的调试工具和代码生成器。 - CCS支持C语言和汇编语言的开发,可以方便地编写、调试和测试代码。 3. 程序设计: - 在TMS320F28003Xc上进行程序设计时,可以利用CCS提供的库函数和例程快速开发应用。 - 使用C语言编写程序时,可以利用C28x内核的浮点运算支持和优化指令集,提高程序的运行效率。 - 汇编语言编程需要更加深入地了解芯片的内部结构和寄存器,可以实现更高级的优化和控制。 4. 资源和学习材料: - 德州仪器官方网站提供了TMS320F28003Xc的技术手册、应用指南和代码示例等资源,可以帮助你更好地理解和使用这款DSP。 - 在线论坛和社区也是学习和交流的好地方,你可以通过与其他开发者的讨论和分享经验,提高自己的技能。 希望这些学习笔记对你有所帮助!如果你有任何进一步的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值