国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

歷史上的今天

今天是:2024年11月09日(星期六)

正在發(fā)生

2019年11月09日 | 基于單片機(jī)PWM的直流電機(jī)調(diào)速系統(tǒng)+H橋驅(qū)動電路驅(qū)動原理圖

發(fā)布者:星辰耀眼 來源: 51hei關(guān)鍵字:單片機(jī)  PWM  直流電機(jī)  調(diào)速系統(tǒng)  H橋驅(qū)動 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

本設(shè)計(jì)以單片機(jī)AT89C51為核心,通過軟件編程利用其定時(shí)器產(chǎn)生PWM信號從而實(shí)現(xiàn)對直流電機(jī)轉(zhuǎn)速控制。硬件設(shè)計(jì)主要包括按鍵電路模塊、電機(jī)驅(qū)動模塊、測速模塊和轉(zhuǎn)速顯示模塊。其中采用獨(dú)立式鍵盤通過按鍵將命令輸入到單片機(jī),改變PWM信號占空比,再將單片機(jī)輸出的信號通過光電耦合器和由IGBT組成的H型橋式功率放大驅(qū)動電路,根據(jù)不同占空比的PWM信號達(dá)到電機(jī)啟停、正反轉(zhuǎn)和加減速控制。測速模塊采用非接觸式的霍爾傳感器對直流電機(jī)的轉(zhuǎn)速進(jìn)行測量,將測得的轉(zhuǎn)速傳送到單片,再通過LCD顯示出來。本論文主要介紹了直流電機(jī)調(diào)速系統(tǒng)的原理和方案設(shè)計(jì),單片機(jī)如何產(chǎn)生PWM信號,H橋驅(qū)動電路設(shè)計(jì),硬件電路圖的設(shè)計(jì)與連接,實(shí)現(xiàn)功能的流程圖和程序,系統(tǒng)的仿真和調(diào)試。
 
單片機(jī)程序源碼:

#include

#define uchar unsigned char

#define uint unsigned int 

void displaym();

sbit en=P2^5;                //1602  6管腳

sbit rs=P2^7;         //1602端口        4管腳

sbit rw=P2^6;//lcd1602控制端口 5管腳

sbit num1=P1^0;                                                //占空比加1

sbit num2=P1^1;                                                                   //占空比減一

sbit num3=P1^2;                                                                                           //正傳

sbit num4=P1^3;                                                                                                         //反轉(zhuǎn)

sbit num5=P1^4;                                                                                                                   //開始停止切換


sbit out=P3^4;                                                         //PWM輸出用于正傳

sbit out1=P3^7;                        //PWM輸出用于反轉(zhuǎn)


uint zhuansu,flag,z1,z2,m,flag_1,zheng,fan,kai;





void delay(uint z)//延時(shí)1ms函數(shù)

{


uint x,y;

for(x=0;x     for(y=0;y<110;y++);

}




void write_com(uchar com)//向1602寫一字節(jié)(控制指令)

{

  rs=0;

  P0=com;

  delay(5);

  en=0;

  delay(10);

  en=1;

}

void write_data(uchar date)//向1602寫一字節(jié)(數(shù)據(jù))

{

  rs=1;

  P0=date;

  delay(5);

  en=0;

  delay(5);

  en=1;

}

void init()//初始化函數(shù)

  en=0;

  rw=0;

  write_com(0x01);         //lcd初始化

  write_com(0x38);                                           //5X7顯示

  write_com(0x0c);                         //關(guān)閉光標(biāo)

  TMOD=0x01;               //定時(shí)器方式1           

  TH0=0xdc;

  TL0=0x00;                //定時(shí)器裝入初值 

  EA=1;                    //開總中斷 

  ET0=1;                   //定時(shí)器0開中斷

  TR0=1; 

  EX1=1;

IT1=1;                 //定時(shí)器啟動  

TH1=0xfc;

  TL1=0x66;//定時(shí)100us

  ET1=1;                   //定時(shí)器1開中斷

  TR1=1;

  write_com(0x80);

  write_data('V');

  write_data(':');

  write_com(0x87);                 //第一行顯示轉(zhuǎn)速

  write_data('r');

  write_data('p');

  write_data('m');

  write_com(0xc0); 

  write_data('z');

  write_data('h');

  write_data('a');

  write_data('n');

  write_data('k');

  write_data('o');

  write_data('n');

  write_data('g');

  write_data('b');

  write_data('i');          //在第二行顯示zhankongbi:

  write_data(':');

  displaym();

}

void keyscan()  //鍵盤掃描函數(shù)

  if(num1==0)     

  {

    delay(5);      //消除抖動

         if(num1==0)

         {

                if(m<=199)

                 m++;

                        displaym();                                                                  //設(shè)定占空比加一

     }

  }

  if(num2==0)

  {

    delay(5);

         if(num2==0)

         {

                  if(m>=1)

                m--;

                        displaym();                                        //設(shè)定占空比減一

        

         }

  }

    if(num3==0)

  {

    delay(5);

         if(num3==0)

         {

          zheng=1;                //正傳標(biāo)志置1

          fan=0;          // 反轉(zhuǎn)標(biāo)志置0

        

         }

  }

      if(num4==0)

  {

    delay(5);

         if(num4==0)

         {

          zheng=0;                 //正傳標(biāo)志置0

          fan=1;          // 反轉(zhuǎn)標(biāo)志置1

        

         }

  }

      if(num5==0)

  {

    delay(5);

         if(num5==0)

         {

         while(num5==0)         ;

          kai=1-kai;

         }

  }

}

