如题,在usart.c里面定义了u16 USART_RX_STA=0; //接收状态标记
USART_RX_STA在main.c里面是没有定义的,可是却可以直接拿来使用
if(USART_RX_STA&0x8000)
{
len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度
printf("您发送的消息为:\r\n");
for(t=0;t<len;t++)
{
USART_SendData(USART1, USART_RX_BUF[t]);//向串口1发送数据
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束
}
}
那是因为用到了关键字extern,在usart.h头文件里面有extern u16 USART_RX_STA; //接收状态标记
所以可以在main中直接引用USART_RX_STA
|