0x6A Logbook

生產力
程式開發

DMA 傳輸完全解析:從架構到實作,STM32/ESP32 的 Direct Memory Access 教學

先講一件我踩過的事:我以前寫 UART 收資料,用中斷一個 byte 一個 byte 接,接完再自己塞進緩衝。等到要同時跑 ADC 連續取樣跟通訊,CPU 就開始喘了 —— 明明時脈沒變、程式也沒寫錯,就是資料一多就掉資料。 問題不在演算法,在「搬資料」這件事本身就吃掉了 CPU 的每一分力氣。DMA 傳輸(Direct Memory Access,直接記憶體存取)要解決的就是這個:讓周邊設備自己去跟記憶體交換資料,CPU 只負責下指令跟收結果。 什麼是 DMA?為什麼需要它? 先看沒有 DMA 的時候,我們在做什...

2026 年 5 月 23 日 0條評論 694點熱度 0人點贊 shi6a 閱讀全文
程式開發

Modbus 通訊協定完整教學:從 RTU 到 TCP,ESP32/STM32 實作

前言:1979 年的協定,為什麼現在還在跑 Modbus 是 Modicon 在 1979 年為 PLC 設計的協定,簡單到有點過時 —— 但它今天還活在你家附近的工廠、大樓機房與太陽能電廠裡。 原因很務實:它夠簡單、夠開放、實作成本夠低。一台變頻器只要宣稱支援 Modbus RTU,就能被任何 SCADA 系統讀到。這種「誰都做得到」的特性,比任何華麗的規格都長壽。 規矩只有一條:只能有一個 Master Master 負責發問,Slave 只負責回答 —— Slave 永遠不會主動開口。RTU 模式使用位址 1...

2026 年 5 月 22 日 0條評論 945點熱度 0人點贊 shi6a 閱讀全文
程式開發

FIFO 完全解析:結構、空滿判斷、深度計算與跨時域設計

什麼是 FIFO? 先講最白話的版本:FIFO 就是一個排隊用的緩衝區。東西從後面排進去、從前面拿出來,誰先到誰先被服務 —— First-In-First-Out,中文就叫先進先出。 聽起來沒什麼了不起,但嵌入式世界幾乎每個角落都有它:UART 收進來的資料、SPI 要送出去的佇列、DMA 搬資料的中繼站,還有兩個不同時鐘域之間的資料交換(Clock Domain Crossing, CDC)。少了 FIFO,這些事情全部得靠 CPU 硬扛。 這篇我想從頭把四件事講清楚:結構長什麼樣、空跟滿怎麼判斷、深度要開多大...

2026 年 5 月 21 日 0條評論 1180點熱度 0人點贊 shi6a 閱讀全文
程式開發

PID 演算法完整教學:從比例積分微分控制到 ESP32 實作

前言:PID 是那種「每個人都用過,但很少人說得清楚」的東西 你做馬達調速、恆溫控制、電池充電、平衡車,最後都會走到同一條路:量測實際值,跟目標比,然後修正輸出。這個循環就是回授控制,而 PID 是它最泛用的一種形式。 它紅了幾十年不是因為數學漂亮,而是因為三個參數就能涵蓋大多數系統,而且不需要你精確知道系統模型。 PID 迴路長什麼樣 連續形式的公式如下: u(t) = Kp × e(t) + Ki × ∫e(t)dt + Kd × de(t)/dt 但 MCU 上跑的是離散版本,每一項都要換成「取樣點之間」的算...

2026 年 5 月 21 日 0條評論 772點熱度 0人點贊 shi6a 閱讀全文
程式開發

PCB 去藕半徑完全解析:退耦電容擺放距離與電源完整性設計

前言:去耦半徑不是玄學,是「迴路面積」的工程問題 每個學 PCB Layout 的人都聽過這句話:「0.1 µF 要貼著 IC 腳放」。但為什麼?貼多近才算近?放遠一點真的會出事嗎? 這些問題的答案不是靠經驗法則的口耳相傳,而是一個很具體的物理量:迴路電感。電容離 IC 越遠,電流繞的那一圈就越大,電感就跟著變大 —— 而電感一大,這顆電容在高頻就等於不存在。 去耦半徑的本質:迴路面積 IC 在切換瞬間需要一股電流,這股電流從電容出發、經走線進 IC、再從 GND 繞回電容 —— 這一個圈就是迴路。圈越大,電感越大...

2026 年 5 月 21 日 0條評論 1086點熱度 0人點贊 shi6a 閱讀全文

近期文章

  • USLink 水下通訊模組(中):OOK 軟體設計與除錯歷程
  • USLink 水下通訊模組(上):項目發想與電路設計
  • ESP32 伺服馬達 SG90 控制完整教學:PWM 脈衝控制、LEDC 多軸同步、平滑運動與梯形加減速
  • ESP32 SD 卡讀寫完整教學:SPI 模式、SDMMC 4-bit 初始化序列、FAT32 檔案系統與 Data Logging
  • ESP32 藍牙傳統 SPP(Serial Port Profile)完整教學:BT Classic 通訊、RFCOMM 框架、主從架構與 HC-05 相容

近期留言

尚無留言可供顯示。

彙整

  • 2026 年 9 月
  • 2026 年 6 月
  • 2026 年 5 月

分類

  • 未分類
  • 程式開發
  • 自動化技巧

COPYRIGHT © 2026 0x6A Logbook. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang