求教51微控制器生成spwm波形的程式

時間 2021-10-14 22:54:42

1樓:匿名使用者

這個型號的微控制器我沒用過,我主要應用dsp,在dsp裡面是利用pwm模組產生的pwm,有好幾種模式,相差多少度都可以設定,你有空的時候看看微控制器的這一部分就行,沒有pwm功能的話就利用普通定時器也是可以產生的,利用裡面的比較中斷控制普通io就可以

2樓:金瑤

pwm可以用定時器產生,相位的話,你用兩個引腳,p1.0 p1.1 在一個週期內輪換輸出pwm,p1.

0輸出pwm則p1.1輸出低電平,p1.1輸出pwm則p1.

0輸出低電平,這裡有一篇文章挺好http://wenku.baidu.

思路有了,程式就好辦了

3樓:

1、用普通i/o口採用軟體定時器中斷可以模擬spwm輸出。"/**/"裡面的內用是對程式的標註,解析。

2、/*採用6mhz晶振,在p1.0腳上輸出週期為2.5s,佔空比為20%的脈衝訊號*/

/*定時100ms,週期2.5s需25次中斷,高電平0.5s需5次中斷*/

#include

typedef unsigned char uchar;

sbit p1_0=p1^0;

uchar time=0;

uchar period=25;

uchar high=5;

void timer0() interrupt 1 using 1

else if(time==period) /*週期時間到,變高*/ }

void main() }

3、說明:本程式主要採用了51微控制器(具體型號stc89c52rc)的定時器,工作在方式3,來產生規定時間內的方波,製造spwm.

4樓:匿名使用者

用stc 晶片就行 有2個pwm, 10ms 輪換輸出就可以,經過lc濾波,形成正弦波。

可做正弦波逆變器用

51微控制器外部中斷實驗程式,51微控制器外部中斷實驗程式

做51微控制器外部中斷實驗,應該有主程式 中斷服務程式。樓主所說這些的亮滅,那些的主程式的?那些是中斷程式的?請問你這個觸發中斷是一個按鍵?你觸發的方式是長時間按下還是瞬間按下?我覺得你應該是長時間按下的。回到正題,你這個中斷服務函式裡只有一句 那麼中斷服務函式執行的速度會很快的,所以如果你只按了一...

用51微控制器調光,51微控制器pwm調光電路

你的電路構思不太好,目的一樣但是電路構成的方法有很多的,你這種辦法比較耗費元件,並且因為過多的原件而導致可靠性下降。實現你的要求有簡單的辦法,就是採用微控制器產生可控的pwm pwm pulse width modulation 控制 脈衝寬度調製技術。通過對一系列脈衝的寬度進行調製,來等效地獲得所...

關於51微控制器的中斷,關於51微控制器的中斷。

廣東人讀書好 中斷的概念 cpu在處理某一事件a時,發生了另一事件b請求cpu迅速去處理 中斷髮生 cpu暫時中斷當前的工作,轉去處理事件b 中斷響應和中斷服務 待cpu將事件b處理完畢後,再回到原來事件a被中斷的地方繼續處理事件a 中斷返回 這一過程稱為中斷 二 中斷源 在51微控制器中有5箇中斷...