42步进电机驱动程序

42步进电机驱动程序

ID:30749620

大小:51.00 KB

页数:12页

时间:2019-01-03

42步进电机驱动程序_第1页
42步进电机驱动程序_第2页
42步进电机驱动程序_第3页
42步进电机驱动程序_第4页
42步进电机驱动程序_第5页
资源描述:

《42步进电机驱动程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、42步进电机驱动程序#include#defineuintunsignedint#clefineucharunsignedchar#definems*77//f=12M#defineLEDLen4#defineDjstar()Pridj=0;}ShacheShacheLEDBuf#defineDj_stop(){IE=0x00;Pri_clj=1;Pl=0XFF;=〃0〃.Delay(800ms):Delay(800ms);Delay(400ms);=1;}#defineChilunN

2、um8/*thegearnumber8*/#definesetdisplaynum(){LEDBuf[0]=TMP/1000;[1]二TMP/100%10;LEDBuf[2]二TMP/10%;LEDBuf[3]二TMP%10}UcharLEDBuf[LEDLen]二{0,0,0,0}Voidreadnum():/*readthesowingcodetosetroundnum*Voiddisplay();Voiddelay(uintdelay_time){uintI;For(1=0;I

3、me;I++);}Voidrun();Voidfx_run();Uintround_num二0;/*recordthenumberofgearsthathavebeenturned,interrupted1timesplus1*/Uintset_round_num二0;/*sowingplattersetsthewindingnumber*/Uintset_pwm_width=0;/*sowingplattersetsthestepmotortothespeed*/Bitone_round_flg二0;

4、Sbitled_1000二P0八7;//useforthedisplaySbitled_100=P06;//useforthedisplaySbitled_10=P05://useforthedisplaySbitled_l=P04;//useforthedisplaySbitkey_start二P3八0;Sbitkey_puse二P3八0;Sbitkey_clear=P31;/**/P3八2pickupgearsensorinterruptSbitbujin_zx_stop二P3八3;/*taketh

5、estepintothemotor,thesensorisinplace,0stop*/Sbitbujin_fx_stop=P34;/*takethestepintothemotor,thereversepositionsensor,0down*/Sbitshache二P3八5;/*thebrakecontrolrelays0potentialeffective*/Sbitpri_dj=P36;/*themainmotorcontrolrelays0potentialeffective*/Voidmai

6、n(){TCON=0xOl;Thedisplay();While(1){IE二〃0x00〃;Roundnum二0;Thedisplay();If(bujin_fxstop)fxrun();While(key_start);Delay(8ms);If(!Key_start){Read_num();//set_round_num二8;While(!Key_start);Therun();Fx_run();Voidrun(){PoundsigndefineDelay_time180/*turnaround50

7、cycles,4stepspercycle,50*4二200,200*1.8二360*/UcharI;Pl二0XFF;Set_pwm_width二15+set_pwm_width/10;While(1)While(!)Dj_star();For(I二〃0〃;)Pl二0xf9;延迟(延迟时间);//bujinzxstop=P33;Pl=0xfc://bujinfxstop=P34;延迟(延迟时间);//keypuse=P30;Pl=0xf6;//keyclear=P31;延迟(延迟时间);//shache

8、=P35;Pl=0xf3;//pridj=P36;如果(i==setpwmwidth)Pl=Oxff;i=0;—圆fig二0;while(!one_roundflg&key_puse);}如果(!keypuse)延迟(4ms);如果(!keypuse)中断;}Pl二0xff;如果(pridj)中断;如果(!key_puse){延迟女士(8);如果(!key_puse){Dj_stop();而(!key_puse);//下一个试验的关键而(I

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。