MSP430(G2553)用看门狗定时器来产生周期信号
来源:互联网 发布:c语言三种基本结构 编辑:程序博客网 时间:2024/05/16 09:47
#include <msp430g2553.h>#include <intrinsics.h>volatile unsigned int i = 0; // 中断服务子程序中所用到的全局变量, 最好定义成 volatile 型, 具体原因和用法可以参考我的其他博文介绍void main (void){ WDTCTL = WDT_MDLY_0_5; // 周期 0.5ms, 设置可参考下面头文件中的截段 IE1 |= WDTIE; // 使能WDT中断 P2DIR |= BIT2; // P2.2输出 _EINT(); // 使能全局中断 for (;;) { LPM0; // 进入LPM0 _NOP(); }}// 看门狗中断服务子程序#pragma vector=WDT_VECTOR__interrupt void WDT_Timer_ISR(void){ if (i++ > 1) { P2OUT ^= BIT2; // 取反 }}
==============================================================================================================================
//==========================================================================================================================// 相关头文件中的定义/************************************************************* WATCHDOG TIMER************************************************************/#define __MSP430_HAS_WDT__ /* Definition to show that Module is available */#define WDTCTL_ (0x0120u) /* Watchdog Timer Control */DEFW( WDTCTL , WDTCTL_)/* The bit names have been prefixed with "WDT" */#define WDTIS0 (0x0001u)#define WDTIS1 (0x0002u)#define WDTSSEL (0x0004u)#define WDTCNTCL (0x0008u)#define WDTTMSEL (0x0010u)#define WDTNMI (0x0020u)#define WDTNMIES (0x0040u)#define WDTHOLD (0x0080u)#define WDTPW (0x5A00u)/* WDT-interval times [1ms] coded with Bits 0-2 *//* WDT is clocked by fSMCLK (assumed 1MHz) */#define WDT_MDLY_32 (WDTPW+WDTTMSEL+WDTCNTCL) /* 32ms interval (default) */#define WDT_MDLY_8 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0) /* 8ms " */#define WDT_MDLY_0_5 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1) /* 0.5ms " */#define WDT_MDLY_0_064 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1+WDTIS0) /* 0.064ms " *//* WDT is clocked by fACLK (assumed 32KHz) */#define WDT_ADLY_1000 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL) /* 1000ms " */#define WDT_ADLY_250 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS0) /* 250ms " */#define WDT_ADLY_16 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1) /* 16ms " */#define WDT_ADLY_1_9 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0) /* 1.9ms " *//* Watchdog mode -> reset after expired time *//* WDT is clocked by fSMCLK (assumed 1MHz) */#define WDT_MRST_32 (WDTPW+WDTCNTCL) /* 32ms interval (default) */#define WDT_MRST_8 (WDTPW+WDTCNTCL+WDTIS0) /* 8ms " */#define WDT_MRST_0_5 (WDTPW+WDTCNTCL+WDTIS1) /* 0.5ms " */#define WDT_MRST_0_064 (WDTPW+WDTCNTCL+WDTIS1+WDTIS0) /* 0.064ms " *//* WDT is clocked by fACLK (assumed 32KHz) */#define WDT_ARST_1000 (WDTPW+WDTCNTCL+WDTSSEL) /* 1000ms " */#define WDT_ARST_250 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS0) /* 250ms " */#define WDT_ARST_16 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS1) /* 16ms " */#define WDT_ARST_1_9 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0) /* 1.9ms " */
- MSP430(G2553)用看门狗定时器来产生周期信号
- MSP430用按键中断控制定时器产生持续 1s 的周期信号
- MSP430--看门狗定时器
- msp430看门狗定时器
- MSP430 捕获模式,定时器A连续计数模式。有软件循环产生方波信号,信号同时接入 P1.1和P1.2 ,由CCR1由CCR1获取周期,CCR0确定信号占空比
- MSP430 - G2553之串口操作
- msp430看门狗
- MSP430看门狗
- msp430 看门狗
- msp430单片机Timer_A产生两路定时器
- MSP430 G2553 寄存器列表与引脚功能
- 用AVR单片机来产生正弦波信号
- msp430 看门狗设置
- MSP430看门狗的使用
- MSP430学习笔记-看门狗
- MSP430学习笔记4-两个定时器产生步进单频音
- MSP430定时器
- 看门狗定时器
- wince中断之2
- jxl操作excel(合并单元格,设置背景色,字体颜色)
- 每天一算法(把二元查找树转变成排序的双向链表 )
- S3C2440 启动代码分析
- c/c++:内存泄露和野指针的概念
- MSP430(G2553)用看门狗定时器来产生周期信号
- C 风格字符串,C++string类,MFC,CString类的区别。
- perl中push用法,子程序返回值的反思
- 华夏正统王朝的大汉威仪 之 神宗皇帝平倭诏书
- A Bug's Life(并查集)
- Excel 大导致 报错
- 解决opensuse下的google earth中文乱码
- 泛型接口
- C#绘图