開發(fā)板可以為嵌入式開發(fā)人員提供第二個用途,允許他們將開發(fā)板重新用作測試設(shè)備。這可以為測試嵌入式系統(tǒng)提供額外的靈活性,并允許定制接收到的數(shù)據(jù),以便更容易處理。
技巧1 – 使用支持 Python 的開發(fā)板
幾乎任何開發(fā)板都可用于采集數(shù)據(jù)。板載微控制器具有有用的外圍接口,例如模數(shù)轉(zhuǎn)換器、GPIO 和各種通信外圍設(shè)備。這可以很好地定制在現(xiàn)成的測試設(shè)備中可能不可用的測試設(shè)置。一個重要的因素是,如果開發(fā)板被用作測試設(shè)備,它應(yīng)該很容易編程。利用 Python 可以更輕松地編寫測試腳本,因此建議選擇支持 MicroPython 或 Circuit Python 的開發(fā)板。這些開發(fā)板已經(jīng)支持低級硬件,因此很容易在 10 分鐘內(nèi)啟動并運行一些東西。
技巧2 – 使用 Python 打印語句傳輸數(shù)據(jù)
當(dāng)然,可以使用不同的技術(shù)在開發(fā)板和 PC 之間傳輸數(shù)據(jù)以獲取數(shù)據(jù)。當(dāng)使用臨時邏輯分析儀時,你可以編寫一個超級簡單的例程,它使用開發(fā)板的 USB 連接將打印語句傳輸回 PC。要想在很長一段時間內(nèi)測量一個輸出通道上的時序是否正確,為此,你能夠簡單地記錄當(dāng)前系統(tǒng)時間,然后計算它們之間的差異。
該例程如下所示:
while True:
NewState = pin_x2.value()
if NewState != State:
State = NewState
myTime = time.tick_ms()
print(myTime)
pyb.LED(LED_GREEN).toggle()
在單個通道上,代碼只是尋找引腳上的邏輯進行更改,然后記錄時間。在嵌入式開發(fā)中,讀者可以看到打印語句的使用,以及用于視覺確認和 LED 切換的語句。盡管可以在多個渠道中使用這種技術(shù),但無需付出太多努力。
技巧3 – 在終端中捕獲數(shù)據(jù)
通常的做法是在某處實際記錄傳入的數(shù)據(jù),最自然的地方是使用終端。使用 Linux 或 Mac 終端,很容易打開通信端口,只需將傳入的內(nèi)容重定向到文件以供以后處理。然而,在 Windows 上并沒有真正的內(nèi)置終端可以做到這一點。但是,開發(fā)人員可以使用多種選項。
首先,開發(fā)人員可以在 Realterm 等工具中使用捕獲功能。該終端軟件會將端口上的傳入數(shù)據(jù)重定向到文件。其次,開發(fā)人員可以編寫一個簡單的 Python 腳本,使用 PySerial 讀取傳入的數(shù)據(jù),然后將數(shù)據(jù)寫入文件。這可以直接從命令行執(zhí)行,如果需要或為數(shù)據(jù)定制。Python 腳本方法確實允許跨平臺使用,但如果嵌入式開發(fā)人員趕時間,只使用 Realterm 工作量會減少,而且效果會很好。
責(zé)任編輯:Rex_08