新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > PIC单片机驱动步进电机先正转后反转

PIC单片机驱动步进电机先正转后反转

作者:时间:2018-08-01来源:网络收藏

本文介绍了利用驱动先正转后反转。

本文引用地址:http://www.amcfsurvey.com/article/201808/384807.htm

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

//实验目的:

//熟悉驱动,先正转后反转

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

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

//硬件设置:

//1、把接在J10位置上

//2、5脚是5V电源脚,1-4接步进电机线圈

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

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

//*****************定义头文件**********************

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

#include

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

//******************定义配置位*********************

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

__CONFIG(0x3541);

//FLASH代码不保护,RB6和RB7为调试模式,FLASH不写保护,数据代码不保护

//RB3为数字IO口,低电压复位使能,上电延时开,看门狗关,4M晶体XT振荡器

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

//******************定义常量***********************

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

#define uchar unsigned char

#define uint unsigned int

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

//函 数 名:delay();

//入口参数:无

//出口参数:无

//函数作用:延时

//说 明:

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

void delay(void)

{

uint i;

for(i=400;i>0;i--){;}

}

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

//函 数 名:main(void);

//入口参数:无

//出口参数:无

//函数作用:MAIN函数

//说 明:

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

void main(void)

{

uint i;

OPTION=0X8F; //分频给WDT,分频比为128

ADCON1=0X07; //设置RA口,RE口为普通IO口

TRISA=0X00; //设置RD口为输出口

PORTA=0XDF; //RD口首先输出高电平

while(1)

{

for(i=400;i>0;i--) //步进电机正转

{

PORTA=0XDD;

delay();

PORTA=0XDB;

delay();

PORTA=0XD7;

delay();

PORTA=0XCF;

delay();

}

for(i=400;i>0;i--) //步进电机反转

{

PORTA=0XCF;

delay();

PORTA=0XD7;

delay();

PORTA=0XDB;

delay();

PORTA=0XDD;

delay();

}

}

}



评论


相关推荐

技术专区

关闭