Proteus 的虛擬示波器是一個觀察訊號的方便的工具,底下將做一個簡單的示範,用 Proteus 的虛擬示波器來觀察 Arduino 產生的 PWM 訊號。如果你對 PWM 不熟,請先看這篇教學。
範例程式
底下是一支產生 PWM 訊號的程式(pwm.pde)。程式邏輯很單純,只是在 Arduino pin 5 上產生 PWM 訊號,而且每隔 5 秒改變一次 PWM 的 duty cycle,從 0%, 25%, 50%, 75% 一直到 100%,然後再變回 0%。
接下來是設定 Proteus 以觀察 PWM 訊號。方便起見,我將在 Barebone Arduino 的基礎上製作一個 Proteus 設計檔。
Proteus 虛擬示波器
首先,點選工具列上的 "Virtual Intruments Mode" 並選擇 OSCILLOSCOPE:
然後在設計畫面上放一個示波器,如下圖:
Proteus 的示波器可以同時觀察 4 個頻道(頻道名稱為 A 到 D),我們現在只用到 B 這個頻道,B 頻道上接的是 Arduino 的 pin 5。
OK,這樣就設定完成了。接著載入 Arduino 的 HEX 檔,就可以觀察 PWM 訊號了。
底下是執行結果:
除了看 PWM 波形外,Proteus 的虛擬示波器還有 Cursor (游標)功能,可以讓我們計算 Pulse 的寬度:
▲ duty cycle 為 25% 時,Pulse 寬度大約是 256 uS
拿來調試servo應該很不錯GOOD!
回覆刪除這樣示波器就可以暫時收起來,不用跟我的電腦搶桌面的空間了。哈~
回覆刪除