51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx

上传人:摩西的****12 文档编号:156459174 上传时间:2020-12-18 格式:PPTX 页数:4 大小:120.71KB
返回 下载 相关 举报
51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx_第1页
第1页 / 共4页
51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx_第2页
第2页 / 共4页
51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx_第3页
第3页 / 共4页
51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx》由会员分享,可在线阅读,更多相关《51单片机控制步进电机程序及硬件电路图(2020年12月16日整理).pptx(4页珍藏版)》请在金锄头文库上搜索。

1、,#include static unsigned int count;/计数 static int step_index;/步进索引数,值为 07 static bit turn;/步进电机转动方向 static bit stop_flag;/步进电机停止标志 static int speedlevel; /步进电机转速参数,数值越大速度越慢,最小值为 1,速度最快 static int spcount;/步进电机转速参数计数 void delay(unsigned int endcount);/延时函数,延时为 endcount*0.5 毫秒,1,/步进电机控制步进函数,void goru

2、n(); void main(void) count = 0; step_index = 0; spcount = 0; stop_flag = 0; P1_0 = 0; P1_1 = 0; P1_2 = 0; P1_3 = 0; EA = 1;,/允许 CPU 中断,TMOD = 0 x11; /设定时器 0 和 1 为 16 位模式 1 ET0 = 1;/定时器 0 中断允许 TH0 = 0 xFE;,2,TL0 = 0 x0C;/设定时每隔 0.5ms 中断一次,/开始计数,TR0 = 1; turn = 0; speedlevel = 2; delay(10000); speedlev

3、el = 1; do speedlevel = 2; delay(10000); speedlevel = 1; delay(10000); stop_flag=1; delay(10000); stop_flag=0; while(1);, /定时器 0 中断处理 void timeint(void) interrupt 1 TH0=0 xFE; TL0=0 x0C; /设定时每隔 0.5ms 中断一次 count+; spcount-; if(spcount=0) spcount = speedlevel; gorun(); void delay(unsigned int endcount

4、) count=0; dowhile(countendcount); void gorun() if (stop_flag=1) P1_0 = 0; P1_1 = 0;,3,P1_2 = 0; P1_3 = 0; return; switch(step_index) case 0: /0 P1_0 = 1; P1_1 = 0; P1_2 = 0; P1_3 = 0; break; case 1: /0、1 P1_0 = 1; P1_1 = 1; P1_2 = 0; P1_3 = 0; break; case 2: /1 P1_0 = 0; P1_1 = 1; P1_2 = 0; P1_3 =

5、0; break; case 3: /1、2 P1_0 = 0; P1_1 = 1; P1_2 = 1; P1_3 = 0; break; case 4:/2 P1_0 = 0; P1_1 = 0; P1_2 = 1; P1_3 = 0; break; case 5: /2、3 P1_0 = 0; P1_1 = 0; P1_2 = 1; P1_3 = 1; break; case 6: /3 P1_0 = 0;,4,P1_1 = 0; P1_2 = 0; P1_3 = 1; break; case 7: /3、0 P1_0 = 1; P1_1 = 0; P1_2 = 0; P1_3 = 1; if (turn=0) step_index+; if (step_index7) step_index=0; else step_index-; if (step_index0) step_index=7; ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号