中科因仑“3+1”工程特种兵精英论坛

标题: 步进电机控制程序L298N步进电机正转程序(AVR) [打印本页]

作者: 张衍波    时间: 2015-5-13 08:15
标题: 步进电机控制程序L298N步进电机正转程序(AVR)
/********************************************************************
                            汇诚科技

实现功能:初次使用驱动器调试程序
使用芯片:ATMEGA16L
晶振:8MHZ
编译环境:ICC_AVR
作者:zhangxinchunleo
网站:www.ourhc.cn
淘宝店:汇诚科技 http://shop36330473.taobao.com
【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!     

*********************************************************************/
#include <iom16v.h>
#include <macros.h>

/*------宏定义------*/
#define uchar unsigned char
#define uint unsigned int
uchar run[8]={0x05,0x01,0x09,0x08,0x0a,0x02,0x06,0x04};  //两相四线八拍工作方式数组
/*******************************************************************
                             端口初始化
*******************************************************************/
void port_init(void)
{
PORTB = 0xFF;
DDRB  = 0xFF;
}
/*******************************************************************
                             延时函数
*******************************************************************/
void delay(uint i)//延时函数
{
uint j,k;
for(j=0;j<i;j++)
for(k=0;k<1000;k++);
}
/*******************************************************************
                             主函数
*******************************************************************/
main()
{
uint z,y;
y=40;            //定义延时时间,时间越长电机转速越慢反之则快
port_init();
while(1)
{
for(z=0;z<8;z++)  //改变数组的长度值需改变这个数字8,8为数组的长度。
{
PORTB=run[z];
delay(y);
}
}
}

[attach]3000[/attach]







欢迎光临 中科因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) Powered by Discuz! X3.4