void display()

{

  write_com(0x82);

  zhuansu=zhuansu*30;          //將兩秒內(nèi)的計(jì)數(shù)乘以30得到轉(zhuǎn)每分


  if(zhuansu/10000!=0)

   write_data(zhuansu/10000+0x30);                                                  //如果轉(zhuǎn)速的萬位不為0        正常顯示否則顯示空格

   else

   write_data(' ');


  if(zhuansu/1000==0)

  write_data(' ');

  else 

  write_data(zhuansu%10000%1000+0x30);                                                                //如果轉(zhuǎn)速小于1000 千位為空格 否則正常顯示

  

  if(zhuansu/100==0)

  write_data(' ');

  else

  write_data(zhuansu%10000%1000/100+0x30);                                           //如果轉(zhuǎn)速小于100 百位為空格 否則正常顯示


    if(zhuansu/10==0)

  write_data(' ');

  else

  write_data(zhuansu%10000%1000%100/10+0x30);                                  //如果轉(zhuǎn)速小于10 十位為空格 否則正常顯示


  write_data(zhuansu%10000%1000%100%10+0x30);

  write_com(0xd0);                          //如果沒有這句,當(dāng)中斷內(nèi)的顯示函數(shù)執(zhí)行完,就會在轉(zhuǎn)速的位置顯示占空比數(shù)據(jù),導(dǎo)致亂碼

}

void displaym()

{

write_com(0xcb);

   if(m/200%10!=0)

  write_data(m/200%10+0x30);                           //如果占空比百位不為0則顯示百位否則顯示空格

  else 

  write_data(' ');

  

  if(m/200%10==0&&m/20%10==0)

  write_data(' ');

  else

  write_data(m/20%10+0x30);                                 //如果占空比小于10 十位正常顯示  否則顯示空格

  

  write_data(m/2%10+0x30);                                 //顯示個位

}

void main()

{

    flag_1=0;

        m=100;                                                         //占空比為100

        zhuansu=0;                                           //轉(zhuǎn)速初值0

        flag=0;

        zheng=1;                                  //初始化電機(jī)正轉(zhuǎn)動

[1] [2]
關(guān)鍵字:單片機(jī)  PWM  直流電機(jī)  調(diào)速系統(tǒng)  H橋驅(qū)動 引用地址:基于單片機(jī)PWM的直流電機(jī)調(diào)速系統(tǒng)+H橋驅(qū)動電路驅(qū)動原理圖

上一篇:AT89S52單片機(jī)16LED搖搖棒設(shè)計(jì)
下一篇:單片機(jī)測速與1602顯示程序與電路

推薦閱讀

2018年11月8日,阿里釘釘CEO陳航在世界互聯(lián)網(wǎng)大會上表示,數(shù)字經(jīng)濟(jì)已成為經(jīng)濟(jì)增長的新引擎,其發(fā)展由數(shù)字化企業(yè)組織推動,而5年后數(shù)字化將在企業(yè)中全面普及。馬云接班人張勇也曾表示,云計(jì)算將成為公司未來“主要業(yè)務(wù)”。在新一代信息技術(shù)迅速崛起的背景下,大力發(fā)展數(shù)字經(jīng)濟(jì)以推動實(shí)體經(jīng)濟(jì)轉(zhuǎn)型升級正在成為主流。數(shù)字安防政策進(jìn)入密集落地期在我國,數(shù)據(jù)...
經(jīng)過一天的調(diào)試,終于把STC15F2K60S2單片機(jī)測量超聲波HC-SR04的程序搞定,主要存在問題是: 1、單片機(jī)時(shí)鐘設(shè)置為22.1184MHz,而且采取1T模式運(yùn)行時(shí),觸發(fā)信號維持10us以上時(shí)間要采用延時(shí)函數(shù) Delay_us(250)并一定達(dá)到10us以上。 2、等待回聲接收的引腳echo要開啟接收,即echo=1; 3、觸發(fā)信號發(fā)出后不能馬上開啟計(jì)數(shù)器計(jì)數(shù),一定要等到有回聲信號時(shí)(echo被...
今天,vivo全新手機(jī)系統(tǒng)OriginOS官宣將于11月18日在深圳發(fā)布。此前官方稱該系統(tǒng)“歷時(shí)一年精心打磨,以帶來極致體驗(yàn)為追求”。圖源:微博從預(yù)告圖來看,新系統(tǒng)應(yīng)該會大量采用扁平化風(fēng)格,配色方面也比較年輕化。此前iQOO 產(chǎn)品經(jīng)理 @戈藍(lán) V 透露,Origin OS是由前蘋果設(shè)計(jì)師操刀,在界面美觀性以及系統(tǒng)易用性相比目前的Funtouch OS都有明顯的提升。 ...
以3225尺寸實(shí)現(xiàn)了業(yè)內(nèi)最高額定電流*在寬帶通上實(shí)現(xiàn)了高阻抗,支持-55°C~+155°C 的工作溫度范圍符合AEC-Q200標(biāo)準(zhǔn) 2021年10月26日 TDK株式會社(TSE:6762)開發(fā)出用于汽車PoC系統(tǒng)的ADL3225VM電感器。該電感器的尺寸為3.2mm(長)x 2.5mm(寬)x 2.5mm(高),而為了適應(yīng)不斷擴(kuò)展的汽車和高級駕駛輔助系統(tǒng) (ADAS) 應(yīng)用,制造商增加了更多的傳感器...

史海拾趣

小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved