Lua 自動化
這是什麼
程式裡可以寫一小段 Lua 腳本(副檔名 .lua),讓它自動連續做很多件事:
依序讀寫暫存器、檢查讀回來的值對不對、把結果印到 Log、遇到條件才等待一下…… 這些事
本來要你自己一行一行下指令、一格一格看畫面,寫成腳本後跑一次就全部做完,而且每次
結果都一樣,很適合驗證同一件事做很多遍(例如量產線上每片板子都要驗證同一組暫存器)。
Lua 是一個很小、很容易上手的程式語言,本教學不假設你寫過任何程式——從下一頁 「第一次跑腳本」開始,一步一步建立起變數、判斷式、迴圈這些基礎,再進到跟硬體有關 的讀寫、位元運算與 Bank 切換。就算你從沒寫過程式,照著頁面順序看下去也能學會。
能用腳本做什麼
- 依序執行一連串讀寫,不用每次都手動輸入指令。
- 用
check()自動判斷「讀回來的值是不是我預期的那個」,結果會留一筆記錄,不用自己 盯著畫面比對。 - 用
log()/print()把想看的中間結果寫進 Log,事後回頭查也看得到。 - 用
delay_ms()在該等待的地方真的等一下(例如晶片需要時間完成某個動作)。 - 遇到明顯不該發生的狀況,用
fail()讓腳本立刻停下來並標記失敗。
三種跑法
1. 選單(只有視窗版有)
☰ → File → Run Lua script… 開原生的檔案選取視窗,挑一個 .lua 檔案就會執行。
這個選單項目只有視窗版才有,終端機版沒有對應的選單,請用下面第 2 種跑法。
細節見 ☰ → File。
2. 指令列
在畫面下方的指令列輸入:
run <路徑>會在背景開始執行,畫面照常可以操作;執行中按 Esc 可以中止(只有終端機版有這個
中止鍵)。
3. 批次模式(--batch)
不開畫面、直接跑完就結束,結果印在文字輸出裡,最適合放進量產測試流程或 CI:
nexus_tui.exe --batch --run script.lua批次模式底下還可以先用 --cmd 下幾個指令做好前置設定(例如先選定位址),再執行
腳本,見指令參考的「批次模式」一節。
接下來
還沒動手跑過任何腳本的話,從下一頁「第一次跑腳本」開始——它會教你 用完全不需要接硬體的模擬後端,跑一支最簡單的範例,並告訴你輸出跑到哪裡去看。