最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

Arduino 軟件定時輸出PWM或舵機控制信號

2023-10-30 15:28 作者:清風一曲桃花扇  | 我要投稿

????????在使用Arduino開發(fā)硬件程序時往往會碰到PWM輸出引腳與串口或其他硬件擴展的定時器沖突問題,導致PWM信號輸出不穩(wěn)定或不能正常工作。

????????下面使用軟件方式解決PWM定時器沖突問題并且擴展更多的引腳輸出PWM信號。

????????在學習如何編程之前先了解Arduino中的兩個設備運行時間函數(shù)。

????????millis() 獲取程序啟動到當前的毫秒數(shù)

????????micros() 獲取程序啟動到當前的微妙數(shù)

????????先以一個定時LED為例,LED每隔500ms閃爍一次

????????上述程序的核心就是判斷當前mcu是否到達指定時間標志點到達就執(zhí)行對應語句。

????????如果想輸出PWM那么像LED閃爍一樣使用ms為單位的系統(tǒng)時間進行時間標定就不合適了,所以就需要用到micros()函數(shù)達到微秒級控制才能輸出可用的PWM信號

????????那么使用微妙的系統(tǒng)時間能夠最大輸出多少HZ的pwm信號呢?

????????計算過程也相對簡單以輸出8位PWM為例,8位PWM可輸出0-255強度,那么一分鐘就能輸出1000000/255=3921hz的PWM。10位PWM則為1000000/1023=977可以勉強當1KHZ pwm使用勉強夠用。

????????下面就是程序實現(xiàn)了例如2路PWM輸出8位pwm。

? ? ? ? 注意該程序主要為原理描述,應用過程中還需要加IO初始化等操作,直接使用不輸出任何PWM。

????????上述程序并不是一個相對完美的程序還包含死區(qū)時間設置等問題沒有處理,但是基本原理已經闡述完畢,可以在此基礎上擴展出更多的PWM輸出,或者使用數(shù)組等方式構建更加容易擴展的PWM輸出函數(shù)。



Arduino 軟件定時輸出PWM或舵機控制信號的評論 (共 條)

分享到微博請遵守國家法律
朝阳县| 濮阳市| 城步| 扎兰屯市| 福海县| 嘉荫县| 秭归县| 甘肃省| 马龙县| 梁平县| 嘉祥县| 虞城县| 兴义市| 都安| 隆林| 依安县| 华宁县| 新和县| 弥渡县| 司法| 海伦市| 定日县| 都匀市| 唐山市| 漳浦县| 台山市| 滁州市| 万全县| 潜山县| 林甸县| 洞头县| 郑州市| 化州市| 惠州市| 宜章县| 庄河市| 巴林右旗| 维西| 梅州市| 和田县| 梅河口市|