2014-05-24 42 views
-1

http://arduino.cc/en/Reference/analogWrite它說,什麼是從Arduino的產生的PWM信號的確切頻率銷

「上最引腳的PWM信號的頻率爲大約490赫茲。在烏諾和類似的板,5和6針頻率大約爲980赫茲,萊昂納多的3號和11號插腳也以980赫茲運行。「

我現在想檢查那個頻率。只需輸入此命令analogWrite(9,127),它將產生佔空比爲50%的PWM信號。

然後我使用pulseIn內置的Arduino函數(pulseIn descriotion)並輸入此命令pulseIn(9,HIGH)來測量信號爲高電平的週期。它平均返回1010 us

所以週期時間是(1010爲高的期間和1010用於低週期)並且因此從該引腳的PWM頻率是495.04〜495Hz

同樣與引腳號5所做的高的期間是506 美國,完整週期是1012 US,從該引腳的PWM頻率是988.14赫茲〜988 赫茲

那麼,什麼是確切的PWM頻率?!

以下圖片爲Arduino的草圖和

Arduino的草圖

The Arduino sketch

當我按下 '1' 多次

When I pressed '1' multiple times快照的結果

當我按「0」多次

When I pressed '0' multiple times

回答

-1

您使用了兩個引腳,其中PWM信號工作在980hz的一個! 更具體地說,引腳​​5和6!

這是Arduino的網站說:

的PWM信號的頻率大部分銷約爲490赫茲。 在Uno和類似的電路板上,引腳5和6的頻率爲 約980 Hz。

http://arduino.cc/en/Reference/analogWrite

+0

我使用了他們兩個,再次檢查代碼 –

0

PWM信號由定時器產生。計時器遞增寄存器,並且各種方法基於此建立方形信號。

頻率取決於三兩件事:

  • 主時鐘:爲8MHz或16MHz的通常在Arduino的)
  • 分頻(或除數頁面下方):在頻率慢下來,你可以設置定時器增加計數每1,2,4,8,16 ...主時鐘週期
  • 最大計數:有幾種計數方法,但重要的限制是寄存器大小(通常是8位和16位) Arduino)

您在本頁面發現具體細節: http://playground.arduino.cc/Main/TimerPWMCheatsheet

0

那麼,什麼是確切的PWM頻率?!

imo在板和其他因素之間給出「精確」的PWM頻率有很多變量。

例如,如果我要測試來自同一家公司的兩塊不同的電路板,我將無法獲得完全匹配。