|
|
單片機(jī)源程序如下:
- /*******************************************************************************
- --------------------------------------------------------------------------------
- * 實(shí) 驗(yàn) 名 : PWM調(diào)速直流電機(jī)試驗(yàn)
- * 實(shí)驗(yàn)說(shuō)明 : 使用PWM輸出控制直流電機(jī)的轉(zhuǎn)速
- * 連接方式 : 見(jiàn)連接圖
- * 注 意 :
- *******************************************************************************/
- #include <reg52.h>
- //--定義使用的IO口--//
- sbit PWM=P1^0;
- //--定義一個(gè)全局變量--//
- unsigned char timer1;
- void Time1Config();
- /*******************************************************************************
- * 函 數(shù) 名 : main
- * 函數(shù)功能 : 主函數(shù)
- * 輸 入 : 無(wú)
- * 輸 出 : 無(wú)
- *******************************************************************************/
- void main(void)
- {
- Time1Config();
- while(1)
- {
- if(timer1>100) //PWM周期為100*0.5ms
- {
- timer1=0;
- }
- if(timer1 < 30) //改變30這個(gè)值可以改變直流電機(jī)的速度
- {
- PWM=1;
- }
- else
- {
- PWM=0;
- }
- }
-
- }
- /*******************************************************************************
- * 函 數(shù) 名 : Time1Config
- * 函數(shù)功能 : 設(shè)置定時(shí)器
- * 輸 入 : 無(wú)
- * 輸 出 : 無(wú)
- *******************************************************************************/
- void Time1Config()
- {
- TMOD|= 0x10; //設(shè)置定時(shí)計(jì)數(shù)器工作方式1為定時(shí)器
- //--定時(shí)器賦初始值,12MHZ下定時(shí)0.5ms--//
- TH1 = 0xFE;
- TL1 = 0x0C;
-
- ET1 = 1; //開(kāi)啟定時(shí)器1中斷
- EA = 1;
- TR1 = 1; //開(kāi)啟定時(shí)器
- }
- /*******************************************************************************
- * 函 數(shù) 名 : Time1
- * 函數(shù)功能 : 定時(shí)器1的中斷函數(shù)
- * 輸 入 : 無(wú)
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
直流電機(jī).zip
(1.19 MB, 下載次數(shù): 72)
2017-10-1 10:37 上傳
點(diǎn)擊文件名下載附件
控制直流電機(jī)程序
|
|