arduino:program_structure
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionLast revisionBoth sides next revision | ||
arduino:program_structure [2012/09/13 04:20] – created mithat | arduino:program_structure [2012/09/13 06:01] – [Main loop] mithat | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Program structure ====== | ||
+ | |||
+ | ===== Main loop ===== | ||
+ | |||
+ | All Arduino programs (called " | ||
+ | |||
<file c program_structure.ino> | <file c program_structure.ino> | ||
void setup() { | void setup() { | ||
- | // Stuff in here gets run once (when the program starts). | + | // Stuff in here gets run once when the program starts. |
} | } | ||
void loop() { | void loop() { | ||
// Stuff in here gets run over and over and over again (until you turn the power off). | // Stuff in here gets run over and over and over again (until you turn the power off). | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Blink an LED ===== | ||
+ | |||
+ | Blinking an LED is the microcontroller equivalent to a " | ||
+ | |||
+ | <file c BlinkMe.ino> | ||
+ | /* | ||
+ | BlinkMe | ||
+ | Turn an LED on and off once per second. | ||
+ | */ | ||
+ | |||
+ | void setup() { | ||
+ | // make pin 13 an output | ||
+ | pinMode(13, OUTPUT); | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | digitalWrite(13, | ||
+ | delay(1000); | ||
+ | digitalWrite(13, | ||
+ | delay(1000); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Here is the same example but using a **variable** to store the pin number. | ||
+ | |||
+ | <file c BlinkMe2.ino> | ||
+ | /* | ||
+ | BlinkMe2 | ||
+ | Turn an LED on and off once per second (improved version). | ||
+ | */ | ||
+ | |||
+ | // use variable ledPin to store the pin number that drives the LED | ||
+ | int ledPin = 13; | ||
+ | |||
+ | void setup() { | ||
+ | // make ledPin an output | ||
+ | pinMode(ledPin, | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | digitalWrite(ledPin, | ||
+ | delay(1000); | ||
+ | digitalWrite(ledPin, | ||
+ | delay(1000); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Now if we need to change the pin number, we only need to change it in one place. | ||
+ | |||
+ | Here we use variables also to define delay times: | ||
+ | |||
+ | <file c BlinkMe3.ino> | ||
+ | /* | ||
+ | BlinkMe3 | ||
+ | Turn an LED on and off once per second (another improved version). | ||
+ | */ | ||
+ | |||
+ | // use variable ledPin to store the pin number that drives the LED | ||
+ | int ledPin = 13; | ||
+ | // define the LED's on and off times in milliseconds | ||
+ | int onTime = 1000; | ||
+ | int offTime = 1000; | ||
+ | |||
+ | void setup() { | ||
+ | // make ledPin an output | ||
+ | pinMode(ledPin, | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | digitalWrite(ledPin, | ||
+ | delay(onTime); | ||
+ | digitalWrite(ledPin, | ||
+ | delay(offTime); | ||
} | } | ||
</ | </ |
arduino/program_structure.txt · Last modified: 2012/09/14 01:20 by mithat