TMS28027微控制器的PWM(脉冲宽度调制)功能是通过一组寄存器来实现的,这些寄存器控制着PWM波形的产生,从而允许精确控制电机的速度、LED的亮度等。下面详细说明了与PWM相关的寄存器及其字段的功能和用途。 时基控制寄存器(TBCTL)是控制PWM模块时钟分频和同步的重要寄存器。它包含了多个字段,如PHSDIR、CLKDIV、HSPCLKDIV、SWFSYNC、SYNCOSEL、PRDLD、PHSEN和CTRMODE。PHSDIR是一个相位方向位,它控制了在同步事件发生后时基计数器(TBCTR)的计数方向。PHSDIR位仅在时基计数器配置为加减计数模式时有效。PHSDIR为0表示同步事件后倒计时,为1表示同步事件后向上计数。 CLKDIV和HSPCLKDIV字段共同决定了时基时钟的预分频值。TBCLK是PWM模块的操作时钟频率,它由系统时钟频率(SYSCLKOUT)除以这两个字段的乘积得出。预分频值越大,TBCLK的频率越低,反之亦然。SWFSYNC是软件强制同步脉冲,当写入1时,强制生成一次性同步脉冲。SYNCOSEL用于选择EPWMxSYNCO信号的来源。 PRDLD字段用于控制活动周期寄存器(TBPRD)的加载方式,它决定了周期寄存器是否需要从影子寄存器加载。PHSEN字段用于控制是否允许从相位寄存器(TBPHS)加载时基计数器(TBCTR)。CTRMODE字段设置时基计数器的操作模式,包括向上计数、向下计数、向上向下计数以及停止计数等模式。 时基状态寄存器(TBSTS)包含CTRMAX、SYNCI和CTRDIR等字段。CTRMAX是时基计数器最大锁存状态位,指示计数器是否达到了最大值0xFFFF。SYNCI是输入同步锁存状态位,指示是否发生了外部同步事件。CTRDIR指示时基计数器当前是倒计时还是计数中。 高分辨率周期控制寄存器(HRPCTL)控制了高分辨率周期功能的启用。TBPHSHRLOAD字段用于在特定事件上同步高分辨率相位,而HRPE字段则直接控制高分辨率周期功能是否启用。启用高分辨率周期功能后,可以实现更精确的占空比和频率控制。 计数器比较A寄存器(CMPA)是用来设置PWM波形的占空比的。它与计数器值进行比较,以确定输出PWM波形的高低电平持续时间。 以上这些寄存器和字段的组合使用,可以灵活配置TMS28027的PWM模块,以适应不同的应用场景和需求。例如,通过设置时基控制寄存器的不同字段,可以精确控制PWM波形的频率和相位;通过启用高分辨率周期控制寄存器,可以实现更精确的控制。这些操作对于实现如电机控制、LED调光等应用来说是必不可少的。 需要注意的是,由于技术原因OCR扫描可能带来个别字识别错误或者漏识别的情况,因此在实施具体的应用时,需要根据实际芯片手册中的描述以及硬件平台的实际情况进行配置。如果有必要,查阅最新的TI文档可以获取更精确的信息。
剩余9页未读,继续阅读
- 粉丝: 5
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Kotlin语言的Android开发工具类集合源码
- 零延迟 DirectX 11 扩展实用程序.zip
- 基于Java的语音识别系统设计源码
- 基于Java和HTML的yang_home766个人主页设计源码
- 基于Java与前端技术的全国实时疫情信息网站设计源码
- 基于鸿蒙系统的HarmonyHttpClient设计源码,纯Java实现类似OkHttp的HttpNet框架与优雅的Retrofit注解解析
- 基于HTML和JavaScript的廖振宇图书馆前端设计源码
- 基于Java的Android开发工具集合源码
- 通过 DirectX 12 Hook (kiero) 实现通用 ImGui.zip
- 基于Java开发的YY网盘个人网盘设计源码