S.D.Lu的MSP430入门学习笔记(5):看门狗定时器和低功耗模式
更新时间:2023-05-21 18:28:01 阅读量: 实用文档 文档下载
- sd论坛推荐度:
- 相关推荐
S.D.Lu的MSP430入门学习笔记(5):
看门狗定时器和低功耗模式
看门狗定时器WDT最简单的应用例程是“msp430g2xx2_wdt_04.c”
程序运行结果是P1.0口输出约33.6Hz的方波信号。为什么是33.6Hz呢?
即上电清零(PUC)后,WDT的时钟来源是DCOCLK,约1.1MHz,其复位间隔为32768个时钟周期,所以P1.0口的芯片频率=1.1MHz/32768≈33.569Hz。
代码分析:
78行,程序运行到这来之后进入低功耗模式LPM4,所有时钟均停止,振荡器被禁止。但DCO除外,因为禁用DCO是有条件的。
在本例中,DCOCLK被用作MCLK和SMCLK,所以不能被关闭。
程序运行到78行时,CPU停止运行,但是WDT依然由DCOCLK驱动着,每经过32768个DCOCLK周期就产生一个上电清零PUC,退出LPM4低功耗模式,CPU被唤醒,程序会调到main函数入口重新运行。所以每32768个DCOCLK周期,76~78行代码被执行一次,从而在P1.0口输出约33.6Hz的方波信号。
低功耗模式:
MSP430有5种运行模式,使用状态寄存器SR内的CPUOFF,OSCOFF,SCG0和SCG1位来配置低功耗模式0到4。
在程序中,进入低功耗模式的操作很简单,调用相应的宏定义即可。
本例中78行调用的是本征函数_BIS_SR();,更直观和简单的写法的调用上图中的宏。 如:_BIS_SR(LPM4_bits);
可以写成:LPM4;。
在实际应用中,经常会在进入低功耗模式时打开全局中断,以便中断能够唤醒CPU处理各种事件。所以经常用_BIS_SR(LPMx_bits + GIE);语句进入低功耗模式。当然也可以单独打开和关闭全局中断,分别使用_BIS_SR(GIE);和_BIC_SR(GIE);语句。
低功耗模式的退出
TI官方例程“msp430g2xx2_wdt_01.c”的代码如下。
其运行结果是,P1.0口输出频率约为16Hz的方波。
如果将程序内容改为
其运行结果是,P1.0口输出频率约为16Hz的方波,P1.6口输出频率约为78KHz的方波。
如果将87行的LPM0_EXIT;屏蔽掉,则P1.0口输出频率约为16Hz的方波,P1.6口无方波输出。这说明在本例中,如果在WDT中断函数中没有执行LPM0_EXIT;语句,则76~79行无法被执行,程序会在执行完75行的代码后进入LPM0模式。
在低功耗模式下,一个被启用的中断事件将MSP430从任一低功耗模式中唤醒。如果在中断服务函数中没有退出低功耗模式,即没有执行LPMx_EXIT;语句,则执行完中断服务函数后,CPU会重新进入低功耗模式。
看门狗定时器:
MSP430的看门狗定时器WDT有两种工作模式:看门狗模式和定时器模式。
WDT的计数器WDTCNT是一个16位的不能直接用软件访问递增计数器。WDTCNT通过安全装置定时器+控制寄存器WDTCTL来控制WDTCNT和选择时间间隔。WDTCNT可以来源于ACLK或SMCLK。用WDTSSEL位时钟源选择。
看门狗模式下,WDT的作用是在程序运行出现异常时复位CPU,保障系统安全。定时器模式下,WDT用于产生一个定时时间,也可以用于产生一个定时中断。
因为WDT的计数器WDTCNT不能直接用软件访问,这能选择几个定时时间。 例程“msp430g2xx2_wdt_07.c”代码如下。
73~81行,用于选择不同的定时间隔,产生PUC的频率不同,程序运行的结果是,在P1.0输出不同频率的方波。
例程“msp430g2xx2_wdt_01.c”代码如下。
71行,WDT_MDLY_32可以换成下面宏定义中的其他值,可以得到不同的WDT中断频率,程序运行的结果是,在P1.0输出不同频率的方波。
注意,注释中所标示的时间间隔是有前提条件,那就是SMCLK=1MHz,
ACLK=32768Hz。
72行,使能WDT中断。75行,使能全局中断,并进入LPM0模式。
“msp430g2xx2_wdt_07.c”和“msp430g2xx2_wdt_01.c”两个例程使用了WDT的不同模式,前者使用看门狗模式,后者使用的是定时器模式。每种模式只有8种时间间隔可以选择。
WDT相关的寄存器有三个,WDTCTL、IE1、IFG1,其各个位的功能定义请查看用户指南。应该注意的是,WDTCTL是一个16位寄存器,其高8位为操作密码。每次写入WDTCTL时,高8为必须写入0x5A,即操作密码,否则就会产生一个PUC。读WDTCTL时,其高8位总是0x69。
作者:S.D.Lu
深圳
2014-3-26
正在阅读:
S.D.Lu的MSP430入门学习笔记(5):看门狗定时器和低功耗模式05-21
发挥多媒体在小学数学教学中的作用05-25
软件测试 职业发展方向(精)09-05
2015年黑龙江省大庆市中考物理试卷解析03-06
学院党政负责人述职报告09-26
高中语文作文阅读10-02
国际私法案例题集及答案08-16
部编本人教版一年级语文上册一年级上册识字7《大小多少》教学设计08-24
计算机组成原理课后答案(唐朔飞第二版)05-05
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 定时器
- 看门
- 功耗
- 入门
- 模式
- 笔记
- MSP430
- 学习
- Lu
- 超前支护液压支架说明书
- 中国非晶合金变压器行业市场分析与发展趋势研究报告-灵核网
- 新人教版五年级数学下册第七单元折线统计图教案
- 2012年凉山州高中阶段招生统一考试数学试题及答案
- 平衡计分卡说明教程
- hnd 经济学review for outcome 3
- (甘志国)先解决一个问题,再解决一串问题
- 家庭社会工作期末考试复习重点
- 第七届朗训“未来之星”少儿英语风采大赛新闻发布会通稿
- 变速自行车使用方法
- 互联网金融模式变革与银行业务创新
- 张涛述职述廉报告2011
- 基于温度、电流自动控制的半导体激光器稳频技术研究
- 小学四年级数学教师个人发展规划
- ocpp-j-1.6-specification
- 安徽公务员考试资料分析练习1
- 关于企业社会责任问题的分析
- 批发 电子监管总结
- 中财会计学考研:备考心得体会
- 网页设计第二章 网页基本内容设计