0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

基于51單片機直流電機PWM調(diào)速程序

2oON_changxuemc ? 來源:未知 ? 作者:胡薇 ? 2018-10-24 15:56 ? 次閱讀

這是一款AT89C51單片機直流電機PWM調(diào)速程序,程序可以直接用于AT89C52、AT89S51、AT89S51,STC89C51、STC89C52單片機中,單片機晶振采用11.0592M,直流電機由L298集成電路控制,產(chǎn)生的PWM的頻率約為91Hz。L298各引腳已在程序中標明,原理圖大家可以自己畫一下,這里就不具給出。下面是源程序。

#include[reg52.h》//注意請把‘ [ ’換成 “《”,下同。否則編譯時會出錯。

#include [intrins.h》//

#define uchar unsigned char

#define uint unsigned int

sbit en1=P2^0;

sbit en2=P2^1;

sbit s1=P2^2;

sbit s2=P2^3;

sbit s3=P2^4;

sbit s4=P2^5;

uchar t=0;

uchar m1=0;

uchar m2=0;

uchar tmp1,tmp2;

void motor(uchar index, char speed)

{

if(speed》=-100 && speed《=100)

{

if(index==1)

{

m1=abs(speed);

if(speed《0)

{

s1=0;

s2=1;

}

else

{

s1=1;

s2=0;

}

}

if(index==2)

{

m2=abs(speed);

if(speed《0)

{

s3=0;

s4=1;

}

else

{

s3=1;

s4=0;

}

}

}

}

void delay(uint j)

{

for(j;j》0;j--);

}

void main()

{

char i;

TMOD=0x02;

TH0=0x9B;

TL0=0x9B;

EA=1;

ET0=1;

TR0=1;

while(1)

{

for(i=0;i《=100;i++)

{

motor(1,i);

motor(2,i);

delay(5000);

}

for(i=100;i》0;i--)

{

motor(1,i);

motor(2,i);

delay(5000);

}

for(i=0;i《=100;i++)

{

motor(1,-i);

motor(2,-i);

delay(5000);

}

for(i=100;i》0;i--)

{

motor(1,-i);

motor(2,-i);

delay(5000);

}

}

}

voidtimer0() interrupt 1

