直流電機(jī)驅(qū)動(dòng)程序_第1頁(yè)
直流電機(jī)驅(qū)動(dòng)程序_第2頁(yè)
直流電機(jī)驅(qū)動(dòng)程序_第3頁(yè)
直流電機(jī)驅(qū)動(dòng)程序_第4頁(yè)
直流電機(jī)驅(qū)動(dòng)程序_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、用S51單片機(jī)控制驅(qū)動(dòng)芯片L298驅(qū)動(dòng)1路直流電機(jī)程序(C語(yǔ)言) */#mclude #define umt unsigned mt#define uchai unsigned char#define MAX_TIMER_COUNTOxffff#define TIMER_PERIOD_VALUEOxfc 18/PWM 周期,1ms#define KEY_0 OxOl#define KEY_1 0 x02#define KEY_2 0 x04#define KEY_3 0 x08鍵值#define ForWard 0 正向#define Reverse 1 反向#define True 1#de

2、fine False 0/電機(jī)驅(qū)動(dòng)引腳定義sbit MA=P1A4; /sbit MB=P1A5;sbit MC=P1Z6;sbit MD=P1A7;sbit LED = P0A0;測(cè)試LEDsbit EN1_PVM = P3A5; /PWM 使能輸出腳uchai STHO = 0;/TO 計(jì)數(shù)緩存uchai STLO = 0:uchai STH1 = 0;/Tl 計(jì)數(shù)緩存uchai STL1 = 0;bit Breaked = False;剎車停止標(biāo)志bit Running = False;運(yùn)行標(biāo)志bit Duection = ForWard;/ 方向標(biāo)志umt MaxPenodCNT =

3、MAX_TIMER_COUNT - TIMER.PERIOD.VALUE;/PWM 周期,1ms/static int spcount = 0: 步進(jìn)電機(jī)轉(zhuǎn)速參數(shù)計(jì)數(shù),,:$:*:$:*:$:*:$:*:$:*:$:*:$:*:$:*發(fā)送數(shù)據(jù)子函數(shù)*:$:*:$:*:$:*:$:*/*void txdata(uchar dat)SBUF = dat; /發(fā)送數(shù)據(jù)while (!TI);等待數(shù)據(jù)發(fā)送完中斷TI = 0; 清中斷標(biāo)志void delay(unsigned int N)mt i;fbr(i=0;i THiVbt)/高電平時(shí)間計(jì)數(shù)要比周期值計(jì)數(shù)值大ITLoVbt = tmp;/這里計(jì)算

4、PWM占空比對(duì)應(yīng)的高電平)/setMotorA_FieeStop();高電時(shí)間STH0 = THiVbt/256;STL0 = THiVbt%256;低電時(shí)間STH1 = TLoVbt/256;STL1 = TLoVbt%256;TR0=l;void setMotorA_Start() 啟動(dòng)直流電機(jī)if (Breaked)己快速制動(dòng)(剎車)setMotoiA_Reveise();Breaked = False;TRl=0 ;/關(guān)定時(shí)器1TH0 = STH0;TL0 = STLO;重新加載定時(shí)器0初值TR0=l;TR0=l ;開(kāi)定時(shí)器0Running = True;己運(yùn)行void system_

5、uiit(void)TMOD=Oxll;EA=1;ETO=1;斷。ET1=1;禁止T1中斷。全局中斷開(kāi)/ETO : TO的溢出中斷允許位。ETO=1,允許TO中斷;ETO=O禁ll: TO中/ET1 :定時(shí)/計(jì)數(shù)器T1的溢出中斷允許位。ET1=I,允許T1中斷:ET1=O,setMotorA_FreeStopQ; 開(kāi)機(jī)停轉(zhuǎn) ,存 * *左* * *:$:* * 左* */ /定時(shí)器0中斷服務(wù)程序.作為PWM周期定時(shí)*左 * *左*左* *;$:*/void timeiOQ mtemipt 1/TRO = 0 ;THO = STHO;TLO = STLO;/TRO = 1 ;EN1_PWM= 1

6、;關(guān)定時(shí)器0/把新的脈寬值給定時(shí)器1把新的脈寬值給定時(shí)器1開(kāi)定時(shí)器0/PWM輸出高電平TH1 =STH1;TL1 = STL1;TRI = 1 ;把新的脈寬值給定時(shí)器1把新的脈寬值給定時(shí)器1開(kāi)定時(shí)器1,存 * *左* * *:$:* * 左* */ /定時(shí)器1中斷服務(wù)程序.作為PWM高電平定時(shí)*左 * *左*左* *;$:*/void timer IQ mtemipt 3TR1=O;EN1_PWM = O;關(guān)定時(shí)器1/PWM輸出低電平/THO = STHO;/TLO = STLO:,TRO=1;重新加載定時(shí)器0初值取反鍵值,方便鍵值占空比值前一時(shí)刻的鍵值初始化,,存*:$:* *:$:*:$:

7、*:$:*:$:*:$:* *:*:$:*:$:*the ftinction:轉(zhuǎn)換鍵值,將硬件鍵值轉(zhuǎn)換成邏輯鍵值。*:$:*:$:*:$:*:$:*:$:* *;$:* *:$:*:$:*:$:*:$:*:$:*:$:*:$:*:$:*/uchai getKeyValue(uchar i)uchar kewalue = Oxff;switch(i)fcase KEY.O: kewalue = 0 x00; break; case KEY_1: kewalue = 0 x01; break; case KEY_2: kewalue = 0 x02; break; case KEY_3: kewa

8、lue = 0 x03; break; default: kewalue = Oxff;retuin keyvahie;,,存* *:$:*:$:*:$:*:$:*:$:*:$:* *;$:* *:$:*:$:*the hmction:獨(dú)立鍵盤(pán),由于本版開(kāi)發(fā)板刪除了矩陣鍵盤(pán),只保4個(gè)獨(dú)立鍵盤(pán),所以本實(shí)驗(yàn)僅作為原理演示之用。* *#*:$:* *:*:$:* * :*:$:*:$:*:$:*:$:* *4:*;$:*:$:*:$:*:$:*:$:*/ uchar checklnput(void)Pl |= OxOf;retuin (Pl | OxfO); void mam(void)uchar

9、i = 0;uchar duty = 10;uchar pieKey = Oxff;system_init();/Uart_Iiiit_T2UsedO; setMotorA_FoiWaidO; 設(shè)為正轉(zhuǎn)方向while(l)i = checkliiputQ;i = getKeyValue(i);if (preKey = Oxff)有按鍵(switch(i)(case 0: if (duty0)占空比大于 0duty=5;setMotorA_Speed(duty);break:case 2: if (Duection = ForWaid) 更改方向setMotoiA_Reverse();elsesetMotoiA_ForWaidQ;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論