利用微控制器AT89C52可否實現pwm的音訊調製輸出?

2025-01-24 11:10:18 字數 1866 閱讀 6184

1樓:網友

不用在書上見過了,你如果做過智慧型小車,如果用直流電機的,就知道怎麼產生pwm了,做個子函式,可以任意時刻改變pwm的佔空比,做pwm是很容易的,不要想得太難。

用乙個定時器,定時乙個基本時間,中斷函式里計數,如果想產生2:10的佔空比,中斷兩次,輸出低電平,接著中斷八次輸出高電平,然後再中斷兩次輸出低電平。理解嗎?

2樓:

可以實現的我有個彙編的程式就是通過at89c2051來實現的pwm

3樓:網友

肯定可以。以前在書上見過。

不過,現在沒找到。

4樓:瀟湘電子工程師

幾乎所有的微控制器都可以模擬pwm,就是不知道你用在**上的pwm有什麼特殊要求沒有。

微控制器pwm實現dac轉換電路問題;

5樓:網友

沒必要你這樣折騰。一般認為100%pwm是5v的話,50%佔空比是,10%佔空比是。

pwm輸出永遠都是5v的,只是佔空比不同,需要跟隨器和波電路轉直流。

2. 一但加了濾波電路,必然不準了。想要準確的話,輸出端加adc檢測,即使反饋給微控制器,進行調節。最後用pid自適應調節出穩定的電壓。

基於微控制器at89c51的數字pid控制直流電機pwm調速系統c語言程式

6樓:支愷源長霞

首先弄清楚pid是一種控制演算法!!!

1,「如果用微控制器恆溫可以使溫度到達預定值就停止加熱,低了就加熱,用乙個溫度感測器反饋,這樣算是乙個自動控制嗎」你這是控制系統,但是效果會非常差,尤其是對於溫度控制這種大慣性系統,達到預定值就停止加熱,但是由於慣性,溫度肯定會繼續上公升,電爐燒水的時候,水開了,斷電之後水還要沸騰一定時間的(沸騰是很消耗能量的,由此可見如果是加熱的話溫度上公升更嚴重,你也可以自己用溫度計試試看);「低了就加熱」是同樣的道理。如果系統對控制精度有要求,你這樣做肯定達不到要求。pid是一種控制演算法,相對於其他控制演算法來說算是最簡單的了。

pid能夠做到在溫度快要達到設定值的時候降低加熱功率,讓溫度上公升速度變慢,最終穩定在設定值。如果用你的直接控制,溫度會在設定值上下振盪,永遠不會停在設定值。

2,一般的控制系統都需要加反饋,以構成閉環控制系統,相對的還有開環控制系統。開環控制系統,舉個例子,就是你加熱的時候事先計算好大約需要多少熱量,然後考慮一下環境影響,計算出加熱時間,然後控制加熱系統按照你這個時間加熱。你覺得這樣的系統能夠穩定工作嗎?

環境稍稍有變動就掛了!開環控制系統的特點就是很容易受到環境的影響;閉環控制系統就穩定很多,你用1l水可用,2l水也行,500w電能用,1000w電爐也能用,這就是閉環的優點。

因此,大多數的控制系統都是閉環的,開環很少單獨使用,即使用到了也是有閉環的。開環其實也是有優點的,開環在控制系統裡面叫做前饋(跟反饋對應的),比如你的系統裡面電源電壓上公升了,加熱速度肯定會變快,如果你對電源電壓取樣,將取樣的結果輸入到閉環裡面,對閉環做乙個輕微的修正,控制的精度會更好,這就是開環的優勢,它是超前的,能夠預知結果(根據地源電壓提高就能知道需要降低輸出功率了)。

說完這些,你應該明白了,反饋是必需的(前饋也可以要,但是不是必需的),pid不能被取代(除非你用其它更復雜的控制演算法)。

7樓:居凌貊梓玥

at89c51屬於微控制器,它的硬體設計是不支援pwm的,但是你可以通過軟體程式設計輸出pwm的驅動脈衝。

如果樓上的想實現pwm,不妨使用專業的dsp晶元,比如ti的tms320

f2812。

它可以驅動兩個pwm橋,輸出電壓型pwm的控制脈衝。

實在要用at89c51,可以參考一下張崇巍,張興的一本書,看看控制脈衝怎麼生成,書名叫《pwm整流器及其控制》,32開的,寫的比較詳細。

stc89c52微控制器怎麼實現用兩個串列埠控制兩個模組

89c52只有一個串列埠,11f系列有雙串列埠詳細可以去stc官網找資料 可以,如果大小允許的話。兩個串列埠在程式上的區別僅僅是用的暫存器不同,修改一下就可以。兩個單獨的程式有點麻煩,因為不是獨佔cpu,所以需要協調,兩個程式的main函式要合併,如果寫的不合理可能出問題。串列埠真的只有一個,就是說...

89c52微控制器無論在做動態數碼管的掃描時,無論怎樣消影,都有一定的重影,這是怎麼回事

1.顯示前先將所有數碼管熄滅,然後再顯示。2.除了顯示數碼外,其他時間都是熄滅的。3.檢查是否存在交替顯示不同數字。4.掃描速度要足夠快。應該是你延時時間太短所致,兩個段碼之間的延時時間大於3毫秒就應該沒有重影了。89c52微控制器的靜態顯示和動態顯示消影問題 汗!你都知道 動態需要消影了,那你咋沒...

我要做基於89s52微控制器下的溫室大棚監控系統,要到測光照強度 溫度 溼度的感測器,不知道用哪種

光強用taos的ct810或intersil的isl29030或臺灣敦南科技的al3006,不管微控制器是5v,3v還是1.8v的io,都能接受,而且都是iic協議,很好寫,溫度有dallas或maxim或ns 已被ti併購 的很多便宜的一線溫度ic,單匯流排協議,不佔用io口資源,如果要求精度高的...