Kimlorentz Skrevet 8. juni 2014 Del Skrevet 8. juni 2014 Jeg har klart å lage 2 koder. Nr 1 - Styring av led av/på med samme knapp og Nr 2 - Styring av led av/på ved bruk av serial port Det jeg trenger hjelp til nå er å sette disse to sammen, men andre ord kunne styre led med både bryter og kode via serial port. Noen som kan hjelpe meg der? Kode for led av og på med samme knapp: const int LED = 2; const int LED2 = 3; const int BUTTON = 22; const int BUTTONB = 24; boolean lastButton = LOW; boolean lastButtonb = LOW; boolean currentButton = LOW; boolean currentButtonb = LOW; boolean ledOn = false; boolean ledOnb = false; void setup() { Serial.begin(9600); pinMode (LED, OUTPUT); pinMode (LED2, OUTPUT); pinMode (BUTTON, INPUT); pinMode (BUTTONB, INPUT); } boolean debounce(boolean last) { boolean current = digitalRead(BUTTON); if (last != current) { delay(5); current = digitalRead(BUTTON); } return current; } boolean debounceb(boolean lastb) { boolean currentb = digitalRead(BUTTONB); if (lastb != currentb) { delay(5); currentb = digitalRead(BUTTONB); } return currentb; } void loop() { currentButton = debounce(lastButton); if (lastButton == LOW && currentButton == HIGH) { ledOn = !ledOn; } lastButton = currentButton; digitalWrite(LED, ledOn); currentButtonb = debounceb(lastButtonb); if (lastButtonb == LOW && currentButtonb == HIGH) { ledOnb = !ledOnb; } lastButtonb = currentButtonb; digitalWrite(LED2, ledOnb); } Kode for styring av led via serial port: int LED= 2; int LED2 = 3; int Data = 0; void setup() { pinMode(LED, OUTPUT); pinMode(LED2, OUTPUT); Serial.begin(9600); digitalWrite(LED, LOW); digitalWrite(LED2, LOW); } void loop() { Data=Serial.read(); if (Data==0x31) { digitalWrite(LED,HIGH); delay(10); Serial.println("LED pa"); } else if (Data==0x32) { digitalWrite(LED, LOW); delay(10); Serial.println("LED av"); } if (Data==0x33) { digitalWrite(LED2,HIGH); delay(10); Serial.println("LED2 pa"); } else if (Data==0x34) { digitalWrite(LED2, LOW); delay(10); Serial.println("LED2 av"); } } Lenke til kommentar
Kimlorentz Skrevet 14. juni 2014 Forfatter Del Skrevet 14. juni 2014 (endret) Da har jeg kommet litt lengre. Fikk til styring via pc og knapper samtidig, eneste som mangler nå er å hindre systemet til å resette sine instillinger når serial com blir linket inn. Øverste knapp slår på/av rød. Nederste knapp slår på/av grønn. CODE: Tastatur kode til Arduino, 1 = LED 1 på 2 = LED 1 av 3 = LED 2 på 4 = LED 2 av const int LED1 = 2; const int LED2 = 3; const int BUTTONA = 22; const int BUTTONB = 24; boolean lastButtonA = LOW; boolean lastButtonB = LOW; boolean currentButtonA = LOW; boolean currentButtonB = LOW; boolean ledOna = false; boolean ledOnb = false; int Data = 0; void setup() { Serial.begin(9600); pinMode (LED1, OUTPUT); pinMode (LED2, OUTPUT); pinMode (BUTTONA, INPUT); pinMode (BUTTONB, INPUT); } boolean debounce(boolean last) { boolean currenta = digitalRead(BUTTONA); if (last != currenta) { delay(5); currenta = digitalRead(BUTTONA); } return currenta; } boolean debounceb(boolean lastb) { boolean currentb = digitalRead(BUTTONB); if (lastb != currentb) { delay(5); currentb = digitalRead(BUTTONB); } return currentb; } void loop() { Serial.println("\nLED 1\tLED 2"); Serial.print(ledOna); Serial.print("\t"); Serial.println(ledOnb); Data=Serial.read(); if (Data==0x31) { ledOna = true; } else if (Data==0x32) { ledOna = false; } if (Data==0x33) { ledOnb = true; } else if (Data==0x34) { ledOnb = false; } currentButtonA = debounce(lastButtonA); if (lastButtonA == LOW && currentButtonA == HIGH) { ledOna = !ledOna; } lastButtonA = currentButtonA; digitalWrite(LED1, ledOna); currentButtonB = debounceb(lastButtonB); if (lastButtonB == LOW && currentButtonB == HIGH) { ledOnb = !ledOnb; } lastButtonB = currentButtonB; digitalWrite(LED2, ledOnb); } Endret 14. juni 2014 av Kimlorentz Lenke til kommentar
Kimlorentz Skrevet 27. juni 2014 Forfatter Del Skrevet 27. juni 2014 For å forhindre reset ved Serial com start link må man fysisk inn og gjøre ting med kortet, derfor vil jeg heller legge inn en kode man sender før man slår av serial com. Link til prosjektet og andre prosjekter kan dere finne her, Kim Lorentz Prosjekter PS!! Det vil komme GPS prosjekter med GSM på sia om litt. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå