Chào các bác.
Em có một câu hỏi đó là làm sao để nhận được 1 chuỗi từ PC qua UART bằng cách sử dụng ngắt ạ?
MCU của em là STM32F103VET6, sử dụng thư viện chuẩn CMSIS, em dùng Hercules để truyền/nhận tín hiệu.
Em đã thử nhận chuỗi kiểu cùi bắp này thì đã thành công, tiện đây xin các bác góp ý code đó luôn ạ
Em có một câu hỏi đó là làm sao để nhận được 1 chuỗi từ PC qua UART bằng cách sử dụng ngắt ạ?

MCU của em là STM32F103VET6, sử dụng thư viện chuẩn CMSIS, em dùng Hercules để truyền/nhận tín hiệu.
Em đã thử nhận chuỗi kiểu cùi bắp này thì đã thành công, tiện đây xin các bác góp ý code đó luôn ạ

Code:
char re_UART(void)
{
char c;
while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == 0);
c=USART_ReceiveData(USART1);
USART_ClearFlag(USART1, USART_FLAG_RXNE);
return c;
}
void rechr_UART(char *s)
{
while(((*s)=re_UART())!=35) s++; // 35 tuơng ứng kí tự # trong bảng mã ASCII :D
*s=0;
}

Comment