/****************************************************************************
* 文 件 名: main.c
* 作 者: Andy
* 修 订: 2013-01-08
* 版 本: 1.0
* 描 述: 操作IO口控制3盏LED灯的全亮和全灭、闪烁、流水灯
****************************************************************************/
#include <ioCC2530.h>
typedef unsigned char uchar;
typedef unsigned int uint;
#define LED2 P1_1
uchar KeyValue = 0;
uint count = 0;
void DelayMS(uint msec)
{
uint i,j;
for (i=0; i<msec; i++)
for (j=0; j<535; j++);
}
void InitLed(void)
{
P1DIR |= 0x02; //P1.1定义为输出 这个地方一定要改
LED2=1;
}
void InitTimer3(void)
{
T3CTL |= 0x08; //溢出标志
T3IE = 1; //定时器T3势能
T3CTL |= 0xE0; //128分频
T3CTL &= ~0x03; //定时器计数方式
T3CTL |= 0x10; //启动定时器
EA = 1;
}
/****************************************************************************
* 程序入口函数
****************************************************************************/
void main(void)
{
InitLed(); //设置LED灯相关IO口
InitTimer3();
while(1) //死循环
{
if(KeyValue ==1)
{
LED2 = ~LED2;
KeyValue = 0;
}
};
}
#pragma vector = T3_VECTOR
__interrupt void T3_ISR(void)
{
IRCON = 0x00;
if(count++ > 244)
{
count = 0;
KeyValue = 1;
}
}