- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
PAGE1
PAGE1
TM4C123G定时器应用
定时器概述
定时器是嵌入式系统中最常用的外设之一,广泛应用于时间延迟、周期性事件触发、脉冲宽度调制(PWM)等场景。TM4C123G定时器基于ARMCortex-M4内核,提供了灵活的定时功能,支持多种工作模式,包括周期模式、一次性模式、捕获模式和比较模式等。定时器的主要功能包括:
时间延迟:实现精确的时间延迟,用于任务调度、延迟处理等。
周期性事件触发:生成周期性的中断,用于实时系统中的任务调度、数据采样等。
脉冲宽度调制(PWM):生成PWM信号,用于控制电机速度、LED亮度等。
捕获模式:捕捉外部信号的边沿,用于测量脉冲宽度、频率等。
TM4C123G定时器模块包括多个独立的定时器,每个定时器都可以独立配置和使用。定时器的主要组成部件包括定时器控制寄存器、定时器负载寄存器、定时器值寄存器、定时器匹配寄存器等。
定时器基本配置
定时器控制寄存器
定时器控制寄存器(GPTMCTL)用于控制定时器的启动和停止。该寄存器包含以下主要位:
TAEN:定时器A使能位,设置为1时启动定时器A。
TBEN:定时器B使能位,设置为1时启动定时器B。
TAPWML:定时器APWM输出使能位,设置为1时使能PWM输出。
TBPWML:定时器BPWM输出使能位,设置为1时使能PWM输出。
定时器配置寄存器
定时器配置寄存器(GPTMCFG)用于配置定时器的工作模式。该寄存器包含以下主要位:
TMCW:定时器模式选择位,设置为0选择32位定时器,设置为0选择16位定时器。
定时器模式选择寄存器
定时器模式选择寄存器(GPTMTAMR)用于选择定时器A的工作模式,定时器模式选择寄存器(GPTMTBMR)用于选择定时器B的工作模式。这些寄存器包含以下主要位:
TAMR:定时器A模式选择位,设置为0选择一次性模式,设置为0选择周期模式。
TBMR:定时器B模式选择位,设置为0选择一次性模式,设置为0选择周期模式。
TACMR:定时器A捕获模式选择位,设置为0选择捕获模式。
TBCMR:定时器B捕获模式选择位,设置为0选择捕获模式。
TAAMS:定时器A自动重载模式选择位,设置为0选择自动重载模式。
TBAMS:定时器B自动重载模式选择位,设置为0选择自动重载模式。
定时器负载寄存器
定时器负载寄存器(GPTMLOAD)用于设置定时器的初始值或重载值。定时器从这个值开始递减计数,当计数值达到0时,会触发相应的中断或事件。
定时器值寄存器
定时器值寄存器(GPTMVALUE)用于读取当前定时器的计数值。该寄存器是只读的,用于监测定时器的当前状态。
定时器匹配寄存器
定时器匹配寄存器(GPTMTAMATCHR)和(GPTMTBMATCHR)用于设置定时器A和定时器B的匹配值。当定时器的计数值与匹配值相等时,可以触发中断或事件。
定时器中断寄存器
定时器中断寄存器(GPTMIMR)、定时器中断状态寄存器(GPTMRIS)、定时器中断清除寄存器(GPTMICR)和定时器中断使能寄存器(GPTMIS)用于配置和管理定时器的中断。
GPTMIMR:定时器中断使能寄存器,用于使能特定的中断。
GPTMRIS:定时器中断状态寄存器,用于读取中断状态。
GPTMICR:定时器中断清除寄存器,用于清除中断标志。
GPTMIS:定时器中断使能寄存器,用于使能特定的中断。
定时器预分频寄存器
定时器预分频寄存器(GPTMPR)用于设置定时器的预分频值。预分频值可以进一步减慢定时器的计数速度,从而实现更长的时间间隔。
定时器编程示例
一次性模式定时器
一次性模式定时器在计数达到0时触发一次中断,然后停止计数。以下是一个使用一次性模式定时器生成1秒延迟的示例代码。
#includestdint.h
#includestdbool.h
#includeinc/tm4c123gh6pm.h
#includeinc/hw_memmap.h
#includedriverlib/sysctl.h
#includedriverlib/gpio.h
#includedriverlib/timer.h
//定义定时器基地址
#defineGPTM_BASEGPTM0_BASE
//定义定时器A的周期值
#defineTIMER_PERIOD//1秒(假设系统时钟为16MHz)
voidTimerInit(void){
//使
您可能关注的文档
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(1).Arduino Due 概述.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(2).ATSAM3X8E 微控制器介绍.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(3).Arduino Due 硬件架构.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(4).电源管理与供电方式.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(5).数字输入输出.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(6).模拟输入输出.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(7).通信接口:串口、SPI、I2C.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(8).高级定时器和PWM功能.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(9).外部中断.docx
- Arduino 系列:Arduino Due (基于 ATSAM3X8E)_(10).ADC与DAC功能.docx
- 护理安全试题及答案.doc
- 高中人工智能教育创新实践环节的教学策略与评价研究教学研究课题报告.docx
- 《在线教育平台互动功能对学生学习参与度与学习成效的定量分析》教学研究课题报告.docx
- 胸外科护理课件PPT.pptx
- 餐饮食材发酵创新创业项目商业计划书.docx
- 2025至2030中国醋酸卡泊芬净行业市场占有率及投资前景评估规划报告.docx
- 湖北省应城市2024-2025学年八年级下学期期末考试语文试题(解析版).docx
- 大学生实习个人总结范文.docx
- 初中英语口语教学中的教师角色定位与转变策略教学研究课题报告.docx
- 基于物联网技术的城市老旧小区改造智能化管理研究教学研究课题报告.docx
文档评论(0)