STM32发送AT并用LED显示:
1.利用USART1发送数据给使用AT的模块
void SendChar(char *buff){
unsigned char i=0;
while(buff[i]!='\0'){
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET);
USART_SendData(USART1,buff[i]);
USART_ClearFlag(USART1,USART_FLAG_TC);
i++;
}
}
利用USART1接收数据
uint8_t Serial_RxFlag;//用于记录标志位
char Recive_table[1024];//接收数组
void USART1_IRQHandler(void){//利用中断接收数据
static unsigned char i=0;
if(USART_GetITStatus(USART1,USART_IT_RXNE) != RESET)
{
Recive_table[i]=USART_ReceiveData(USART1); //MCU接收模块返回值
i++;
if(Recive_table[i-1]=='\n')
{
Recive_table[i]='\0';
i=0; //遇到换行重新装值
Serial_RxFlag = 1;
}
}
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
{
USART_ClearITPendingBit(USART1, USART_IT_RXNE);
}
US