Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Living
Outside
Play
Technology
Workshop
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
Step 3: Buttons
Put the buttons in so you have at least 2 pin holes space to add the wires and resistors. Place the 1kohm resistor between one side of the button and the negative run on the breadboard.
Image Notes 1. 1Kohm Brown = 1 Black = 0 Red = 2 Gold = +- 5% tolerance Put it together like this 1 0 00 (2 zeros) = 1000 = 1k (shortened)
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
// Get into it switch (stp){ // Green case 1: // Setup if (stpset == false){ changeat = now + tgreen - tpedwarn; // Set timer // Turn on Ped if (pedwait[direct] == true){ // Lights change for ped digitalWrite(light[direct][3], HIGH); digitalWrite(light[direct][4], LOW); // Set some vars pedwait[direct] = false; pedactive[direct] = true; pedredon = false; } // Turn on Green digitalWrite(light[direct][0], HIGH); // Turn off Red digitalWrite(light[direct][2], LOW); stpset = true; // We are setup } // Run else{ if (now > changeat){ // Times up if (pedactive[direct] == true){ // Turn off Ped digitalWrite(light[direct][3], LOW); digitalWrite(light[direct][4], HIGH); pedredon = true; } // Next step stp++; stpset = false; } } break; // Warn ped (if possible) case 2: // Setup if (stpset == false){ changeat = now + tpedwarn; changeatped = now + tpedwarnint; stpset = true; } // Run else{ // Flash Ped Red if (pedactive[direct] == true){ if (pedredon == true & changeatped < now){ digitalWrite(light[direct][4], LOW); pedredon = false; changeatped = now + tpedwarnint; } if (pedredon == false & changeatped < now){ digitalWrite(light[direct][4], HIGH); pedredon = true; changeatped = now + tpedwarnint; } } if (now > changeat){ // Times up // Turn off digitalWrite(light[direct][0], LOW); digitalWrite(light[direct][4], HIGH); pedredon = true; pedactive[direct] = false; // Next step stp++; stpset = false; } } break; // Yellow case 3: // Setup if (stpset == false){ changeat = now + tyellow; digitalWrite(light[direct][1], HIGH); stpset = true; } // Run
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
else{ if (now > changeat){ // Times up // Turn off digitalWrite(light[direct][1], LOW); // Next step stp++; stpset = false; } } break; // Red case 4: // Setup if (stpset == false){ changeat = now + tred; digitalWrite(light[direct][2], HIGH); stpset = true; } // Run else{ if (now > changeat){ // Times up // Start over stp = 1; stpset = false; // Change Direction if (direct == 1){ direct = 0; } else { direct = 1; } } } break; } }
File Downloads
traffic_lights.ino (4 KB) [NOTE: When saving, if you see .tmp as the file ext, rename it to 'traffic_lights.ino']
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/
Related Instructables
http://www.instructables.com/id/Traffic-Lights-Beginner-Arduino-Project/