MCU-51單片機直流電機驅動(PWM)51單片機驅動直流電機

18luck网站

18luck网站電子設計 | 18luck网站Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 18luck网站 >> 18luck平台 >> 單片機實例 >> 正文

MCU-51單片機直流電機驅動(PWM)51單片機驅動直流電機

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2023/4/4

目錄

一、直流電機介紹

直流電機是一種將電能轉換為(wei) 機械能的裝置。一般的直流電機有兩(liang) 個(ge) 電極,當電極正接時,電機正轉,當電極反接時,電機反轉
直流電機主要由永磁體(ti) (定子)、線圈(轉子)和換向器組成
除直流電機外,常見的電機還有步進電機、舵機、無刷電機、空心杯電機等
直流電機 

二、直流電機驅動電路

直流電機驅動電路 

三、PWM

3.1 PWM介紹

PWM(Pulse Width Modulation)即脈衝(chong) 寬度調製,在具有慣性的係統中,可以通過對一係列脈衝(chong) 的寬度進行調製,來等效地獲得所需要的模擬參量,常應用於(yu) 電機控速、開關(guan) 電源等領域
PWM重要參數:
頻率 = 1 / TS 占空比 = TON / TS 精度 = 占空比變化步距
 

3.2 產生PWM方法

基本原理是由單片機內(nei) 部集成PWM發生器模塊在程序控製下產(chan) 生PWM信號。優(you) 點是電路簡單、便於(yu) 程序控製。缺點是不利於(yu) 學生觀測PWM產(chan) 生過程,閉環控製複雜和使用時受單片機性能製約。
 

四、代碼演示

電機調速
main.c

#include <REGX52.H> #include "Delay.h" #include "Key.h" #include "Nixie.h" #include "Timer0.h" sbit Motor=P1^0; unsigned char Counter,Compare; unsigned char KeyNum,Speed; void main() { Timer0_Init(); while(1) { KeyNum=Key(); if(KeyNum==1) { Speed++; Speed%=4; if(Speed==0){Compare=0;} if(Speed==1){Compare=50;} if(Speed==2){Compare=75;} if(Speed==3){Compare=100;} } Nixie(1,Speed); } } void Timer0_Routine() interrupt 1 { TL0 = 0x9C; //設置定時初值 TH0 = 0xFF; //設置定時初值 Counter++; Counter%=100; if(Counter<Compare) { Motor=1; } else { Motor=0; } }

注意:一定要看

千萬(wan) 不要直接複製代碼,因為(wei) 是模塊化編寫(xie) ,模塊的代碼沒有往上複製(模塊的代碼在以往的文章中可以找到),大家一定要自己動手,跟著視頻學!!!!!

Tags:51單片機,直流電機,驅動  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關於我們 - 聯係我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁麵
下到頁底
晶體管查詢
51La