MSPM0L1306小练-定时器syscfg的配置

[复制链接]
 楼主| xyz549040622 发表于 2024-4-28 11:08 | 显示全部楼层 |阅读模式
本帖最后由 xyz549040622 于 2024-4-28 15:50 编辑

1、首先我们理解两个概念,TIMA和TIMG,我们很容易想当然的认为这是定时器A-G,随后还有TIMB、TIMC等,其实的TIMG意思是通用计时器、TIMA的意思是 高级控制计时器。下表就是MSPM0x支持的TIMx的配置。
wps_bmOxdOQXdM.png
但是具体到MSPM0L130x系列,总共有四个16位通用计时器,每个计时器具有两个捕捉/比较寄存器,支持待机模式下的低功耗运行,总共支持 8 个 PWM 通道。
我们看到syscfg的配置中最大也只能增加四个定时器。
ccstudio_LGtk6E1tfx.png
2、然后syscfg贴心的给出了一个快速配置的选项,可以快速的配置为500ms单次模式和500ms的周期模式,还有一个Custom模式 ccstudio_LrYeubiXDL.png
那么什么是单次模式和周期模式呢?
wps_fVJgNOXKm3.png
wps_Jutd0wstLq.png
所谓的Custom模式,就是所有的参数都是自己配置的。我们选择Custom模式,自己配置定时器的参数。
3、下面就是自己设置定时器的参数了。 ccstudio_35YOWCO62i.png

首先是配置定时器的时钟源和分频系数、预分频系数,突然你发现随着这三者的变化,syscfg贴心的把当前配置定时器的最小时间和最大时间都给你列出来了。
ccstudio_eaBq0Le5G3.png
这里对时钟没有特殊要求的话,满足你的定时时间就好了,可以随意配置。(随着分配系数的不同,稍微会影响定时的精度)
接下来设置你想要的定时的时候,会自动给出实际的定时精度,因为时钟和分频系数的不同,会影响定时的精度。如果你设置的分配系数是整除的话,定时是会相当精确的。
ccstudio_nh7zJenRLF.png
接下来是设置向上还是向下计数,周期还是单次计数。
然后设置你想要期望的定时器周期和实际的定时器周期,如果分配设置好了,两者是没有误差的。
ccstudio_HZetCApU3l.png
这里选择不启动定时器,需要在程序中手动开启定时器。
DL_TimerG_startCounter(TIMER_0_INST);//启动定时器0
中断配置为归零事件中断。所谓归零事件,就是计数为0时,生成的事件。
ccstudio_q22iLN05V1.png
至此,定时器的syscfg配置完毕,我们进入程序的编写状态了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:qq群: 嵌入式系统arm初学者 224636155←← +→→点击-->小 i 精品课全集,21ic公开课~~←←→→点击-->小 i 精品课全集,给你全方位的技能策划~~←←

2841

主题

19330

帖子

110

粉丝
快速回复 在线客服 返回列表 返回顶部
个人签名:qq群: 嵌入式系统arm初学者 224636155←← +→→点击-->小 i 精品课全集,21ic公开课~~←←→→点击-->小 i 精品课全集,给你全方位的技能策划~~←←

2841

主题

19330

帖子

110

粉丝
快速回复 在线客服 返回列表 返回顶部