hej jeg er ved at lave en morse kode boks til mine spejdere og har fundet noget kode på nettet der dur med lidt ændringer jeg kan bare ikke se mig ud af det sidste jeg har brug for
// From http://arduino.cc/forum/index.php/topic,43903.0.html#10
byte text[] = "Rethingh Gruppen"; // Transmittet text
// Morse code generator for the Arduino
// Transmitted text is placed in the first line
// Tempo sets the speed of a dot etc.
// Morde code was tanken from http://en.wikipedia.org/wiki/Morse_code
// Text is looping and prior to transmitting the active pin blinks rapidly
// Version 1.0, made by Fletcher Chr
int ledPindot = 13; // Active led pin for dot
int ledPindash = 8; // Active led pin for dash
int tempo = 500; // timing of one dot
int knap = 3; // Knap til start
void setup () {
pinMode(ledPindot, OUTPUT);
pinMode(knap, INPUT);
pinMode(ledPindash, OUTPUT);
}
void start(){ // rapid blink at startup
for(int i = 0; i < 50; i++){
digitalWrite(ledPindot, HIGH);
digitalWrite(ledPindash, HIGH);
delay(25);
digitalWrite(ledPindot, LOW);
digitalWrite(ledPindash, LOW);
delay(25);
}
delay(7 * tempo);
}
void dot() { // we need more dots
digitalWrite(ledPindot, HIGH);
delay(1 * tempo);
digitalWrite(ledPindot, LOW);
delay(1 * tempo);
}
void dash() { // a dash and a splash
digitalWrite(ledPindash, HIGH);
delay(3 * tempo);
digitalWrite(ledPindash, LOW);
delay(1 * tempo);
}
void morse(byte letter) { // time to transmit
// Serial.println(letter, DEC);
if (letter == 'a' or letter == 'A') {dot(); dash();}
if (letter == 'b' or letter == 'B') {dash(); dot(); dot(); dot();}
if (letter == 'c' or letter == 'C') {dash(); dot(); dash(); dot();}
if (letter == 'd' or letter == 'D') {dash(); dot(); dot();}
if (letter == 'e' or letter == 'E') {dot();}
if (letter == 'f' or letter == 'F') {dot(); dot(); dash(); dot();}
if (letter == 'g' or letter == 'G') {dash(); dash(); dot();}
if (letter == 'h' or letter == 'H') {dot(); dot(); dot(); dot();}
if (letter == 'i' or letter == 'I') {dot(); dot();}
if (letter == 'j' or letter == 'J') {dot(); dash(); dash(); dash();}
if (letter == 'k' or letter == 'K') {dash(); dot(); dash();}
if (letter == 'l' or letter == 'L') {dot(); dash(); dot(); dot();}
if (letter == 'm' or letter == 'M') {dash(); dash();}
if (letter == 'n' or letter == 'N') {dash(); dot();}
if (letter == 'o' or letter == 'O') {dash(); dash(); dash();}
if (letter == 'p' or letter == 'P') {dot(); dash(); dash(); dot();}
if (letter == 'q' or letter == 'Q') {dash(); dash(); dot(); dash();}
if (letter == 'r' or letter == 'R') {dot(); dash(); dot();}
if (letter == 's' or letter == 'S') {dot(); dot(); dot();}
if (letter == 't' or letter == 'T') {dash();}
if (letter == 'u' or letter == 'U') {dot(); dot(); dash();}
if (letter == 'v' or letter == 'V') {dot(); dot(); dot(); dash();}
if (letter == 'w' or letter == 'W') {dot(); dash(); dash();}
if (letter == 'x' or letter == 'X') {dash(); dot(); dot(); dash();}
if (letter == 'y' or letter == 'Y') {dash(); dot(); dash(); dash();}
if (letter == 'z' or letter == 'Z') {dash(); dash(); dot(); dot();}
if (letter == '1') {dot(); dash(); dash(); dash(); dash();}
if (letter == '2') {dot(); dot(); dash(); dash(); dash();}
if (letter == '3') {dot(); dot(); dot(); dash(); dash();}
if (letter == '4') {dot(); dot(); dot(); dot(); dash();}
if (letter == '5') {dot(); dot(); dot(); dot(); dot();}
if (letter == '6') {dash(); dot(); dot(); dot(); dot();}
if (letter == '7') {dash(); dash(); dot(); dot(); dot();}
if (letter == '8') {dash(); dash(); dash(); dot(); dot();}
if (letter == '9') {dash(); dash(); dash(); dash(); dot();}
if (letter == '0') {dash(); dash(); dash(); dash(); dash();}
if (letter == ' ') {delay(5 * tempo);} // This makes 7 * tempo for space
// and now for some national/special letters
// values were foundt with Serial.print(letter, DEC)
if (letter == 166 or letter == 134) {dot(); dash(); dot(); dash();} // æ/Æ is recognized as 166/134
if (letter == 184 or letter == 152) {dash(); dash();dash();dot();} // ø/Ø is recognized as 184/152
if (letter == 165 or letter == 133) {dot();dash();dash();dot();dash();} // å/Å is recognized as 165/133
delay(2 * tempo); // this makes 3 * tempo for letter end, and 7 * tempo for space
}
void loop () {
start();
for (int i = 0; i < sizeof(text); i++) {
morse(text[i]);
}
}
det jeg har brug for er 3 knapper så man kan have 3 forskeldige af denne
byte text[] = "Rethingh Gruppen"; // Transmittet text
hvor hvis man trykker på den 1 knap morser den første
hvis man trykker på den 2 knap morser den den andet
og ligeledes men den 3 knap, hvis man ikke aktivere nogen af knapperne sker der ikke noget
Håber der er nogen der kan hjælpe mig