步进电机控制器电路及程序.doc

上传人:文库蛋蛋多 文档编号:2928916 上传时间:2023-03-03 格式:DOC 页数:15 大小:52.50KB
返回 下载 相关 举报
步进电机控制器电路及程序.doc_第1页
第1页 / 共15页
步进电机控制器电路及程序.doc_第2页
第2页 / 共15页
步进电机控制器电路及程序.doc_第3页
第3页 / 共15页
步进电机控制器电路及程序.doc_第4页
第4页 / 共15页
步进电机控制器电路及程序.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《步进电机控制器电路及程序.doc》由会员分享,可在线阅读,更多相关《步进电机控制器电路及程序.doc(15页珍藏版)》请在三一办公上搜索。

1、步进电机控制器本毕设控制器采用STC89C52RC单片机,步进电机驱动采用ULN2003,利用液晶1602显示设置参数和运行状态。通过设置实现对步进电机,转动度数、转动方向的控制。程序:#include #define uchar unsigned char#define uint unsigned intvoid init();void writec(uint com);void writed(uint dat);void delay(uint shu);void xieshuzu(uchar a,uchar add);void kaiji();void option_turn(uchar

2、n);void rightturn(uchar q);/uchar keyscan();sbit en_a=P10;sbit en_b=P11;sbit en_c=P12;sbit en_d=P13;sbit e=P34;sbit rs=P35;sfr duan=0x80; uchar code table = 0713024031 ;uchar code table2= BYSJ ;uchar code table3=POS: +360.00; uchar code table4=V: R/s;/*delay1ms*/void delay(uint shu)uint i,j; for(i=s

3、hu;i0;i-) for(j=110;j0;j-);/*反转*/void option_turn(uchar n)uchar i;for(i=0;in;i+)en_a=1;en_b=1;en_c=1;en_d=0;delay(150); /D相en_a=1;en_b=1;en_c=0;en_d=0;delay(150); /DC相 */en_a=1;en_b=1;en_c=0;en_d=1;delay(150); / C 相 */en_a=1;en_b=0;en_c=0;en_d=1;delay(150); /BC相 */en_a=1;en_b=0;en_c=1;en_d=1;delay(1

4、50);/B相en_a=0;en_b=0;en_c=1;en_d=1;delay(150); /BA相*/en_a=0;en_b=1;en_c=1;en_d=1;delay(150); /A相en_a=0;en_b=1;en_c=1;en_d=0;delay(150); /DA相*/ /*正转*/void rightturn(uchar q)uchar j;for(j=0;jq;j+)en_a=0;en_b=1;en_c=1;en_d=1;delay(150); /A相en_a=0;en_b=0;en_c=1;en_d=1;delay(150); /ab相 */en_a=1;en_b=0;en

5、_c=1;en_d=1;delay(150); / 、B 相 */en_a=1;en_b=0;en_c=0;en_d=1;delay(150); /BC相 */en_a=1;en_b=1;en_c=0;en_d=1;delay(150);/c相en_a=1;en_b=1;en_c=0;en_d=0;delay(150); /CD相*/en_a=1;en_b=1;en_c=1;en_d=0;delay(150); /d相en_a=0;en_b=1;en_c=1;en_d=0;delay(150); /DA相*/*/void kaiji()xieshuzu(table,0x80);xieshuzu

6、(table2,0xc0); /*/void xieshuzu(uchar a,uchar add)uchar cis; writec(add); for(cis=0;acis!=0;cis+) writed(acis); delay(2); /*/void xies(uchar a,uchar add) writec(add); writed(0x30+a); /*/void writec(uint com) e=0; rs=0; duan=com; delay(2); e=1; delay(2); e=0;/*/void writed(uint dat) e=0; rs=1; duan=d

7、at; delay(2); e=1; delay(2); e=0; /*/void init() writec(0x01); writec(0x38); writec(0x0c);/*/void keyscan(void)/*uchar keyscan() uchar k,skey; key=0xfe; skey=key; if(skey!=0xfe) delay(10); skey=key; if(skey!=0xfe) switch(skey)待添加的隐藏文字内容3 case(0xee):k=7;kc+;break; case(0xde):k=8;kc+;break; case(0xbe)

8、:k=9;kc+;break; case(0x7e):k=0x0a;kc+;break; default:break; while(skey!=0xfe) skey=key; return k; key=0xfd; skey=key; if(skey!=0xfd) delay(10); skey=key; if(skey!=0xfd) switch(skey)case(0xed):k=4;kc+;break; case(0xdd):k=5;kc+;break; case(0xbd):k=6;kc+;break; case(0x7d):k=0x0b;kc+;break; default:brea

9、k;while(skey!=0xfd)skey=key;return k; key=0xfb; skey=key; if(skey!=0xfb) delay(10); skey=key; if(skey!=0xfb) switch(skey)case(0xeb):k=1;kc+;break; case(0xdb):k=2;kc+;break; case(0xbb):k=3;kc+;break; case(0x7b):k=0x0c;kc+;break; default:break;while(skey!=0xfb)skey=key;return k; key=0xf7; skey=key; if

10、(skey!=0xf7) delay(10); skey=key; if(skey!=0xf7) switch(skey) case(0xe7):k=0x0d;kc+;break; case(0xd7):k=0; kc+;break; case(0xb7):k=0x0e;kc+;break; case(0x77):k=0x0f;kc+;break; default:break; while(skey!=0xf7) skey=key; return k; */*/*/void main(void)init();kaiji();delay(2000);xieshuzu(table3,0x80);xieshuzu(table4,0xc0); while(1)if(P27=0)option_turn(250);/rightturn(250);delay(250);如果在做的过程中遇到问题可以联系我:乐意为大家服务!

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号