资源简介
msp430g2553单片机定时器中断例程

代码片段和文件信息
/**************************WENHUA COLLEDGE ZERO GROUP***************************
学习目标:定时器A中断间隔设定
作者: 钟皇平
时间: 2014.12.18
*******************************************************************************/
#include “msp430g2553.h“
unsigned int count=0;
//一般情况下我们使用Timer A0 0定时器或Timer A1 0定时器就可以了,因为我们可以方便的设定进入中断函数的间隔,
//而Timer A0 1 Timer A1 1定时器因为定时器进入中断函数的时间间隔目前我发现是无法改变的,进入频率极高(实验测得间隔时间为大概20us),
//太过频繁的进入中断函数会影响其他函数的运行,所以我们一般不用,这里写出只是为了方便大家学习
void InitClock() //初始化时钟 Set DCO
{ //从flash的information区把校正好的参数读进来
BCSCTL1 = CALBC1_16MHZ; //CALDCO_16MHZ 所代表的值已经被厂家存储在单片机
DCOCTL = CALDCO_16MHZ; //的FLASH信息存储器Segment段0x10F8~0x10FF地址中
BCSCTL2|=DIVS_3; //选择SMCLK时钟为DCO 8分频即2Mhz
}
void TimerA00IntInit() //Timer A0 0定时器初始化函数
{
TACTL = TASSEL_2 + MC_1+ID_1+TACLR; // SMCLK 2分频 upmode
CCTL0 = CCIE; // CCR0 interrupt enabled
CCR0 = 50000; //进入中断函数的间隔 单位:us
}
void TimerA01IntInit() //Timer A0 1定时器初始化函数
{
TA0CTL = TASSEL_2 + MC_1+ID_1+TACLR+TAIE; // SMCLK 2分频 upmode
TA0CCR0 = 50000; //进入中断函数中case 10分支的间隔(实验测得进入中断函数的间隔大概是20us) 单位:us
}
void TimerA10IntInit() //Timer A1 0定时器初始化函数
{
TA1CTL = TASSEL_2 + MC_1+ID_1+TACLR; // SMCLK 2分频 upmode
TA1CCTL0 = CCIE; // CCR0 interrupt enabled
TA1CCR0 = 50000; //进入中断函数的间隔 单位:us
}
void TimerA11IntInit() //Timer A1 1定时器初始化函数
{
TA1CTL = TASSEL_2 + MC_1+ID_1+TACLR+TAIE; // SMCLK 2分频 upmode
TA1CCR0 = 50000; //进入中断函数中case 10分支的间隔(实验测得进入中断函数的间隔大概是20us) 单位:us
}
void main()
{
WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗
InitClock(); //时钟初始化
TimerA01IntInit(); //Timer A0 1通道初始化函数
P1DIR |= 0x01; // P1.0 output
_EINT(); //使能全局中断
while(1)
{
}
}
#pragma vector=TIMER0_A0_VECTOR
__interrupt void TimerA00Int()
{
count++;
if(count==20)
{
count=0;
P1OUT ^= 0x01; // Toggle P1.0
}
}
#pragma vector=TIMER0_A1_VECTOR
__interrupt void TimerA01Int()
{
switch( TA0IV ) //判断中断标志
{
case 2: break;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-12-20 22:32 Timer A 定时中断\
目录 0 2014-12-17 14:49 Timer A 定时中断\Debug\
目录 0 2014-12-17 16:08 Timer A 定时中断\Debug\Exe\
文件 17318 2014-12-20 22:32 Timer A 定时中断\Debug\Exe\设置时钟.d43
目录 0 2014-12-20 22:33 Timer A 定时中断\Debug\List\
目录 0 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\
文件 0 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\main.pbi
文件 9927 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\main.pbi.cout
文件 12109 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\main.r43
文件 0 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\设置时钟.pbd
文件 0 2014-12-20 22:32 Timer A 定时中断\Debug\Obj\设置时钟.pbd.browse
文件 4864 2014-12-20 22:32 Timer A 定时中断\main.c
文件 0 2014-12-17 16:57 Timer A 定时中断\path.txt
文件 186 2013-08-23 18:40 Timer A 定时中断\settime.eww
目录 0 2014-12-17 14:49 Timer A 定时中断\settings\
文件 3963 2014-12-20 22:33 Timer A 定时中断\settings\settime.wsdt
文件 1676 2014-12-20 22:25 Timer A 定时中断\settings\设置时钟.cspy.bat
文件 12695 2014-12-20 22:33 Timer A 定时中断\settings\设置时钟.dbgdt
文件 1494 2014-12-20 22:33 Timer A 定时中断\settings\设置时钟.dni
文件 1970 2014-12-20 22:33 Timer A 定时中断\设置时钟.dep
文件 20422 2013-08-23 18:40 Timer A 定时中断\设置时钟.ewd
文件 52297 2013-08-23 18:40 Timer A 定时中断\设置时钟.ewp
文件 25 2014-12-20 22:33 Timer A 定时中断\设置时钟CustomSfr.sfr
- 上一篇:电感式微位移传感器
- 下一篇:类Foxmail实现代码
相关资源
- IAR for MSP430 v7.10.1 注册机
- 基于MSP430G2553的蓝牙控制小车
- 利用DS1302和msp430进行闹钟和万年历的
- msp430F149操作红外接收模块源码
- [免费]msp430f149控制PS2键盘并用1602显示
- MSP430f149读sd FAT txt
- 用8位spi实现16位spi
- 基于MSP430单片机的实时多任务操作系
- MSP430系列单片机例程(msp430f235)
- MSP430控制AD9850产生频率可调的方波及
- msp430f449程序
- 基于MSP430的数控直流电压源
- MSP430F5438A Timer_B 操作实验
- MSP430F5438 UCS 时钟操作实验
- MSP430F5438A Timer_A 操作实验
- MSP430F5438 看门狗实验
- IAR EW430连接仿真器在线仿真
- 初识畅学系列MSP430F149单片机开发板
- 畅学多功能实验箱 MSP430F5438 RTC 操作实
- MSP430F5438A RAM操作实验
- msp430f5438a技术资料
- MSP430 JTAGUSB的和并口的与目标板连接的
- MSP430教程:MSP430单片机ADC12模块
- WIA-PA网络技术在井下人员定位系统中
- 16位MSP430单片机的开关稳压电源设计
- 基于mps430f149的12864液晶显示模块编程
- MSP430F5529移植modbus
- MSP430详细教程
- MSP430信号发生器.rar
- MSP430F5529 例程源码
评论
共有 条评论