første skecth laget av meg selv, jeg prøvde å lage en skecth for et trafikklys ved hjelp av en trykknapp for å endre fasen (1- stengt for biler, åpen for fotgjengere 2- vent 3- åpen for biler, stengt for fotgjengere) en gang kommet på tredje fase, kommer tilbake til den første.

her går det ::

(kommentarer på portugisisk)

/* */ void setup() { //declaraçao de variaveis globais. int vermelhoc = 1; int verdec =2; int amareloc = 3; int vermelhop = 4; int verdep = 5; //valor atribuido a variavel botao e definido pela leitura do estado do pino 7: HIGH ou LOW int botao = digitalRead(7); //definiçao do sentido de corrente eletrica. pinMode(vermelhoc, OUTPUT); pinMode(verdec, OUTPUT); pinMode(amareloc, OUTPUT); pinMode(vermelhop, OUTPUT); pinMode(verdep, OUTPUT); pinMode(botao, INPUT); } void loop() { //definiçao de variaveis locais int estadosemaforo == 1; //corpo da funçao que define o sistema de fases if(botao == HIGH;){ estadosemaforo == estadosemaforo 1++; } if( estadosemaforo == 4 ){ estadosemaforo == 1; } if ( estadosemaforo == 1 ){ // semaforo dos carros digitalWrite(vermelhoc, HIGH); digitalWrite(amareloc, LOW); digitalWrite(verdec, LOW); //semaforo de pedestres digitalWrite(vermelhop, LOW); digitalWrite(verdep, HIGH); } if ( estadosemaforo == 2 ){ // semaforo dos carros digitalWrite(vermelhoc, LOW); digitalWrite(amareloc, HIGH); digitalWrite(verdec, LOW); //semaforo de pedestres digitalWrite(vermelhop, HIGH); digitalWrite(verdep, LOW); } if ( estadosemaforo == 3 ){ // semaforo dos carros digitalWrite(vermelhoc, LOW); digitalWrite(amareloc, LOW); digitalWrite(verdec, HIGH); //semaforo de pedestres digitalWrite(vermelhop, HIGH); digitalWrite(verdep, LOW); } } 

Kommentarer

  • du bruker disse to variantene for variabeltildelinger … int vermelhoc = 1; og int estadosemaforo == 1; …. en av disse er ikke riktig syntaks …. vær så snill å undersøke hvordan du tilordner variable verdier

Svar

Du har mange grunnleggende syntaksfeil i koden din. Du trenger virkelig å lese mer og studere grunnleggende C og C ++ før du går videre.

Her er noen eksempler på hva jeg fant:

  • Du har semikolon der det ikke burde være
  • Du blander == og = overalt
  • estadosemaforo == estadosemaforo 1++; gir ikke mening – jeg har ingen anelse om hva du mener der
  • Variabler definert i setup kan bare brukes i setup. Hvis du vil bruke en variabel i flere funksjoner, må den være global.
  • estadosemaforo kan bare være 1 eller 2. Den tilbakestilles til 1 hver gang loop() kjører.
  • Du kan ikke bare forvente å lese en pin en gang og få verdien til å endre seg magisk – du må lese den hver gang tiden du vil vite pin-tilstanden.
  • Du leser fra en digital pin og bruker deretter resultatene av den lese til å konfigurere en pin – og forventer at den skal gjøre noe nyttig.

Kommentarer

  • i ' Jeg begynner virkelig der, men tusen takk. hadde ikke ' ikke engang tenkt på disse feilene.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *