宏定义
#include<iocc2530.h> #include<string.h> #define uint unsigned int #define uchar unsigned char #define LED1 P1_0 #define LED2 P1_5
初始化
/********************** *函数名称:Init_Led *函数功能:初始化led引脚 *入口函数: *出口函数: **********************/ void Init_Led(void) { P1SEL&=~0X39; P1DIR|=0X39; P1&=~0x39; }
/********************** *函数名称:Init_UART *函数功能:初始化串口 *入口函数: *出口函数: **********************/ void Init_UART(void) { PERCFG&=~0x01; CLKCONCMD&=0X80; U0CSR|=0X80; P0SEL|=0X0C; U0BAUD=216; U0GCR=10; U0CSR|=0X40; UTX0IF=0; }
数据发送
/********************** *函数名称:Send_UART_String *函数功能:数据发送 *入口函数:Receive_UART_String() *出口函数: **********************/ void Send_UART_String(char c) { LED1=0; LED2=1; U0DBUF=c; while(UTX0IF==0); UTX0IF=0; }
数据接收
/********************** *函数名称:Receive_UART_String() *函数功能:数据接收 *入口函数: *出口函数: *返回类型:char **********************/ char Receive_UART_String() { char c; LED1=1; LED2=0; while(!URX0IF); URX0IF=0; c=U0DBUF; return c; }
主函数
main() { Init_Led(); Init_UART(); while(1) { } }
中断
#pragma vector=URX0_VECTOR __interrupt void URX0_ISR(void) { char Data; Data=Receive_UART_String(); Send_UART_String(Data); Data=~Data; }