- Đăng vào
Lập trình giao tiếp USART với STM32F4
Giới thiệu
Bài viết này sẽ trình bày ví dụ đơn giản lập trình giao tiếp USART trên Kit STM32F4 Discovery. Chương trình được viết trên IDE Keil uVision5, sử dụng thư viện STM32 HAL, sau khi lập trình và nạp code vào kit, phần mềm Eltima Serial Port Monitor được sử dụng để hiển thị dữ liệu truyền nhận. Thư viện STM32 HAL Đầu tiên chúng ta cần download thư viện STM32 HAL tại đây. Sau khi download và giải nén chúng ta được hai thư mục:
- 00-HAL_DRIVERS
- 00-STM32_LIBRARIES
Linh kiện sử dụng
- Kit STM32F4 Discovery
- Mạch USB to UART CP2102
Sơ đồ đấu dây
Code C
#include "stm32fxxx_hal.h"
/* Include my libraries here */
#include "defines.h"
#include "stm32_disco.h"
#include "stm32_delay.h"
#include "stm32_usart.h"
int main(void) {
/* Init system clock for maximum system speed */
RCC_InitSystem();
/* Init HAL layer */
HAL_Init();
/* Init leds */
DISCO_LedInit();
/* Init USART, TX: PC6, RX: PC7, 115200 bauds */
USART_Init(USART6, USART_PinsPack_1, 115200);
/* Put test string */
USART_Puts(USART6, "The initialization was completed\n");
while (1) {
/* Check if we have string ".!" in USART6 buffer */
if (USART_FindString(USART6, ".!") >= 0) {
USART_Puts(USART6, "Receive:\n");
/* Send data back from buffer */
while (!USART_BufferEmpty(USART6)) {
/* Send to computer */
USART_Putc(USART6, USART_Getc(USART6));
}
USART_Puts(USART6, "\n");
}
}
}
Download project Keil uVision5 tại đây và giải nén vào thư muc chứa thư viện HAL