{

if(t==0)

{

tmp1=m1;

tmp2=m2;

}

if(t

if(t

t++;

if(t》=100) t=0;

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6040

    文章

    44592

    瀏覽量

    636841
  • 直流電機
    +關注

    關注

    36

    文章

    1710

    瀏覽量

    70285
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5195

    瀏覽量

    214348

原文標題:基于AT89C51單片機直流電機PWM調(diào)速程序分享

文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    通過51單片機實現(xiàn)直流電機調(diào)速

    本系統(tǒng)采用PWM(脈沖寬度調(diào)制)技術對直流電機進行調(diào)速控制。通過改變輸出信號的占空比,實現(xiàn)對直流電機的轉速控制。系統(tǒng)中包括51
    的頭像 發(fā)表于 06-29 09:14 ?4627次閱讀
    通過<b class='flag-5'>51</b><b class='flag-5'>單片機</b>實現(xiàn)<b class='flag-5'>直流電機</b><b class='flag-5'>調(diào)速</b>

    基于單片機的AT89C51直流電機PWM調(diào)速系統(tǒng)

    基于單片機的AT89C51直流電機PWM調(diào)速系統(tǒng)文章設計了以單片機AT89C
    發(fā)表于 12-07 16:34

    怎樣去設計基于51單片機的霍爾直流電機PWM調(diào)速系統(tǒng)

    基于51單片機的霍爾直流電機PWM調(diào)速系統(tǒng)有哪些具體功能?怎樣去設計基于51
    發(fā)表于 10-19 08:53

    直流電機調(diào)速PWM調(diào)節(jié))(源程序

    51控制的直流電機轉速調(diào)節(jié),PWM輸出,可用鍵盤控制電機的轉速,并且數(shù)碼管顯示當前PWM的百分比,該程序
    發(fā)表于 08-19 15:57 ?28次下載

    基于AVR單片機實現(xiàn)的直流電機PWM調(diào)速控制器

    基于AVR單片機實現(xiàn)的直流電機PWM調(diào)速控制器
    發(fā)表于 10-15 10:19 ?28次下載
    基于AVR<b class='flag-5'>單片機</b>實現(xiàn)的<b class='flag-5'>直流電機</b><b class='flag-5'>PWM</b><b class='flag-5'>調(diào)速</b>控制器

    基于AT89C51單片機直流電機PWM調(diào)速程序分享

    這是一款AT89C51單片機直流電機PWM調(diào)速程序,程序
    發(fā)表于 10-19 16:03 ?1.7w次閱讀

    使用51單片機實現(xiàn)PWM直流電機調(diào)速程序和注釋詳細資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機實現(xiàn)PWM直流電機調(diào)速程序和注釋詳細資料免費下載.
    發(fā)表于 11-05 18:05 ?83次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>實現(xiàn)<b class='flag-5'>PWM</b><b class='flag-5'>直流電機</b><b class='flag-5'>調(diào)速</b>的<b class='flag-5'>程序</b>和注釋詳細資料免費下載

    使用51單片機控制直流電機調(diào)速程序免費下載

    本文檔的主要內(nèi)容詳細介紹的是使用51單片機控制直流電機調(diào)速程序免費下載,通過P1.0口來控制直流電機
    發(fā)表于 06-13 17:45 ?48次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>控制<b class='flag-5'>直流電機</b><b class='flag-5'>調(diào)速</b>的<b class='flag-5'>程序</b>免費下載

    如何使用MC51單片機進行直流電機PWM調(diào)速系統(tǒng)的設計

    介紹一種基于 MC51單片機控制的 PWM直流電機脈寬調(diào)速系統(tǒng) 。系統(tǒng)利用 MC51
    發(fā)表于 04-28 08:00 ?7次下載
    如何使用MC<b class='flag-5'>51</b><b class='flag-5'>單片機</b>進行<b class='flag-5'>直流電機</b><b class='flag-5'>PWM</b><b class='flag-5'>調(diào)速</b>系統(tǒng)的設計

    51單片機控制直流電機程序和電路

    51單片機控制直流電機程序和電路(電源技術發(fā)展怎么樣)-51單片機控制
    發(fā)表于 09-24 12:52 ?112次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>控制<b class='flag-5'>直流電機</b>的<b class='flag-5'>程序</b>和電路

    51單片機實現(xiàn)PWM直流電機調(diào)速(注釋詳細)

    51單片機實現(xiàn)PWM直流電機調(diào)速(注釋詳細)(電源技術投稿)-51
    發(fā)表于 09-24 14:58 ?251次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>實現(xiàn)<b class='flag-5'>PWM</b><b class='flag-5'>直流電機</b><b class='flag-5'>調(diào)速</b>(注釋詳細)

    51單片機步進電機測試程序&直流電機測試程序

    51單片機步進電機測試程序&直流電機測試程序(通信電源技術 期刊查稿)-
    發(fā)表于 09-24 15:53 ?110次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>步進<b class='flag-5'>電機</b>測試<b class='flag-5'>程序</b>&<b class='flag-5'>直流電機</b>測試<b class='flag-5'>程序</b>

    基于51單片機直流電機PID調(diào)速設計LCD1602仿真可調(diào)PWM

    基于51單片機直流電機PID調(diào)速設計LCD1602仿真可調(diào)PWM
    發(fā)表于 11-23 17:36 ?69次下載
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>直流電機</b>PID<b class='flag-5'>調(diào)速</b>設計LCD1602仿真可調(diào)<b class='flag-5'>PWM</b>

    直流電機的驅(qū)動和PWM調(diào)速

    51單片機驅(qū)動直流電機PWM 調(diào)速是通過使用 51 單片
    發(fā)表于 03-30 13:42 ?19次下載
    <b class='flag-5'>直流電機</b>的驅(qū)動和<b class='flag-5'>PWM</b><b class='flag-5'>調(diào)速</b>

    使用單片機實現(xiàn)直流電機PWM調(diào)速控制原理圖

    使用單片機實現(xiàn)直流電機PWM調(diào)速控制
    發(fā)表于 12-10 15:29 ?0次下載