news 2026/2/19 3:31:57

基于ARMCortex-M4F内核的MSP432MCU开发实践【2.4】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于ARMCortex-M4F内核的MSP432MCU开发实践【2.4】
6.4.2 定时器A(Timer_A)

知识点:Timer_A为16位定时器,具有7个捕获比较寄存器。Timer_A支持多路捕获/比较、PWM输出和定时计数。Timer_A也具有丰富的中断能力,当定时时间到或满足捕获/比较条件时,将可触发Timer_A中断。

定时器A有如下特点:

1)4种运行模式的异步16位定时/计数器;

2)参考时钟源可选择配置;

3)7个可配置的捕获/比较寄存器;

4)可配置的PWM输出;

5)异步输入和输出锁存;

6)具有可对Timer_A中断快速响应的中断向量寄存器。

定时器A的结构框图如图6-32所示。可见,Timer_A定时器主要分为两个部分:主计数器和捕获/比较模块。主计数器负责定时、计时或计数,计数值(TAxR寄存器的值)被送到各个捕获/比较模块中,它们可以在无须CPU干预的情况下根据触发条件与计数器值自动完成某些测量和输出功能。只需定时、计数功能时,可以只使用主计数器部分。而在PWM调制、利用捕获测量脉宽、周期等应用中,还需要捕获/比较模块的配合。

值得注意的是,MSP432单片机的定时器A是由多个形式相近的模块构成的,每个定时器模块又具有不同个数的捕获/比较器。它们的命名形式分别为TAx、TAxCCRx(x=0、1、……,具体数目与具体型号有关),例如,TA0、TA0CCR0、TA0CCR4、TA1、TA1CCR0、TA1CCR1等。

1.16位定时器原理

16位定时器的计数值寄存器TAxR在每个时钟信号的上升沿进行增加/减少,可利用软件读取TAxR寄存器的计数值。此外,当定时时间到,并且产生溢出时,定时器可产生中断。置位定时器控制寄存器中的TACLR控制位可自动清除TAxR寄存器的计数值;同时,在增减计数模式下,清除了时钟分频器和计数方向。

(1)时钟源选择和分频器

定时器的参考时钟源可以来自内部时钟ACLK、SMCLK,或者来自TACLK、INCLK引脚输入,可通过TASSEL控制位进行选择。选择的时钟源首先通过ID控制位进行1、2、4、8分频,对于分频后的时钟,可通过TAIDEX控制位进行1、2、3、4、5、6、7、8分频。

(2)Timer_A工作模式

Timer_A共有4种工作模式:停止模式、增计数模式、连续计数模式和增减计数模式,具体工作模式可以通过MC控制位进行选择,具体配置如表6-9所示。

1)停止模式

停止模式用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。例如,停止模式前,Timer_A定时器工作于增减计数模式并且处于下降计数方向,停止模式后,Timer_A仍然工作于增减计数模式下,从暂停前的状态开始继续沿着下降方向开始计数。如若不想这样,则可通过TAxCTL中的TACLR控制位来清除定时器的计数及方向记忆特性。

2)增计数模式

比较寄存器TAxCCR0用作Timer_A增计数模式的周期寄存器,由于TAxCCR0为16位寄存器,所以在该模式下,定时器A连续计数值应小于0FFFFh。TAxCCR0的数值定义了定时的周期,计数器TAXR可以增计数到TAxCCR0的值,当计数值与TAxCCR0的值相等(或定时器值大于TAxCCR0的值)时,定时器复位并从0开始重新计数。增计数模式下的计数过程如图6-33所示。

当定时器计数值计数到TAxCCR0时,置位CCR0中断标志位CCIFG。当定时器从TAxCCR0计数到0时,置位Timer_A中断标志位TAIFG。增计数模式下中断标志位设置过程如图6-34所示。

【例6.4.3】利用TA0定时器,使其工作在增计数模式,采用ACLK作为其计数参考时钟,并启用TA0CCR0计数中断,在TA0中断服务程序中反转P1.0口状态,以便于用示波器进行观察。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/5 16:44:22

完整指南:3分钟掌握Labelme转YOLO格式的实战技巧

完整指南:3分钟掌握Labelme转YOLO格式的实战技巧 【免费下载链接】Labelme2YOLO Help converting LabelMe Annotation Tool JSON format to YOLO text file format. If youve already marked your segmentation dataset by LabelMe, its easy to use this tool to h…

作者头像 李华
网站建设 2026/2/16 3:51:31

视频字幕制作革命:5个理由让你选择VideoSrt自动生成工具

视频字幕制作革命:5个理由让你选择VideoSrt自动生成工具 【免费下载链接】video-srt-windows 这是一个可以识别视频语音自动生成字幕SRT文件的开源 Windows-GUI 软件工具。 项目地址: https://gitcode.com/gh_mirrors/vi/video-srt-windows 还在为视频字幕制…

作者头像 李华
网站建设 2026/2/15 14:12:54

终极解决方案:一键获取全版本iOS设备调试支持文件

终极解决方案:一键获取全版本iOS设备调试支持文件 【免费下载链接】iOSDeviceSupport All versions of iOS Device Support 项目地址: https://gitcode.com/gh_mirrors/ios/iOSDeviceSupport 还在为Xcode无法识别新设备而烦恼吗?🤔 iO…

作者头像 李华
网站建设 2026/2/16 13:13:22

PostgreSQL到MySQL数据迁移终极指南:pg2mysql完整使用教程

PostgreSQL到MySQL数据迁移终极指南:pg2mysql完整使用教程 【免费下载链接】pg2mysql 项目地址: https://gitcode.com/gh_mirrors/pg2/pg2mysql 还在为PostgreSQL到MySQL的数据迁移而烦恼吗?数据类型不兼容、字段长度限制、数据丢失风险...这些问…

作者头像 李华
网站建设 2026/2/18 11:19:24

在iPhone上轻松操控Android手机:Scrcpy-iOS跨设备控制完全指南

在iPhone上轻松操控Android手机:Scrcpy-iOS跨设备控制完全指南 【免费下载链接】scrcpy-ios Scrcpy-iOS.app is a remote control tool for Android Phones based on [https://github.com/Genymobile/scrcpy]. 项目地址: https://gitcode.com/gh_mirrors/sc/scrcp…

作者头像 李华
网站建设 2026/2/17 10:47:23

高效实用的系统配置部署指南:从零开始掌握技术部署

高效实用的系统配置部署指南:从零开始掌握技术部署 【免费下载链接】synology-baiduNetdisk-package 项目地址: https://gitcode.com/gh_mirrors/sy/synology-baiduNetdisk-package 想要快速掌握系统配置和技术部署的核心要领吗?本指南将带你从基…

作者头像 李华