单片机控制的步进电机正反转和加速减速c程序.docx

上传人:lao****ou 文档编号:740550 上传时间:2024-05-04 格式:DOCX 页数:3 大小:16.34KB
下载 相关 举报
单片机控制的步进电机正反转和加速减速c程序.docx_第1页
第1页 / 共3页
单片机控制的步进电机正反转和加速减速c程序.docx_第2页
第2页 / 共3页
单片机控制的步进电机正反转和加速减速c程序.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《单片机控制的步进电机正反转和加速减速c程序.docx》由会员分享,可在线阅读,更多相关《单片机控制的步进电机正反转和加速减速c程序.docx(3页珍藏版)》请在第一文库网上搜索。

1、单片机控制的步进电机正反转和加速减速C程序日期:2008-09-06来源:net作者:佚名字体:大中小(投递新闻)这是一个群里朋友发给我的步进电机实现正转反转和加速减速的单片机c语言源程序,这里给大家共享下,有需要的朋友直接狂制到kei1里编译就可以了,程序己测试成功。单4拍正转zheng=0x01,0x08,0x04,0x02)单4拍反转fang=0x01,0x02,0x04,0x08)双4拍正转Zheng1J=0x09,0x0c,0x06,0x03)双4拍反转fang=0x03,0x06,OxOc,0x09)单双8拍正转zheng=(0x01,0x09,0x08,OxOc,0x04,0x0

2、6,0x02,0x03)单双8拍反转fang=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09)#inc1udereg51.h#inc1udeintrins.h#defineucharunsignedchar#defineuintunsignedintbitfront_move,back_move;ucharjzaj(void);单4拍正转zheng=0x01,0x08,0x04,0x02);单4拍反转fang=0x01,0x02,0x04,0x08);voidajc1(ucharjz);voidde1ay(ucharde1);ucharcodezheng=(0x

3、01,0x09,0x08,0x0c,0x04,0x06,0x02,0x03);ucharcodefangJ=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09);voidtimer()interrupt1(staticucharjz;THO=Oxfc;T1O=Ox18;jz=jzaj();if(jz)ajc1(jz);)voidmain()ucharcount=0;TMOD=OxOI;THO=OxFC;T1O=Ox18;TRO=1;ETO=1;EA=I;whi1e(1)(if(front_move)(P2=zhengcount;de1ay(100);count+;i

4、f(count=8)count=0;)if(back_move)(P2=fangcount;de1ay(IOO);count+;if(count=8)count=0;UCharjzaj(Void)(ucharhz,1z;P1=OxK);置所有行为低电平,行扫描,列线输入(此时)if(P1&OxfD)!=OXf0)/判断是否有有键按下(读取列的真实状态,若第4列有键按下则P1的值会变成OInOOo0),有往下执行(de1ay(10);延时去抖动(IOms)if(P1&0xft)!=OXfo)再次判断列中是否是干扰信号,不是则向下执行(hz=0xfe;逐行扫描初值(即先扫描第1行)WhiIe(hz

5、&0x10)!=0)行扫描完成时(即4行己经全部扫描完成)sccode为1110I111停止whi1e程序(P1=hz;输出行扫描码if(PI&hz)!=hz)*(P2&0xft)!=0xf0*也可这样本行有键按下(即P1(真实的状态)的高四位不全为1)(IZ=(P1&OxfD)IoXof;列Whi1e(P1&0xft)!=OxfD);re1um(hz)(1z);返回行和列break;有按键返回提前退出循环e1se所扫描的行没有键按下,则扫描下一行,直到4行都扫描,此时SCCOde值为I11O11I1退出whi1e程序hz=_Cro1(hz,1);行扫描码左移一位e1sereturn0;无键按下,返回O)voidajc1(ucharjz)(if(jz=0x11)(back_move=0;front_move=1;)if(jz=0x21)(front_move=0;back-move=1;)if(jz=0x41)(P2=0x00;front_move=0;back_move=0;voidde1ay(ucharde1)(uchari;for(;de10;de1-)for(i=0;i125;i+)(;)参考链接:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服