作者:ZeroGrid 實驗室
前言:這不是一顆普通的晶片
如果你把 SX1262 當作普通的 SPI 感測器(像溫濕度計那樣),那你從第一行程式碼開始就錯了。
在 LoRa 的世界裡,SX1262 是一頭精密的怪獸。它把過去需要一整塊電路板才能做到的「射頻收發機」,壓縮進了 4x4mm 的矽晶片裡。它不只負責收發訊號,它內部甚至還住了一個**「管理員」**(協同處理器)。
今天,我們不動烙鐵,先用 X 光般的視角,來解剖這顆心臟。我們會解釋那些 Datasheet 裡生硬的名詞,到底代表什麼物理意義,以及工程師在設計時必須面對的**「妥協」**。
1. 核心諸元:數據背後的極限
在開始寫 Driver 之前,我們必須知道這顆引擎的極限在哪裡。
A. 鏈路預算 (Link Budget):170dB
這是評估無線通訊距離最重要的指標。公式很簡單:發射功率 - 接收靈敏度。 SX1262 的恐怖之處在於它同時推高了天花板,又壓低了地板。
- 發射功率 (TX Power):+22dBm (這是天花板)。
- 接收靈敏度 (Sensitivity):−148dBm (這是地板)。
- 計算條件:依據 Datasheet,這是在 SF=12,BW=10.4kHz 的極限設定下測得。
- 總預算:22−(−148)=170dB。
這是什麼概念? WiFi 的鏈路預算大約在 100dB 左右。LoRa 多出的這 70dB,在對數世界裡意味著能量差異是 1000 萬倍。這就是為什麼 WiFi 穿兩道牆就斷線,而 SX1262 可以不需要 PA 就穿透好幾公里。
🛠️ 工程師必備工具:Semtech LoRa Calculator 不要自己按計算機。Semtech 官方提供了一個免費神器 "LoRa Calculator"。 你只需要輸入 SF, BW, CR 等參數,它會幫你算出:
- Time on Air (ToA):訊號在空中飛了多久?
- Equivalent Bitrate:實際傳輸速度是多少 bps?
- Link Budget:理論能傳多遠?
- Power Consumption:發送這一包要耗多少電?
B. 接收靈敏度 (Sensitivity):比 GPS 還強
SX1262 能聽到的極限是 −148dBm。 作為對比,GPS 衛星訊號到達地表時大約是 −127.5dBm。SX1262 能聽到比背景雜訊還微弱 100 倍 (20dB) 的聲音。
C. 接收電流 (RX Current):4.6mA
這是 SX1262 取代上一代 SX1278 的殺手鐧。
- LDO 模式:8.8mA
- DC-DC 模式:4.6mA
- 意義:在同樣的電池下,開啟 DC-DC 模式,你的待機監聽時間直接翻倍。這對末日生存設備來說至關重要。
2. 內部架構:晶片裡的五臟六腑

