hallo,
ik heb hier uit een boek eens proberen verkeerslichten na te maken ,
gevonden uit een boek.
Ik heb alles ingegeven, en de fouten er uitgehaald,
maar toch geeft hij het volgende probleem aan ;
Arduino: 1.6.3 (Windows 7), Board:"Arduino Uno"
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10603 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard C:\Users\dries\AppData\Local\Temp\build887013342772191138.tmp\sketch_apr04atraffic.cpp -o C:\Users\dries\AppData\Local\Temp\build887013342772191138.tmp\sketch_apr04atraffic.cpp.o
sketch_apr04atraffic.ino: In function 'void loop()':
sketch_apr04atraffic.ino:51:43: error: too few arguments to function 'void digitalWrite(uint8_t, uint8_t)'
In file included from sketch_apr04atraffic.ino:11:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:126:6: note: declared here
void digitalWrite(uint8_t, uint8_t);
** ^**
Fout bij het compileren.
Hieronder,
het volledige programma ...
#define westButton 3
#define eastButton 13
#define westRed 2
#define westYellow 1
#define westGreen 0
#define eastRed 12
#define eastYellow 11
#define eastGreen 10
#define yellowBlinkTime 500
boolean trafficWest = true;
int flowTime = 1000; // amount of time to let traffic flow
int changeDelay = 2000; // amount of time between colors
void setup()
{
// put your setup code here, to run once:
//setup digital I/O pins
pinMode(westButton, INPUT);
pinMode(eastButton, INPUT);
pinMode(westRed, OUTPUT);
pinMode(westYellow, OUTPUT);
pinMode(westGreen, OUTPUT);
pinMode(eastRed, OUTPUT);
pinMode(eastYellow, OUTPUT);
pinMode(eastGreen, OUTPUT);
// set initial state for lights - west side is green first
digitalWrite(westRed, LOW);
digitalWrite(westYellow, LOW);
digitalWrite(westGreen, HIGH);
digitalWrite(eastRed, HIGH);
digitalWrite(eastYellow, LOW);
digitalWrite(eastGreen, HIGH);
}
void loop()
{
if (digitalRead(westButton)== HIGH) // Request west > east traffic flow
{
if(trafficWest != true)
// only continue if traffic flowing in the east direction
{
trafficWest=true; // change traffic flow flag to west > east
delay(flowTime); // give time for traffic to flow
digitalWrite(eastGreen, LOW); // change east-facing lights from green to yellow to red
digitalWrite(eastYellow, HIGH);
digitalWrite(changeDelay);
digitalWrite(eastYellow, LOW);
digitalWrite(eastRed, HIGH);
delay(changeDelay);
for (int a=0; a<5 ; a++) // blink yellow light
{
digitalWrite(westYellow, LOW);
delay (yellowBlinkTime);
digitalWrite(westYellow, HIGH);
delay(yellowBlinkTime);
}
digitalWrite(westYellow, LOW);
digitalWrite(westRed, LOW); //change west-facing lights from red to green
digitalWrite(westGreen, HIGH);
}
}
if(digitalRead(eastButton)==HIGH) // request east > west traffic flow
{
if(trafficWest == true)
// only continue if traffic flow is in the opposite (west) direction
{
trafficWest=false; //change traffic flow flag to east > west
delay(flowTime);
digitalWrite(westGreen, LOW);
// change west lights from green to yellow flag to east > west
digitalWrite(westYellow, HIGH);
delay(changeDelay);
digitalWrite(westYellow, LOW);
digitalWrite(westRed, HIGH);
delay(changeDelay);
for (int a=0 ; a<5 ; a++) // bink yellow light
{
digitalWrite(eastYellow, LOW);
delay(yellowBlinkTime);
digitalWrite(eastYellow, HIGH);
delay(yellowBlinkTime);
}
digitalWrite(eastYellow, LOW);
digitalWrite(eastRed, LOW); // change east-facing lights from red to green
digitalWrite(eastGreen, HIGH);
}
}
}
heeft er iemand raad wat er foutloopt ?
Alvast bedankt
dries