Tất cả chuyên mục
⌘

Mục

STM32 / Firmware

Có 21 nội dung trong category này.

Nội dung liên quan

STM32 / Firmware

Ngôn ngữ
Blog STM32 / Firmware

Finishing a Real HID Keyboard, from Keypress to Release

Turning key press and release events into HID reports and sending them to the host, plus what to watch out for with Boot Protocol and tap-style null reports.

#USB #STM32 #HID +4
Blog STM32 / Firmware

Firmware Log với USB CDC Debug Channel

Triển khai CDC debug channel trên STM32G0: descriptor CDC, ring buffer, ISR-safe logging và tránh xung đột DTR khi host mở COM port.

#USB #STM32 #CDC +4
Blog STM32 / Firmware

Composite Debug Tool: GUI test tổng hợp cho STM32 USB

GUI Python gộp CDC log, vendor command và RAM dump vào một màn hình: pattern queue-poll thống nhất trong tkinter, và vì sao viết GUI mới không đụng vào phần USB đã có.

#USB #STM32 #Python +4
Blog STM32 / Firmware

Hoàn thành HID keyboard thật từ sự kiện nhấn thả phím

Chuyển sự kiện nhấn thả phím thành HID report rồi gửi đến host kèm theo các lưu ý về Boot Protocol hay tap-style null report.

#USB #STM32 #HID +4
Blog STM32 / Firmware

Vendor Request và Bulk IN trên STM32G0

EP0 vendor command và Bulk IN RAM dump trên STM32G0: pending log flag, tại sao không dùng ZLP, Zadig cho Windows, và output thật từ vendor_test.py.

#USB #STM32 #Vendor +4
Blog STM32 / Firmware

What Is a USB Descriptor?

The concept and structure of USB descriptors, explained with real examples. Includes a look at how Boot Protocol fits into the Configuration Descriptor.

#USB #STM32 #Descriptor +4
Blog STM32 / Firmware

Designing the Input Pipeline Before the USB Layer

How input flows from a keypad through scanning, debounce, key policy, and an event queue, and the tradeoffs made before an HID report ever gets built.

#STM32 #GPIO #Keypad +3
Blog STM32 / Firmware

USB Descriptor là gì?

Giải thích khái niệm và cấu trúc của USB Descriptor kèm ví dụ. Lưu ý về Boot Protocol trong Configuration Descriptor

#USB #STM32 #Descriptor +4
Blog STM32 / Firmware

Thiết kế input pipeline trước tầng USB

Giải thích thiết kế tạo input từ keypad qua các tầng scan, debounce, key policy, event queue và những đánh đổi trước khi tạo HID report.

#STM32 #GPIO #Keypad +3
Sắp ra mắt
Blog STM32 / Firmware

Series tổng hợp kiến thức về STM32 Firmware thực chiến

Từ những vấn đề thật trong firmware POS đến thiết kế thật: logger non-blocking, FreeRTOS architecture, Flash EEPROM emulation và dual-slot bootloader trên STM32G0.

#STM32 #Firmware #FreeRTOS +1
Blog STM32 / Firmware

The Four Transfer Types, from a Firmware Point of View

When do you use Interrupt, Bulk, Control, or Isochronous? The role of bInterval and SOF timing, and how they shape USB Device firmware design.

#USB #Transfer Type #Interrupt Transfer +6
Blog STM32 / Firmware

Bốn loại Transfer dưới góc nhìn firmware

Khi nào dùng Interrupt, Bulk, Control hay Isochronous? Vai trò và ảnh hưởng của bInterval, SOF timing đến việc thiết kế USB Device.

#USB #Transfer Type #Interrupt Transfer +6
Sắp ra mắt
Blog STM32 / Firmware

STM32 Dual-Slot UART Bootloader: BIN Update, VTOR và Safe Rollback

Thiết kế bootloader STM32G0B1RE dual-slot, update qua UART, validate vector table, CRC32 từng packet, metadata pending/confirmed và rollback tự động.

#STM32G0 #Bootloader #UART +5
Blog STM32 / Firmware

Starting a series on USB Device on STM32

A journey through USB knowledge, from theory to a real project on STM32G0: from protocol fundamentals to a working composite device firmware.

#USB #STM32 #Firmware +2
Blog STM32 / Firmware

Mở đầu series về USB Device trên STM32

Hành trình tổng hợp lại kiến thức USB từ lý thuyết cho đến thực hành với project thực tế trên STM32G0.

#USB #STM32 #Firmware +2
Sắp ra mắt
Blog STM32 / Firmware

Flash STM32G0: Linker Script, EEPROM Emulation và Dual Bank

Từ linker script chia vùng Flash, erase/write API, tại sao single-bank freeze, đến nguyên lý EEPROM emulation trên STM32G0 dual bank.

#STM32G0 #Flash #EEPROM Emulation +4
Sắp ra mắt
Blog STM32 / Firmware

Thiết kế firmware STM32 với FreeRTOS: task ownership, signaling và HAL wrapper

Từ demo nhiều task sang kiến trúc firmware thật: cách tổ chức task ownership, chọn đúng primitive signal, tránh race condition và viết HAL wrapper để dễ port.

#FreeRTOS #STM32 #RTOS +6
Coming soon
Blog STM32 / Firmware

FreeRTOS on STM32: Tasks, Queues, Mutexes, and How to Organize Firmware into Modules

Building a FreeRTOS skeleton on STM32: tasks, queues, mutexes, and how to split firmware into independent modules.

#FreeRTOS #STM32 #RTOS +5
Sắp ra mắt
Blog STM32 / Firmware

FreeRTOS trên STM32: Task, Queue, Mutex và cách tổ chức firmware theo module

Triển khai FreeRTOS skeleton trên STM32: task, queue, mutex, và cách chia firmware thành các module độc lập.

#FreeRTOS #STM32 #RTOS +5
Coming soon
Blog STM32 / Firmware

Non-Blocking UART Logger on STM32 with DMA + Ring Buffer

Designing a non-blocking UART debug logger for STM32: avoiding printf blocking, handling lost logs with DMA, and using a ring buffer with DMA callbacks.

#STM32 #UART #DMA +3
Sắp ra mắt
Blog STM32 / Firmware

UART non-blocking logger trên STM32 với DMA + Ring Buffer

Thiết kế debug UART non-blocking cho STM32: tránh printf blocking, xử lý mất log với DMA, dùng ring buffer và DMA callback.

#STM32 #UART #DMA +3