資料介紹
/* * STEPPER.C * sweeping stepper's rotor cw and cww 400 steps * Copyright (c) 1999 by W.Sirichote */
#include c:\mc51\8051io.h /* include i/o header file */ #include c:\mc51\8051reg.h
register unsigned char j,flag1,temp; register unsigned int cw_n,ccw_n;
unsigned char step[8]={0x80,0xc0,0x40,0x60,0x20,0x30,0x10,0x90} #define n 400
/* flag1 mask byte 0x01 run cw() 0x02 run ccw() */
main()
{ flag1=0; serinit(9600); disable(); /* no need timer interrupt */ cw_n = n; /* initial step number for cw */ flag1 |=0x01; /* initial enable cw() */
while(1){ { tick_wait(); /* wait for 10ms elapsed */
energize(); /* round-robin execution the following tasks every 10ms */ cw(); ccw(); } }
}
cw(){ if((flag1&0x01)!=0) { cw_n--; /* decrement cw step number */ if (cw_n !=0) j++; /* if not zero increment index j */ else {flag1&=~0x01; /* disable cw() execution */ ccw_n = n; /* reload step number to ccw counter */ flag1 |=0x02; /* enable cww() execution */ } } }
ccw(){ if((flag1&0x02)!=0) { ccw_n--; /* decremnet ccw step number */ if (ccw_n !=0) j--; /* if not zero decrement index j */ else {flag1&=~0x02; /* disable ccw() executon */ cw_n = n; /* reload step number to cw counter */ flag1 |=0x01; /* enable cw() execution */ } } }
tick_wait(){ /* cputick was replaced by simpler ASM code 10ms wait */
asm" JNB TCON.5,*"; /* wait for TF0 set */ asm" CLR TCON.5"; /* clear TF0 for further set */ asm" ORL TH0,#$DC"; /* reload TH0 with $DC, TL0 = 0 */ }
energize(){
P1 = step[(j&0x07)]; /* only step 0-7 needed */ }
#include c:\mc51\8051io.h /* include i/o header file */ #include c:\mc51\8051reg.h
register unsigned char j,flag1,temp; register unsigned int cw_n,ccw_n;
unsigned char step[8]={0x80,0xc0,0x40,0x60,0x20,0x30,0x10,0x90} #define n 400
/* flag1 mask byte 0x01 run cw() 0x02 run ccw() */
main()
{ flag1=0; serinit(9600); disable(); /* no need timer interrupt */ cw_n = n; /* initial step number for cw */ flag1 |=0x01; /* initial enable cw() */
while(1){ { tick_wait(); /* wait for 10ms elapsed */
energize(); /* round-robin execution the following tasks every 10ms */ cw(); ccw(); } }
}
cw(){ if((flag1&0x01)!=0) { cw_n--; /* decrement cw step number */ if (cw_n !=0) j++; /* if not zero increment index j */ else {flag1&=~0x01; /* disable cw() execution */ ccw_n = n; /* reload step number to ccw counter */ flag1 |=0x02; /* enable cww() execution */ } } }
ccw(){ if((flag1&0x02)!=0) { ccw_n--; /* decremnet ccw step number */ if (ccw_n !=0) j--; /* if not zero decrement index j */ else {flag1&=~0x02; /* disable ccw() executon */ cw_n = n; /* reload step number to cw counter */ flag1 |=0x01; /* enable cw() execution */ } } }
tick_wait(){ /* cputick was replaced by simpler ASM code 10ms wait */
asm" JNB TCON.5,*"; /* wait for TF0 set */ asm" CLR TCON.5"; /* clear TF0 for further set */ asm" ORL TH0,#$DC"; /* reload TH0 with $DC, TL0 = 0 */ }
energize(){
P1 = step[(j&0x07)]; /* only step 0-7 needed */ }
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 基于51單片機(jī)的步進(jìn)電機(jī)控制程序 71次下載
- 直流無(wú)刷電機(jī)控制程序
- 直流電機(jī)CPLD 控制程序設(shè)計(jì)
- 步進(jìn)電機(jī)控制程序免費(fèi)下載 7次下載
- 電機(jī)的控制程序資料合集免費(fèi)下載 13次下載
- DSP電機(jī)控制程序和工程文件免費(fèi)下載 28次下載
- 步進(jìn)電機(jī)控制程序的原理是怎么樣的 12次下載
- MSP430 Stepper Motor Controller電機(jī)控制:步進(jìn)電機(jī) 12次下載
- 小車電機(jī)控制程序的編寫要求 14次下載
- 步進(jìn)電機(jī)控制程序液晶顯示程序 33次下載
- 各種電機(jī)的DSP控制程序 51次下載
- 單片機(jī)按鍵控制程序【C語(yǔ)言】 29次下載
- 電機(jī)控制程序設(shè)計(jì)與調(diào)試 0次下載
- 步進(jìn)電機(jī)控制程序(匯編語(yǔ)言+89c51單片機(jī))
- 步進(jìn)電機(jī)控制程序(PLC控制)
- 步進(jìn)電機(jī)的控制原理與應(yīng)用實(shí)例 450次閱讀
- 步進(jìn)電機(jī)控制器電路圖 步進(jìn)電機(jī)控制器的分類及其特點(diǎn) 1563次閱讀
- 什么是步進(jìn)電機(jī)控制器?步進(jìn)電機(jī)控制器電路圖 766次閱讀
- 步進(jìn)電機(jī)工作原理是什么? 步進(jìn)電機(jī)電流和細(xì)分的關(guān)系 1077次閱讀
- 微雪電子樹莓派步進(jìn)電機(jī)驅(qū)動(dòng)板|Stepper Motor HAT介紹 5193次閱讀
- 步進(jìn)電機(jī)如何控制速度 1.5w次閱讀
- 步進(jìn)電機(jī)控制器原理_步進(jìn)電機(jī)控制器編程實(shí)例 1.6w次閱讀
- 如何進(jìn)行PLC控制程序的設(shè)計(jì)詳細(xì)資料PPT說(shuō)明 5753次閱讀
- 海為C32S2T系列PLC在沖床的控制程序中的應(yīng)用設(shè)計(jì) 1934次閱讀
- 基于單片機(jī)的步進(jìn)電機(jī)轉(zhuǎn)速控制設(shè)計(jì)詳解(附程序) 2.5w次閱讀
- 步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)及應(yīng)用案例 1.4w次閱讀
- 直流電機(jī)的PWM速度控制程序 1.6w次閱讀
- PLC對(duì)步進(jìn)電機(jī)進(jìn)行定位控制程序的原理及方案解析 1.3w次閱讀
- 步進(jìn)電機(jī)的功能模塊設(shè)計(jì),步進(jìn)電機(jī)的控制與測(cè)速方法 2294次閱讀
- 單片機(jī)控制步進(jìn)電機(jī)的原理 8.4w次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 11次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5DIY動(dòng)手組裝LED電子顯示屏
- 0.98 MB | 3次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)PM2.5檢測(cè)系統(tǒng)程序
- 0.83 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537797次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191186次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多