/**************************************************************************** * 文 件 名: 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; } }
时间: 2024-11-06 17:03:17