三相無刷電機的PWM控制,通過改變下橋臂的占空比來改變電機的轉速。
上傳時間: 2016-11-04
上傳用戶:wsf950131
pmw的有一個例子: PWM 控制 LED 燈漸亮漸滅程序 * 利用定時器控制產生占空比可變的 PWM 波 * 按K1,PWM值增加,則占空比減小,LED 燈漸暗。 * 按K2,PWM值減小,則占空比增加,LED 燈漸亮。 * 當PWM值增加到最大值或減小到最小值時,蜂鳴器將報警 * 資源:p0口,8路指示燈。p1.4,p1.5亮度控制按鍵(端口按鍵)p3.7小喇叭報警
上傳時間: 2013-12-13
上傳用戶:金宜
PWM 控制 LED 燈漸亮漸滅程序,有詳細程序說明。
上傳時間: 2014-11-24
上傳用戶:CHENKAI
PWM 控制 直流電機調速程序 利用定時器控制產生占空比可變的 PWM 波 按K1,PWM值增加,則占空比減小,電機速度變慢。 按K2,PWM值減小,則占空比增加,電機速度加快。
上傳時間: 2014-01-13
上傳用戶:songnanhua
AT89S52通過PWM控制步進電機的C51程序,實現了四相步進電機的起停、速度、方向控制,并具有避免速度切換過快造成丟部的功能。Keil編寫,Proteus7下仿真通過。
上傳時間: 2013-12-23
上傳用戶:咔樂塢
PWM控制就是產生一定周期,占空比不同的方波信號,當占空比較大時,電機轉速較高,否則電機轉速較低。當采用FPGA產生PWM波形時,只需FPGA內部資源就可以實現,數字比較器的一端接設定值輸出,另一端接線性遞增計數器輸出。當線性計數器的計數值小于設定值時輸出低電平,當計數器大于設定值時輸出高電平,這樣就可通過改變設定值,產生占空比不同的方波信號,從而達到控制直流電機轉速的目的。 直流電機控制電路主要由2部分組成,如圖1所示: FPGA中PWM脈寬調制信號產生電路; FPGA中正/反轉方向控制電路
上傳時間: 2017-05-19
上傳用戶:colinal
PWM控制LED燈漸亮漸滅.利用定時器控制產生占空比可變的 PWM 波.按K1,PWM值增加,則占空比減小,LED 燈漸暗。按K2,PWM值減小,則占空比增加,LED 燈漸亮。當PWM值增加到最大值或減小到最小值時,蜂鳴器將報警
上傳時間: 2013-12-19
上傳用戶:Miyuki
使用STC12C5AXXS2的單片機實現準確的脈寬調制(PWM)。本程序演示在CCP0(P1.3)輸出占空比可調的矩形波,使用單片機內部資源,主程序只需執行數條控制代碼。
上傳時間: 2014-02-20
上傳用戶:13188549192
PWM 控制 LED 燈漸亮漸滅程序 適用 ME300B 開發系統 晶振為11.0592M 利用定時器控制產生占空比可變的 PWM 波 按K1,PWM值增加,則占空比減小,LED 燈漸暗。 按K2,PWM值減小,則占空比增加,LED 燈漸亮。 當PWM值增加到最大值或減小到最小值時,蜂鳴器將報警。
上傳時間: 2017-09-06
上傳用戶:569342831
LED 一般是恒流操作的,如何改變 LED 的亮度呢?答案就是 PWM 控制。在一定的 頻率的方波中,調整高電平和低電平的占空比,即可實現。比如我們用低電平點亮一個 LED 燈,我們假設把一個頻率周期分為 10 個時間等份,如果方波中的高低電平占空比是 9:1, 這是就是一個比較暗的亮度,如果方波中高低電平占空比是 10:0,這時,全部是高電平, 燈是滅的。如果占空比是 5:5,就是一個中間亮度,如果高低比是 1:9,是一個比較亮的 亮度,如果高低是 0:10,這時全部是低電平,就是最亮的。 實際上應用中,電視屏幕墻中的幾十百萬 LED 象素都是這樣控制的,而且每一個象素 都有紅綠藍 3 個 LED,每個 LED 可以變化的亮度是幾百到幾萬或者更多的級別,以實現真 彩色的顯示。還有在您的手機中,背光燈的亮度如果是可以變化的,也應該是這種工作方式。 目前的城市彩燈也有很多都使用了 LED,需要控制亮度是也是 PWM 控制。 下面來分析我們的例程,在這個例程中,我們將定時器 2 溢出定為 1/1200 秒。每 10 次脈沖輸出一個 120HZ 頻率。這每 10 次脈沖再用來控制高低電平的 10 個比值。這樣,在 每個 1/120 秒的方波周期中,我們都可以改變方波的輸出占空比,從而控制 LED 燈的 10 個 級別的亮度。 為什么輸出方波的頻率要 120HZ 這么高?因為如果頻率太低,人眼就會看到閃爍感 覺。一般起碼要在 60HZ 以上才感覺好點,120HZ 就基本上看不到閃爍,只能看到亮度的變 化了。 下面請看程序,程序中有比較多的注釋: ――――――――――――――――――――――― #define uchar unsigned char //定義一下方便使用 #define uint unsigned int #define ulong unsigned long #include <reg52.h> //包括一個 52 標準內核的頭文件 sbit P10 = P1^0; //要控制的 LED 燈 sbit K1= P3^2; //按鍵 K1 uchar scale;//用于保存占空比的輸出 0 的時間份額,總共 10 份 char code dx516[3] _at_ 0x003b;//這是為了仿真設置的 //模擬 PWM 輸出控制燈的 10 個亮度級別 void main(void) // 主程序 { uint n; RCAP2H =0xF3; //賦 T2 的預置值,溢出 1 次是 1/1200 秒鐘 RCAP2L =0x98; TR2=1; //啟動定時器 ET2=1; //打開定時器 2 中斷 EA=1; //打開總中斷 while(1) //程序循環 { ;//主程序在這里就不斷自循環,實際應用中,這里是做主要工作 for(n=0;n<50000;n++); //每過一會兒就自動加一個檔次的亮度 scale++; if(scale==10)scale=0; } } //1/1200 秒定時器 2 中斷 timer2() interrupt 5 { static uchar tt; //tt 用來保存當前時間在一秒中的比例位置 TF2=0; tt++; if(tt==10) //每 1/120 秒整開始輸出低電平 { tt=0; if(scale!=0) //這里加這一句是為了消除滅燈狀態產生的鬼影 P10=0; } if(scale==tt) //按照當前占空比切換輸出高電平 P10=1; } ―――――――――――――――――― 在主程序中,每延時一段時間,就自動換一個占空比,以使亮度自動變化,方便觀察。 編譯,運行,看結果。 可以看到,LED 的亮度以每種亮度 1 秒左右不斷變化,共有 10 個級別。
上傳時間: 2017-11-06
上傳用戶:szcyclone