仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
四个发光二极管代表步进电机的四个绕组
本电路可以控制两相步进电机或者四相步进电机
单片机源程序如下:
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- /********************************************************
- 控制位定义
- ********************************************************/
- sbit shi_neng=P1^0; // 使能控制位
- sbit fang_shi=P1^1; // 工作方式控制位
- sbit fang_xiang=P1^2;// 旋转方向控制位
- sbit mai_chong=P1^3; // 脉冲控制位
- /********************************************************
- 延时函数
- ********************************************************/
- void delay(uint i)//延时函数
- {
- uchar j,k;
- for(j=0;j<i;j++)
- for(k=0;k<250;k++);
- }
- /********************************************************
- 主函数
- ********************************************************/
- main()
- {
- shi_neng=1; // 使能控制位
- fang_shi=1; // 工作方式控制位
- fang_xiang=1;// 旋转方向控制位
- mai_chong=1; // 脉冲控制位
-
- while(1)
- {
- mai_chong=~mai_chong; //输出时钟脉冲
- delay(3); //延时 (括号内数值越小,电机转动速度越快)
-
- }
- }
复制代码
仿真与程序51hei提供下载:
018、L297_L298芯片混合式步进电机控制器.rar
(157.86 KB, 下载次数: 25)
|