欢迎来到天天文库
浏览记录
ID:12190740
大小:33.00 KB
页数:3页
时间:2018-07-16
《开关控制步进电机加速、匀速、减速程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、/**********************************************************************************;*SL300A单片机学习套件实验例程---步进电机加减速运行---*;**;*实验功能:*;*步进电机启动时,转速由慢到快逐步加速。*;*步进电机匀速运行*;*步进电机由快到慢逐步减速*;*硬件联接:用一根6P线,一头插到步进电机板上的6P插座上,另一头插到SL300A的JP7上*;*注意电源极性。*;*步进电机步进角为7.5度,一圈360度。*;*双四拍工作方式:*;*AB-BC-CD
2、-DA(即一个脉冲,转7.5度)*;*单双八拍工作方式:*;*A-AB-B-BC-C-CD-D-DA(即一个脉冲,转3.75度)*;*A组线圈对应P1.0B组线圈对应P1.1C组线圈对应P1.2D组线圈对应P1.3*;*********************************************************************************/#include//51芯片管脚定义头文件#include//内部包含延时函数_nop_();#defineucharunsignedc
3、har#defineuintunsignedintsbitK8=P3^7;ucharcodeFFW[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9};//ucharcodeREV[8]={0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1};ucharrate;/********************************************************//*/*延时/*11.0592MHz时钟,/*/********************************
4、************************/voiddelay(){uchark;uints;k=rate;do{for(s=0;s<1500;s++);}while(--k);}/********************************************************//*/*步进电机正转/*/********************************************************/voidmotor_ffw(){uchari;for(i=0;i<8;i++)//一个周期转30度{P1=FFW[i
5、];//取数据delay();//调节转速}}/**********************************************************步进电机运行**********************************************************/voidmotor_turn(){ucharx;rate=0x0a;x=0x80;do{motor_ffw();//加速rate--;}while(rate!=0x01);do{motor_ffw();//匀速x--;}while(x!=0x01);do{moto
6、r_ffw();//减速rate++;}while(rate!=0x0a);}/**********************************************************主程序**********************************************************/main(){P1=0xf0;while(1){P1=0xf0;if(K8==0){motor_turn();}}}/********************************************************/
此文档下载收益归作者所有