/*
Owen Mundy
July 29, 2009
p. 262 of Physical Computing
Using BBB to run stepper motor by manually moving steppers
*/
int pin1 = 3; // PWM
int pin2 = 5; // PWM
int pin3 = 6; // PWM
int pin4 = 9; // PWM
int ledpin = 13; // LED
void setup()
{
pinMode(pin1, OUTPUT); // sets the pin as output
pinMode(pin2, OUTPUT); // sets the pin as output
pinMode(pin3, OUTPUT); // sets the pin as output
pinMode(pin4, OUTPUT); // sets the pin as output
pinMode(ledpin, OUTPUT); // sets the pin as output
}
void loop()
{
for (int i=0; i<24; i++)
{
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
}
blink();
for (int i=0; i<24; i++)
{
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
}
blink();
for (int i=0; i<6; i++)
{
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
}
blink();
for (int i=0; i<6; i++)
{
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, LOW); // off
digitalWrite(pin4, HIGH); // on
delay(10); // waits for a second
digitalWrite(pin1, LOW); // off
digitalWrite(pin2, HIGH); // on
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
digitalWrite(pin1, HIGH); // on
digitalWrite(pin2, LOW); // off
digitalWrite(pin3, HIGH); // on
digitalWrite(pin4, LOW); // off
delay(10); // waits for a second
}
blink();
}
void blink()
{
digitalWrite(ledpin, HIGH); // on
delay(1000); // waits for a second
digitalWrite(ledpin, LOW); // off
}