Stap 4: Het nemen van de Motor voor een proefrit
Sluit de draden direct tot uw microproc en brandwond op opwaarts met de volgende code:
/* Playing with getting the small stepper motors driven. */ /* Include delay function */ #define F_CPU 1000000UL #include /* Pin defs for ATTiny2313 */ /* Clockwise order */ #define BLUE _BV(PB0) #define BLACK _BV(PB1) #define RED _BV(PB2) #define YELLOW _BV(PB3) #define DELAY 200 /* milliseconds between steps */ int main(void){ DDRB = 0xff; /* Enable output on all of the B pins */ PORTB = 0x00; /* Set them all to 0v */ while(1){ /* main loop here */ PORTB = BLUE; _delay_ms(DELAY); PORTB = BLACK; _delay_ms(DELAY); PORTB = RED; _delay_ms(DELAY); PORTB = YELLOW; _delay_ms(DELAY); } }
Hoe eenvoudig is dat code? Heel eenvoudig.
Alles wat het doet is maken van enkele mooie definities, zodat ik naar de draden door de kleur in plaats van hun pin-namen verwijzen kan, en vervolgens het knevels hen op in serie met een instelbare vertraging tussendoor. Om te beginnen, heb ik een half-tweede vertraging tussen stappen geselecteerd.
Zie het filmpje voor de resultaten. Als je echt op je spel, het aantal stappen per cyclus om erachter te komen van de motor enkele-intensivering hoekige resolutie.
(Oh ja. PS. laden stations zonder bij 3.6V gemakkelijk. Zie batterij in video.)