#include <iocc2530.h>
/***初始化***/
void led_init();
void sw1_init();
void usart_init();
/***发送函数***/
void send(char *data,long len);
/***变量***/
char temp;
/***布尔开关***/
char RX_FLAG;
/***主函数***/
void main()
{
led_init();
sw1_init();
usart_init();
while(1)
{
if(RX_FLAG==1)
{
RX_FLAG=0;
if(temp=='1')
{
P1_0=~P1_0;
}
if(temp=='2')
{
P1_1=~P1_1;
}
}
}
}
/***P1中断***/
#pragma vector=P1INT_VECTOR
__interrupt void p1_int()
{
if(P1IFG&0X04)
{
send("hello",5);
}
P1IFG=0X00;
}
/***串口0中断***/
#pragma vector=URX0_VECTOR
__interrupt void usart0_int()
{
temp=U0DBUF;
URX0IF=0;
RX_FLAG=1;
}
/***发送函数***/
void send(char *data,long len)
{
while(len--)
{
U0DBUF=*data++;
while(UTX0IF==0);
UTX0IF=0;
}
}
/***初始化***/
void led_init()
{
P1SEL&=~0X03;
P1DIR|=0X03;
P1&=~0X03;
}
void sw1_init()
{
P1SEL&=~0X04;
P1DIR&=~0X04;
P1INP&=~0X04;
P2INP&=~0X40;
IEN0|=0X80;
IEN2|=0X10;
P1IEN|=0X04;
PICTL&=~0X02;
}
void usart_init()
{
CLKCONCMD&=0X80;
while(CLKCONSTA&0x40);
PERCFG&=~0X01;
P0SEL|=0X0C;
P2DIR&=~0XC0;
U0CSR|=0XC0;
U0BAUD=59;
U0GCR=9;
IEN0|=0X84;
}
4.Zigbee串口参考收
最新推荐文章于 2024-04-06 01:13:56 发布