Khóa học Lập Trình Ứng Dụng STM32F103 phù hợp với người đã biết lập trình C và muốn đi sâu hơn vào lập trình nhúng với dòng STM32F103 trên kit BluePill. Nội dung gồm 33 video bài giảng, đi từ làm quen phần cứng, cấu hình clock, GPIO và LCD đến ngắt ngoài, timer, PWM, ADC, UART, I2C, quản lý Flash, Bootloader, DMA, USB CDC và nhiều ứng dụng ngoại vi thực tế khác để giúp người học xây nền tảng STM32 rõ ràng hơn.
✨ Điểm nổi bật của khóa học
33 video bài giảng STM32F103 BluePill CubeMX + HAL GPIO đến DMA UART + I2C + USB Bootloader + Flash
|
🚀
|
Phần 1: Làm quen với STM32F103 và môi trường phát triển
Phần mở đầu giúp người học hiểu phần cứng BluePill và cách bắt đầu với hệ sinh thái STM32.
● Giới thiệu kit BluePill STM32F103C8 và các thành phần phần cứng quan trọng trên board.
● Làm quen với cách cấu hình clock như HSE, HSI và tư duy xây dựng project bằng CubeMX/HAL.
● Tạo nền tảng để người học tiếp cận STM32 theo hướng dễ dùng, dễ tái sử dụng và dễ mở rộng hơn.
|
|
🔌
|
Phần 2: GPIO, LCD, ngắt ngoài và timer
Đây là cụm nội dung giúp người học làm quen với những ngoại vi nền tảng nhất của STM32.
● Thực hành GPIO đầu ra, đầu vào và xử lý nút nhấn có chống dội để hiểu rõ thao tác với chân I/O.
● Hiển thị LCD 16x2 ở cả chế độ 8-bit và 4-bit để làm quen với việc giao tiếp ngoại vi cơ bản.
● Học về ngắt ngoài, ưu tiên ngắt và cách xử lý các tình huống thường gặp như dùng HAL_Delay trong ngắt.
● Làm quen timer delay microsecond và Input Capture để đo tín hiệu, đo tần số trong các ứng dụng thực tế.
|
|
📡
|
Phần 3: PWM, ADC, UART, I2C và các giao tiếp ngoại vi
Sau phần nền tảng, khóa học mở rộng sang các ngoại vi được dùng rất nhiều trong lập trình nhúng thực tế.
● Học PWM để điều khiển LED, đo duty cycle bằng PWM Input và tạo tín hiệu cho các ứng dụng điều khiển.
● Thực hành ADC ở cả chế độ polling và interrupt, kết hợp cảm biến quang hoặc ADC + PWM để điều khiển servo.
● Làm quen UART ở cả polling và interrupt, kết hợp Ring Buffer để xử lý dữ liệu nối tiếp hiệu quả hơn.
● Học I2C với DS1307, giao tiếp Bluetooth HC-05 và hiển thị dữ liệu lên LCD trong các ví dụ ứng dụng cụ thể.
|
|
🛠️
|
Phần 4: Flash, Bootloader, DMA, USB và các kỹ thuật nâng cao
Đây là cụm nội dung giúp người học tiến xa hơn từ điều khiển ngoại vi sang các chủ đề gần với sản phẩm nhúng thực tế hơn.
● Quản lý bộ nhớ Flash với các thao tác đọc, ghi, xóa và làm quen Bootloader cơ bản.
● Tìm hiểu Watchdog Timer, USB CDC giao tiếp với PC và DMA cho Memory-to-Memory hoặc ADC.
● Tiếp cận các bài toán non-blocking blink, xử lý tín hiệu IR/RF và các tình huống cần tư duy debug rõ ràng hơn.
● Phần này rất phù hợp với người muốn đặt nền tảng để học tiếp STM32 nâng cao, RTOS hoặc Linux Embedded.
|
👨🎓 Khóa học này dành cho ai?
- Người đã biết lập trình C và muốn chuyển sang lập trình nhúng với STM32 theo lộ trình dễ bám hơn.
- Sinh viên điện tử, cơ điện tử, tự động hóa hoặc kỹ sư nhúng muốn làm chủ các ngoại vi phổ biến trên STM32F103.
- Người muốn học từ GPIO, timer, UART, ADC đến DMA, Flash và Bootloader trong cùng một khóa học.
- Người đang cần một nền tảng chắc để tiếp tục học RTOS, IoT hoặc các chương trình embedded nâng cao hơn.
💡 Học xong bạn có thể làm được gì?
- Hiểu rõ cách làm việc với STM32F103 và môi trường phát triển dựa trên CubeMX/HAL.
- Tự triển khai các ngoại vi cơ bản và trung cấp như GPIO, LCD, ngắt ngoài, timer, PWM, ADC, UART và I2C.
- Làm quen với các chủ đề nâng hơn như Flash, Bootloader, DMA, USB CDC và một số bài toán điều khiển tín hiệu thực tế.
- Có nền tảng tốt hơn để debug ứng dụng nhúng và tiếp tục học các nhánh embedded chuyên sâu hơn về sau.
🧰 Bạn cần chuẩn bị gì trước khi học?
- Nên đã có kiến thức cơ bản về ngôn ngữ C để theo kịp mạch bài học và phần triển khai code.
- Sẽ thuận tiện hơn nếu bạn có kit BluePill STM32F103 và các module ngoại vi để thực hành cùng bài giảng.
- Phù hợp với người sẵn sàng học theo trình tự từ ngoại vi cơ bản đến các kỹ thuật nâng cao hơn trong lập trình nhúng.