欢迎来到天天文库
浏览记录
ID:8839228
大小:33.00 KB
页数:3页
时间:2018-04-09
《开关控制步进电机加速、匀速、减速程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、/**********************************************************************************;*SL300A单片机学习套件实验例程---步进电机加减速运行---*;**;*实验功能:*;*步进电机启动时,转速由慢到快逐步加速。*;*步进电机匀速运行*;*步进电机由快到慢逐步减速*;*硬件联接:用一根6P线,一头插到步进电机板上的6P插座上,另一头插到SL300A的JP7上*;*注意电源极性。*;*步进电机步进角为7.5度,一圈360度。*;*双四拍工作方式
2、:*;*AB-BC-CD-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_
3、();#defineucharunsignedchar#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_
5、ffw(){uchari;for(i=0;i<8;i++)//一个周期转30度{P1=FFW[i];//取数据delay();//调节转速}}/**********************************************************步进电机运行**********************************************************/voidmotor_turn(){ucharx;rate=0x0a;x=0x80;do{motor_ffw();//加速rate--;}whil
6、e(rate!=0x01);do{motor_ffw();//匀速x--;}while(x!=0x01);do{motor_ffw();//减速rate++;}while(rate!=0x0a);}/**********************************************************主程序**********************************************************/main(){P1=0xf0;while(1){P1=0xf0;if(K8==0){motor
7、_turn();}}}/********************************************************/
此文档下载收益归作者所有