步进电机正反转控制电机调速控制等C51单片机电机控制KEIL源码工程文件8个合集: 双步进电机综合控制 步进电机按键控制 步进电机正反转 步进电机综合控制 步进电机调速原理 步进电机转动原理 步进电机转速数码管显示 直流电机按键控制 直流电机调速控制 /*----------------------------------------------- 名称:步进电机 内容:本程序用于测试4相步进电机常规驱动 含正反转 使用2相励磁 2相激励功率增倍 ------------------------------------------------*/ #include <reg52.h> sbit A1=P1^0; //定义步进电机连接端口 sbit B1=P1^1; sbit C1=P1^2; sbit D1=P1^3; #define Coil_AB1 {A1=1;B1=1;C1=0;D1=0;}//AB相通电,其他相断电 #define Coil_BC1 {A1=0;B1=1;C1=1;D1=0;}//BC相通电,其他相断电 #define Coil_CD1 {A1=0;B1=0;C1=1;D1=1;}//CD相通电,其他相断电 #define Coil_DA1 {A1=1;B1=0;C1=0;D1=1;}//D相通电,其他相断电 #define Coil_OFF {A1=0;B1=0;C1=0;D1=0;}//全部断电 unsigned char Speed; /*------------------------------------------------ uS延时函数,含有输入参数 unsigned char t,无返回值 unsigned char 是定义无符号字符变量,其值的范围是 0~255 这里使用晶振12M,精确延时请使用汇编,大致延时 长度如下 T=tx2+5 uS ------------------------------------------------*/ void DelayUs2x(unsigned char t) { while(--t); } /*------------------------------------------------ mS延时函数,含有输入参数 unsigned char t,无返回值 unsigned char 是定义无符号字符变量,其值的范围是 0~255 这里使用晶振12M,精确延时请使用汇编 ------------------------------------------------*/ void DelayMs(unsigned char t) { while(t--) { //大致延时1mS DelayUs2x(245); DelayUs2x(245); } } /*------------------------------------------------ 主函数 ------------------------------------------------*/ main() { unsigned int i=512;//旋转一周时间 Speed=5; Coil_OFF while(i--) //正向 { Coil_AB1 //遇到Coil_AB1 用{A1=1;B1=1;C1=0;D1=0;}代替 DelayMs(Speed); //改变这个参数可以调整电机转速 , //数字越小,转速越大,力矩越小 Coil_BC1 DelayMs(Speed); Coil_CD1 DelayMs(Speed); Coil_DA1 DelayMs(Speed); } Coil_OFF i=512; while(i--)//反向 { Coil_DA1 //遇到Coil_AB1 用{A1=1;B1=1;C1=0;D1=0;}代替 DelayMs(Speed); //改变这个参数可以调整电机转速 , //数字越小,转速越大,力矩越小 Coil_CD1 DelayMs(Speed); Coil_BC1 DelayMs(S
- 1
- zzzzhuan2022-11-26资源很好用,有较大的参考价值,资源不错,支持一下。
- 东冬洋阳羊2022-11-16总算找到了自己想要的资源,对自己的启发很大,感谢分享~
- dd_add2022-06-15用户下载后在一定时间内未进行评价,系统默认好评。
- 粉丝: 88
- 资源: 5820
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助