您的位置 首页 设计

AVR128的程序——步进电机点动正反操控

includeiom128vH>includemacrosh>defineucharunsignedchardefineuintunsignedintucharstep_table[]={

#include

#include
#define uchar unsigned char
#define uintunsigned int
uchar step_table[]={0xf1,0xf2,0xf4,0xf8};
uchar step_table1[]={0xf8,0xf4,0xf2,0xf1};
void Delayms(uint MS);
void mcu_init(void)
{
DDRA=0XFF;
PORTA=0XFF;
DDRC=0XFF;
PORTC=0XFF;
DDRF|=0X0E;
PORTF|=0X0E;
PORTF&=0xF8;
DDRB |=0X1f;
PORTB|=0X1f;
DDRD = 0x00;
PORTD = 0XFF;
}
void main(void)
{
uint i,a1=0,a2=0;
mcu_init();
while(1)
{
if((PIND&0x01)!=0X01)
{
Delayms(5);
if((PIND&0x01)!=0X01)
{
a1=1;
while(a1)
{
PORTA=0XFE;
for(i=0;i<4;i++)
{
PORTB = step_table[i];
Delayms(3);
}
if((PIND&0X01)!=0X00);
{
PORTA=0XFF;
a1=0;
}
}
}
}
if((PIND&0x02)!=0X02)
{
Delayms(5);
if((PIND&0x02)!=0X02)
{
a2=1;
while(a2)
{
PORTA=0XEF;
for(i=0;i<4;i++)
{
PORTB = step_table1[i];
Delayms(3);
}
if((PIND&0X02)!=0X00);
{
PORTA=0XFF;
a2=0;
}
}
}
}
}
}
void Delayms(uint MS)
{
uint i,j;
for( i=0;i
for(j=0;j<1141;j++);
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/sheji/262329.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部