版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于c51單片機(jī)的直流電機(jī)pwm調(diào)速控制 -sq這是最近一階段自己學(xué)習(xí)所獲,現(xiàn)分享與大家。這里采用at89c52單片機(jī)做主控制芯片,實(shí)現(xiàn)兩路直流電機(jī)的pwm調(diào)速控制,另外還可以實(shí)現(xiàn)轉(zhuǎn)向、顯示運(yùn)行時(shí)間、顯示檔位等注:考慮小直流電機(jī)自身因素,調(diào)速范圍僅設(shè)有四級(jí)電路原理圖:c語(yǔ)言程序源代碼:/* 硬件資源分配*/ 數(shù)碼管: 顯示電機(jī)狀態(tài)(啟停、正反、速度)、運(yùn)行時(shí)間、是否轉(zhuǎn)彎按鍵: k4 啟動(dòng)/暫停 k3 正反轉(zhuǎn)/轉(zhuǎn)彎允許 k2 加速/左轉(zhuǎn)/運(yùn)行時(shí)間清零 k1 減速/右轉(zhuǎn)/停止定時(shí)器:t0 數(shù)碼管動(dòng)態(tài)顯示,輸出pwmt1 運(yùn)行時(shí)間記錄*/ /*主程序文件pwm.c*/#include <reg
2、52.h>#include "afx.h"#include "config.c"#define circle 5 /脈沖周期/按鍵定義uchar key,key_tmp=0, _key_tmp=0;/顯示定義uchar ledstate=0xf0; /led顯示標(biāo)志,0xf0不顯示,ox00顯示uchar code led_code_d4=0xe0,0xd0,0xb0,0x70; /分別選通1、2、3、4位uchar dispbuf4=0,0,0,0; /待顯示數(shù)組uchar dispbitcnt=0; /選通、顯示的位uchar mstcnt=0
3、;uchar centi_s=0,sec=0,min=0; /分、秒、1%秒 /程序運(yùn)行狀態(tài)標(biāo)志bit motstate=0; /電機(jī)啟停標(biāo)志bit dirstate=0;/方向標(biāo)志 0前,1后uchar state1=-1;uchar state2=-1;uchar state3=0;uchar state4=-1;uchar lspeed=0;uchar rspeed=0;/其他uint runtime=0;uint rtime_cnt=0;uint lwidth;uint rwidth; /脈寬uint widcnt=1;uint dispcnt; /函數(shù)聲明void key_scan(
4、void);void disbuf(void);void k4(void);void k3(void);void k2(void);void k1(void);void disp( uchar h, uchar n );void main(void) p1|=0xf0;ea=1;et0=1;et1=1;tmod=0x11;th0=0xfc;tl0=0x66; /t0,1ms定時(shí)初值th1=0xdb;tl1=0xff; /t1,10ms定時(shí)初值tr0=1;widcnt=1;while(1)key_scan();switch(key)case 0x80: k1(); break;case 0x40
5、: k2(); break;case 0x20: k3(); break;case 0x10: k4(); break;default:break;key=0;disbuf();lwidth=lspeed; rwidth=rspeed;/按鍵掃描*模擬觸發(fā)器防抖void key_scan(void)key_tmp=(p3)&0xf0;if(key_tmp&&!_key_tmp) /有鍵按下key=(p3)&0xf0;_key_tmp=key_tmp ; /按鍵功能處理/邏輯控制void k4(void) if(state4=-1)state4=1;tr1=1;d
6、ispbuf3=1;ledstate=0x00; /打開(kāi)ledmotstate=1; /打開(kāi)電機(jī)lspeed=1;rspeed=1;/初速設(shè)為1else if(state4=1)state4=0;tr1=0;motstate=0; /關(guān)閉電機(jī)else if(state4=0) motstate=1;if(state3=0)state4=1;tr1=1;else if(state3=1)lspeed=2; rspeed=2; void k3(void)if(state4=1)dirstate=!dirstate;if(state4=0)if(state3=0)state3=1; /可以轉(zhuǎn)向標(biāo)志
7、1可以,0不可以tr1=1;dispbuf3=9;motstate=1;lspeed=2;rspeed=2;else if(state3=1)state3=0;tr1=0;dispbuf3=0;motstate=0; void k2(void)if(state4=1&&lspeed<4&&rspeed<4)lspeed+;rspeed+;else if(state4=0)if(state3=0)/state4=-1;/ledstate=0xf0; motstate=0;sec=0;min=0;else if(state3=1&&lsp
8、eed<4&&rspeed<4) /turnstate=0;lspeed=2;rspeed+;void k1(void)if(state4=1&&lspeed>1&&rspeed>1)lspeed-;rspeed-;else if(state4=0)if(state3=0)state4=-1;ledstate=0xf0; motstate=0;else if(state3=1&&lspeed<4&&rspeed<4)/turnstate=1;lspeed+;rspeed=2;/顯
9、示預(yù)處理void disbuf(void) if(rtime_cnt=100)sec+;rtime_cnt=0;if(sec=60)min+;sec=0;if(state4=1)dispbuf0=sec%10; dispbuf1=sec/10; dispbuf2=min;if(!dirstate) /正轉(zhuǎn) dispbuf3=lspeed;if(dirstate)/反轉(zhuǎn)dispbuf3=lspeed+4; if(state4=0)if(state3=0) dispbuf0=sec%10; dispbuf1=sec/10; dispbuf2=min; dispbuf3=0;if(state3=1)
10、 dispbuf0=rspeed; dispbuf1=lspeed; dispbuf2=min; dispbuf3=9;/led驅(qū)動(dòng)void disp( uchar h, uchar n ) p1=n;p1|=ledstate ;p1|=led_code_dh;/t0中斷*顯示/方波輸出void time_0() interrupt 1 th0=0xfc;tl0=0x66;widcnt+;dispcnt+; /電機(jī)驅(qū)動(dòng)/方波輸出if(widcnt>circle) widcnt=1; if(widcnt<=lwidth)lmot_p=!dirstate&&motsta
11、te;else lmot_p=dirstate&&motstate; lmot_m=dirstate&&motstate;if(widcnt<=rwidth)rmot_p=!dirstate&&motstate;else rmot_p=dirstate&&motstate;rmot_m=dirstate&&motstate; /顯示if(dispcnt=5)disp(dispbitcnt,dispbufdispbitcnt);dispbitcnt+;if(dispbitcnt=4) dispbitcnt=0;dispcnt=0;/t1中斷*運(yùn)行時(shí)間void time_1() interrupt 3th1=0xdb;tl1=0xff;rtime_cnt+;/*配置文件afx.h*/#ifndef _afx_#define _afx_typedef unsigned char uchar;typedef unsigned int uint;typedef unsigned long ulong;#endif/*io配置文件config.
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024機(jī)械設(shè)備的購(gòu)銷合同范本
- 二零二五版1209兩人共同投資智能家居系統(tǒng)集成合同3篇
- 2024法院簽的離婚協(xié)議算不算離婚
- 2024汽車制造技術(shù)與專利許可合同
- 二零二五版吊車租賃合同安全教育與培訓(xùn)協(xié)議3篇
- 2025年度市政設(shè)施改造出渣承包管理協(xié)議3篇
- 二零二五年度醫(yī)藥產(chǎn)品鋪貨與區(qū)域分銷合同3篇
- 西南政法大學(xué)《無(wú)機(jī)材料合成與制備》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版LNG液化天然氣運(yùn)輸船舶改造合同3篇
- 武漢鐵路職業(yè)技術(shù)學(xué)院《教師職業(yè)規(guī)劃與就業(yè)指導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年中國(guó)高純生鐵行業(yè)政策、市場(chǎng)規(guī)模及投資前景研究報(bào)告(智研咨詢發(fā)布)
- 2022-2024年浙江中考英語(yǔ)試題匯編:完形填空(學(xué)生版)
- 2025年廣東省廣州市荔灣區(qū)各街道辦事處招聘90人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 中試部培訓(xùn)資料
- 硝化棉是天然纖維素硝化棉制造行業(yè)分析報(bào)告
- 央視網(wǎng)2025亞冬會(huì)營(yíng)銷方案
- 北師大版數(shù)學(xué)三年級(jí)下冊(cè)豎式計(jì)算題100道
- 計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)全套教學(xué)課件
- 屋頂分布式光伏發(fā)電項(xiàng)目施工重點(diǎn)難點(diǎn)分析及應(yīng)對(duì)措施
- 廚房的管理流程與制度及廚房崗位工作流程
- 鐵路危險(xiǎn)源辨識(shí)
評(píng)論
0/150
提交評(píng)論