Kód: Egész kijelölése
constexpr uint16_t spaceLengthMs = dotLengthMs * 7u;
Kód: Egész kijelölése
if (aChar == 32) {delay(spaceLengthMs);}
Kód: Egész kijelölése
constexpr uint16_t spaceLengthMs = dotLengthMs * 7u;
Kód: Egész kijelölése
if (aChar == 32) {delay(spaceLengthMs);}
Ez nekem furcsa.Így most már a szavakat el lehet választani egymástól, de a szavakon belüli betűket nem.
Kód: Egész kijelölése
//Ez villogja el az adott karektert.
void charToMorse(char aChar) {
uint8_t morseIndex = getIndex(aChar); // Megkérdezzük, hol van a tömbben a kért karakter Morze kódja
if (morseIndex < characterCount) { // Ha a válasz a tömbön belül van, akkor ok, ha nem, akkor nem ismert karakterről van szó.
for (int i = 0; i < morseChars[morseIndex].length; i++) {
digitalWrite(outPin, HIGH); // Bekapcsoljuk a kimenetet
if (((morseChars[morseIndex].pattern >> i) & 1) == 1) { // Megnézzük a pattern i. bit értékét, ha 1, akkor hosszú várakozás kell, mert hosszú (vonás) ideig kell bekapcsolva hagyni a kimenetet
delay(dashLengthMs);
}
else {
delay(dotLengthMs); // A bit 0, rövid várakozás.
}
digitalWrite(outPin, LOW); // Lekapcsoljuk a kimenetet
delay(dotLengthMs); // Jelköz szünet.
}
}
}
Kód: Egész kijelölése
//Ez villogja el az adott karektert.
void charToMorse(char aChar) {
uint8_t morseIndex = getIndex(aChar); // Megkérdezzük, hol van a tömbben a kért karakter Morze kódja
if (morseIndex < characterCount) { // Ha a válasz a tömbön belül van, akkor ok, ha nem, akkor nem ismert karakterről van szó.
for (int i = 0; i < morseChars[morseIndex].length; i++) {
digitalWrite(outPin, HIGH); // Bekapcsoljuk a kimenetet
if (((morseChars[morseIndex].pattern >> i) & 1) == 1) { // Megnézzük a pattern i. bit értékét, ha 1, akkor hosszú várakozás kell, mert hosszú (vonás) ideig kell bekapcsolva hagyni a kimenetet
delay(dashLengthMs);
}
else {
delay(dotLengthMs); // A bit 0, rövid várakozás.
}
digitalWrite(outPin, LOW); // Lekapcsoljuk a kimenetet
if (i == morseChars[morseIndex].length - 1) { // Ha ez volt az utolsó jel a karakteren belül
delay(dashLengthMs); // Karakter köz szünet.
}
else { // Ha ez egy karakteren belüli jel volt
delay(dotLengthMs); // Jelköz szünet.
}
}
}
}