查看: 1696|回复: 0
打印 上一主题 下一主题

步进电机控制程序L298N步进电机正转程序(AVR)

[复制链接]
跳转到指定楼层
沙发
发表于 2015-5-13 08:15:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/********************************************************************
                            汇诚科技

实现功能:初次使用驱动器调试程序
使用芯片: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);
}
}
}




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入中科因仑

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表