SX1262 內部就像一個分工精密的公司,主要由三個部門組成:
A. 射頻類比前端 (Analog Front-End) —— 感官部門
這是負責處理真實世界電磁波的地方。
- LNA (Low Noise Amplifier,低雜訊放大器)
- 比喻:助聽器。
- 功能:它是天線進來的第一道關卡。它的任務是把極其微弱的訊號放大,但絕不能把自己內部的電子雜訊加進去。LNA 的品質直接決定了整顆晶片的聽力好壞。
- Mixer & PLL (混頻器與鎖相迴路)
- 比喻:調音器。
- 功能:PLL 負責產生精準的 921.000 MHz 頻率。我們在程式碼中用
SetRfFrequency指令,就是在告訴 PLL 要鎖定哪個頻道。
- PA (Power Amplifier,功率放大器)
- 比喻:大聲公。
- 功能:負責把訊號轟出去。
B. 數位數據機 (The Modem) —— 翻譯部門
訊號經過類比前端後,變成了一堆波形。Modem 負責把這些波形翻譯成 0 和 1。
- LoRa Modem:SX1262 的靈魂。它使用 CSS (Chirp Spread Spectrum) 技術。它不看波形的振幅(那是 AM),也不看頻率的絕對值(那是 FM),它看的是頻率隨時間變化的斜率。這讓它極度抗干擾。
C. 協議引擎 (Protocol Engine) —— 管理部門
這是與舊款晶片最大的不同。SX1262 內部封裝了一顆硬體定序器(Hardware Sequencer)。
- 比喻:部門經理。
- 功能:以前你需要自己寫程式去控制「打開 LNA -> 等 5ms -> 打開 PLL -> 開始解碼」。現在,你只要對協議引擎下一個指令
SetRx,這位經理就會自動幫你把底下的人(LNA, PLL, Modem)管好。這大幅減輕了主控 MCU 的負擔。
3. 關鍵周邊:時脈與電源的選擇
SX1262 雖然強,但它有兩個「富貴病」:對時間要求極準,對電源要求極高。
A. 心跳的選擇:XTAL vs TCXO
LoRa 是展頻技術,對頻率偏移非常敏感。
- XTAL (傳統晶振):便宜,但像廉價手錶。溫差大時(例如寒流或曝曬),頻率會飄移 ±30ppm。這會導致頻寬較小 (Low BW) 的訊號解不出來。
- TCXO (溫補晶振):精密天文台錶。它內建溫度補償,誤差僅 ±1.5ppm。
- ZeroGrid 選擇:為了在戶外惡劣環境下生存,我們選用 TCXO。並透過 SX1262 的
DIO3腳位來控制其供電電壓。
- ZeroGrid 選擇:為了在戶外惡劣環境下生存,我們選用 TCXO。並透過 SX1262 的
B. 飲食的選擇:LDO vs DC-DC
- LDO (線性穩壓):
- 原理:像是一個可變電阻。它把電池多餘的電壓轉成熱能消耗掉,來換取 1.2V 的核心電壓。效率極低。
- DC-DC (開關穩壓):
- 原理:像是一個水桶搬運工(Buck Converter)。它利用電感儲能,把高壓切碎轉換成低壓。
- ZeroGrid 選擇:毫不猶豫,強制開啟 DC-DC。這是為什麼我們的接收電流能降到 4.6mA 的物理原因。
4. 妥協的物理學:沒有最好,只有交換
這是新手最容易迷失的地方。你可能會問:「為什麼不把所有參數都調到最強?」 答案是:物理學不允許。
在 LoRa 中,我們永遠在以下幾個指標中做交換 (Trade-off):
- 展頻因子 (SF, Spreading Factor):
- 定義:每一個資料位元 (Bit) 用多少個 Chirp 符號來表示。
- 牽制:SF 越高,靈敏度越高 (傳越遠),但 Time on Air 越長 (傳越慢)。
- 代價:SF12 比 SF7 傳得遠,但傳輸時間可能從 50ms 變成 1500ms。這意味著更耗電,且更容易佔用頻道。
- 頻寬 (BW, Bandwidth):
- 定義:訊號佔用的頻率寬度。
- 牽制:BW 越寬,傳輸越快,但靈敏度越低 (距離變短)。
- 原理:頻寬越寬,引入的環境底噪 (Noise Floor) 就越多。就像把窗戶開大,風進來了,灰塵也進來了。
- 編碼率 (CR, Coding Rate):
- 定義:資料中的冗餘糾錯碼比例。
- 牽制:CR 越高 (如 4/8),抗干擾越強,但實際資料率 (Data Rate) 越低。
- 空中時間 (Time on Air):
- 這是上述所有參數的總和結果。
- 為什麼重要?
- 省電:發射時間越短越省電。
- 法規:許多國家限制頻段的 Duty Cycle (例如 1%)。如果你發射太久,你就必須閉嘴很久。
ZeroGrid 的選擇: 我們預設使用 SF7, BW 125kHz, CR 4/5。 這是一個黃金平衡點——它提供了足夠的距離 (市區 3km+),同時保持極短的 Time on Air (<100ms),讓「數位狼煙」更省電,反應更快。
5. ZeroGrid 實驗室:驗證你的軍火庫
說了這麼多理論,我們用 ZeroGrid v1.4.0 的 實驗室指令 (/info) 來看看這些參數在真實世界長什麼樣。
實驗步驟:
- 接上 ZeroGrid,開啟終端機。
- 輸入
/info。
終端機回應:
Plaintext
Device Info:
Radio: 921.00 MHz, SF7, BW 125 kHz, CR 4/5, Pwr 22 dBm
解讀: 這行字代表:
- PLL 已經鎖定在 921.00 MHz。
- Modem 已經設定好用 SF7 的語速、125k 的頻寬在聽。
- PA 已經預熱完畢,隨時準備用 22dBm 的火力開火。
- 而這一切,都歸功於 Protocol Engine 幫我們處理好了底層的 SPI 與時序。
下一課預告
現在我們認識了怪獸的身體。但要怎麼喚醒它? SX1262 為了省電,平時處於深度睡眠。下一篇 #02 喚醒沈睡的矽晶片,我們將深入探討 SPI 總線上的秘密:為什麼多了一根 BUSY 腳? 並用 /reg 指令親手觸摸它的脈搏。















