📄 stepmotor.c
字号:
//参考程序B: StepMotor.c 程序通过I/O口P5驱动步进电机反转
/*P5.0--STEPA,P5.1--STEPB,P5.2--STEPC,P5.3-STEPD*/
#include <c8051f020.h>
#include <intrins.h>
void PORT_Init (void);
void sleep_ms(unsigned int count)
{
unsigned int i,j;
for(i=0;i<count;i++)
{
for(j=0;j<250;j++)
_nop_();
}
}
void main (void) {
unsigned char k;
unsigned char SendData;
WDTCN = 0xde;/*无效看门狗*/
WDTCN = 0xad;
PORT_Init ();
P5=0xff; /*4相线圈都截止*/
sleep_ms(10);
while(1)
{
/*步进电机正转*/
for(k=0;k<10;k++){
P5=0x09; /*AB相通电*/
sleep_ms(50);
P5=0x0c; /*BC相通电*/
sleep_ms(50);
P5=0x06; /*CD相通电*/
sleep_ms(50);
P5=0x03; /*DA相通电*/
sleep_ms(50);
}
}
}
void PORT_Init (void) // 初始化I/O
{
P74OUT |= 0x0c; /*P5低4位为推挽输出,其余口为开漏输出*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -