stepm.c

来自「c8051单片机程序包,keil C编写」· C语言 代码 · 共 78 行

C
78
字号
#include "c8051f020.h"                
#include <intrins.h>
#define CPTIME 4

/************************************************************
	步进电机控制试验

	试验准备:用连接线分别将CN4的P12,P13,P14,P15端子与CN1的LED1
	LED2,LED3,LED4相连.
	运行此程序,观察步进电机的转速和旋转方向,LED的变化情况.

*************************************************************/


void Delay1ms(unsigned char T);

void TestStepM(void)
{
char x,i,j;
char FTab[]={0xc7,0xcb,0xd3,0xe3};
char CTab[]={0xc7,0xe3,0xd3,0xcb};
for (x=0;x<5;x++)
{

	P27=1;
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = FTab[j];
			Delay1ms((20-i/10)*CPTIME);
		}
	}
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = FTab[j];
			Delay1ms(10*CPTIME);
		}
	}
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = FTab[j];
			Delay1ms((10+i/10)*CPTIME);
		}
	}
	P27=0;
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = CTab[j];
			Delay1ms((20-i/10)*CPTIME);
		}
	}
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = CTab[j];
			Delay1ms(10*CPTIME);
		}
	}
	for (i=0;i<100;i++)
	{
		for (j=0;j<4;j++)
		{
			P1 = CTab[j];
			Delay1ms((10+i/10)*CPTIME);
		}
	}
}  
	P27=1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?