资源简介
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实现代码
相关资源
- msp430f149超声波雷达
- MSP430利用定时器测频率
- 基于msp430智能小车程序
- MSP430G2553和DS1302时钟程序
- 基于msp430智能家居程序
- ADF4350单片机MSP430控制程序
- 基于MSP430制作MP3源程序
- 基于MSP430单片机的交流电压测量设计
- msp430的pwm程序
- LCD12864实现贪吃蛇游戏
- MSP430F149利用硬件SPI口读写串行Flash
- MSP430PID模块化程序
- MSP430 单片机读写SD卡程序带fat文件系
- msp430 模块程序 包括DS18B20 PS2 串口 电
- MSP430单片机的实时多任务操作系统c源
- Nokia5110的程序在msp430G2553上可以
- msp430F149应用电路原理图
- DAC7811的驱动程序基于MSP430
- msp430FFT程序
- 基于msp430实现电子时钟程序
- AD9850的msp430串行程序
- LaunchPad(MSP430G2553)_官方例程
- 基于MSP430的温度采集系统设计
- MSP430g2553 读写Flash以及串口通讯
- MSP430舵机控制程序
- 基于msp430的的菜单和波形发生器的设
- msp430实现八路抢答器
- 基于MSP430和RC522门禁.zip
- 基于MSP430公交充值卡DEMO.zip
- 基于MSP430F5529的寻迹小车程序
评论
共有 条评论