Lập trình STM32 – Truyền thông nối tiếp bất đồng bộ UART
03/11/2021, bởi Thầy TiiL trong mục: Lập trình nhúng STM32Các chủ đề chính
Ví dụ ứng dụng UART
Vài note về UART:
- Universal Asynchronous Reciver/Transmister – chuẩn giao tiếp không đồng bộ
- Ta thường dùng cho giao tiếp MCU và các thiết bị ngoại vi
- Full duplex: nghĩa là tại một thời điểm có thể truyền và nhận đồng thời.
- Baund rate (tốc độ Baund) là khoảng thời gian dành cho 1 bit được truyền. Bắt buột set giống nhau ở 2 phía gửi và nhận.
Thực hành UART STM32
Bài toán: Lập trình truyền dữ liệu nối tiếp bất động bộ qua 2 chân 9 và 10 ở cổng A của STM32F4

B2. Thiết lập tham số cho phiên giao tiếp
Bước 3: Cho phép gọi ngắt khi hoàn thành một truyền/nhận 1B
CÁC HÀM SỬ DỤNG
- void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
- Chương trình con phục vụ ngắt, khi hoàn thành một phiên UART
- HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout)
- Gửi một khối dữ liệu, có địa chỉ được trỏ bởi pData, kích thước Size Byte
- HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
- Nhận về một khối dữ luệ, cất vào vùng nhớ, trỏ bởi pData, kích thước Size Byte
Thẻ:Lập trình nhúng
Bài viết liên quan
- Bài 4. Lập trình Led trái tim với Arduino [Tự động hóa & Robot]
- Lập trình STM32 – Kết nối LCD trực tiếp [Lập trình nhúng STM32]
- Đề cương Lập trình C cho hệ thống nhúng và IoTs [Lập trình dùng Ngôn ngữ C/C++]
- Nguồn cấp xung clock cho STM32 và Ngoại vi [Lập trình nhúng STM32]