Components and supplies
1
Resistor 10k ohm
1
Arduino UNO
1
Jumper wires (generic)
1
5 mm LED: Red
1
Buzzer
Apps and platforms
1
Arduino IDE
Project description
Code
The code
arduino
All of the void parts are made to make other commands easier, you just call them in later in the code.
1String morse; 2char slovo; 3const int ton = 2250; 4 5//morse - pomoc: 6void crta(){ 7 tone(9, ton); 8 digitalWrite(4, HIGH); 9 delay(300); 10} 11void tocka(){ 12 tone(9, ton); 13 digitalWrite(4, HIGH); 14 delay(100); 15} 16void pauza(){ 17 noTone(9); 18 digitalWrite(4, LOW); 19 delay(40); 20} 21void kraj(){ 22 noTone(9); 23 digitalWrite(4, LOW); 24 delay(250); 25} 26 27//abeceda (ENG): 28void a(){ 29 tocka(); 30 pauza(); 31 crta(); 32 kraj(); 33} 34void b(){ 35 crta(); 36 pauza(); 37 tocka(); 38 pauza(); 39 tocka(); 40 pauza(); 41 tocka(); 42 kraj(); 43} 44void c(){ 45 crta(); 46 pauza(); 47 tocka(); 48 pauza(); 49 crta(); 50 pauza(); 51 tocka(); 52 kraj(); 53} 54void d(){ 55 crta(); 56 pauza(); 57 tocka(); 58 pauza(); 59 tocka(); 60 kraj(); 61} 62void e(){ 63 tocka(); 64 kraj(); 65} 66void f(){ 67 tocka(); 68 pauza(); 69 tocka(); 70 pauza(); 71 crta(); 72 pauza(); 73 tocka(); 74 kraj(); 75} 76void g(){ 77 crta(); 78 pauza(); 79 crta(); 80 pauza(); 81 tocka(); 82 kraj(); 83} 84void h(){ 85 tocka(); 86 pauza(); 87 tocka(); 88 pauza(); 89 tocka(); 90 pauza(); 91 tocka(); 92 kraj(); 93} 94void i(){ 95 tocka(); 96 pauza(); 97 tocka(); 98 kraj(); 99} 100void j(){ 101 tocka(); 102 pauza(); 103 crta(); 104 pauza(); 105 crta(); 106 pauza(); 107 crta(); 108 kraj(); 109} 110void k(){ 111 crta(); 112 pauza(); 113 tocka(); 114 pauza(); 115 crta(); 116 kraj(); 117} 118void l(){ 119 tocka(); 120 pauza(); 121 crta(); 122 pauza(); 123 tocka(); 124 pauza(); 125 tocka(); 126 kraj(); 127} 128void m(){ 129 crta(); 130 pauza(); 131 crta(); 132 kraj(); 133} 134void n(){ 135 crta(); 136 pauza(); 137 tocka(); 138 kraj(); 139} 140void o(){ 141 crta(); 142 pauza(); 143 crta(); 144 pauza(); 145 crta(); 146 kraj(); 147} 148void p(){ 149 tocka(); 150 pauza(); 151 crta(); 152 pauza(); 153 crta(); 154 pauza(); 155 tocka(); 156 kraj(); 157} 158void q(){ 159 crta(); 160 pauza(); 161 crta(); 162 pauza(); 163 tocka(); 164 pauza(); 165 crta(); 166 kraj(); 167} 168void r(){ 169 tocka(); 170 pauza(); 171 crta(); 172 pauza(); 173 tocka(); 174 kraj(); 175} 176void s(){ 177 tocka(); 178 pauza(); 179 tocka(); 180 pauza(); 181 tocka(); 182 kraj(); 183} 184void t(){ 185 crta(); 186 kraj(); 187} 188void u(){ 189 tocka(); 190 pauza(); 191 tocka(); 192 pauza(); 193 crta(); 194 kraj(); 195} 196void v(){ 197 tocka(); 198 pauza(); 199 tocka(); 200 pauza(); 201 tocka(); 202 pauza(); 203 crta(); 204 kraj(); 205} 206void w(){ 207 tocka(); 208 pauza(); 209 crta(); 210 pauza(); 211 crta(); 212 kraj(); 213} 214void x(){ 215 crta(); 216 pauza(); 217 tocka(); 218 pauza(); 219 tocka(); 220 pauza(); 221 crta(); 222 kraj(); 223} 224void y(){ 225 crta(); 226 pauza(); 227 tocka(); 228 pauza(); 229 crta(); 230 pauza(); 231 crta(); 232 kraj(); 233} 234void z(){ 235 crta(); 236 pauza(); 237 crta(); 238 pauza(); 239 tocka(); 240 pauza(); 241 tocka(); 242 kraj(); 243} 244 245void poruka_u_morse(){ 246 if(slovo == 'a' || slovo == 'A'){ 247 Serial.print(".- "); 248 a(); 249 } 250 if(slovo == 'b' || slovo == 'B'){ 251 Serial.print("-... "); 252 b(); 253 } 254 if(slovo == 'c' || slovo == 'C'){ 255 Serial.print("-.-. "); 256 c(); 257 } 258 if(slovo == 'd' || slovo == 'D'){ 259 Serial.print("-.. "); 260 d(); 261 } 262 if(slovo == 'e' || slovo == 'E'){ 263 Serial.print(". "); 264 e(); 265 } 266 if(slovo == 'f' || slovo == 'F'){ 267 Serial.print("..-. "); 268 f(); 269 } 270 if(slovo == 'g' || slovo == 'G'){ 271 Serial.print("--. "); 272 g(); 273 } 274 if(slovo == 'h' || slovo == 'H'){ 275 Serial.print(".... "); 276 h(); 277 } 278 if(slovo == 'i' || slovo == 'I'){ 279 Serial.print(".. "); 280 i(); 281 } 282 if(slovo == 'j' || slovo == 'J'){ 283 Serial.print(".--- "); 284 j(); 285 } 286 if(slovo == 'k' || slovo == 'K'){ 287 Serial.print("-.- "); 288 k(); 289 } 290 if(slovo == 'l' || slovo == 'L'){ 291 Serial.print(".-.. "); 292 l(); 293 } 294 if(slovo == 'm' || slovo == 'M'){ 295 Serial.print("-- "); 296 m(); 297 } 298 if(slovo == 'n' || slovo == 'N'){ 299 Serial.print("-. "); 300 n(); 301 } 302 if(slovo == 'o' || slovo == 'O'){ 303 Serial.print("--- "); 304 o(); 305 } 306 if(slovo == 'p' || slovo == 'P'){ 307 Serial.print(".--. "); 308 p(); 309 } 310 if(slovo == 'q' || slovo == 'Q'){ 311 Serial.print("--.- "); 312 q(); 313 } 314 if(slovo == 'r' || slovo == 'R'){ 315 Serial.print(".-. "); 316 r(); 317 } 318 if(slovo == 's' || slovo == 'S'){ 319 Serial.print("... "); 320 s(); 321 } 322 if(slovo == 't' || slovo == 'T'){ 323 Serial.print("- "); 324 t(); 325 } 326 if(slovo == 'u' || slovo == 'U'){ 327 Serial.print("..- "); 328 u(); 329 } 330 if(slovo == 'v' || slovo == 'V'){ 331 Serial.print("...- "); 332 v(); 333 } 334 if(slovo == 'w' || slovo == 'W'){ 335 Serial.print(".-- "); 336 w(); 337 } 338 if(slovo == 'x' || slovo == 'X'){ 339 Serial.print("-..- "); 340 x(); 341 } 342 if(slovo == 'y' || slovo == 'Y'){ 343 Serial.print("-.-- "); 344 y(); 345 } 346 if(slovo == 'z' || slovo == 'Z'){ 347 Serial.print("--.. "); 348 z(); 349 } 350 351 if(slovo == ' '){ 352 Serial.print("/ "); 353 delay(550); 354 } 355} 356 357 358void setup() { 359 pinMode(4, OUTPUT); //LED 360 pinMode(9, OUTPUT); //spiker 361 Serial.setTimeout(25); 362 Serial.begin(9600); 363} 364 365void loop() { 366 while(Serial.available()){ 367 368 String poruka = Serial.readString(); 369 Serial.print("\ 370Poruka: "); 371 Serial.println(poruka); 372 373 Serial.print("Morse: \ 374"); 375 for(int i=0; i<poruka.length(); i++){ 376 slovo = poruka.charAt(i); 377 poruka_u_morse(); 378 } 379 380 if(i>poruka.length()) Serial.print("\ 381"); 382 } 383}
The code
arduino
All of the void parts are made to make other commands easier, you just call them in later in the code.
1String morse; 2char slovo; 3const int ton = 2250; 4 5//morse - 6 pomoc: 7void crta(){ 8 tone(9, ton); 9 digitalWrite(4, HIGH); 10 delay(300); 11} 12void 13 tocka(){ 14 tone(9, ton); 15 digitalWrite(4, HIGH); 16 delay(100); 17} 18void 19 pauza(){ 20 noTone(9); 21 digitalWrite(4, LOW); 22 delay(40); 23} 24void 25 kraj(){ 26 noTone(9); 27 digitalWrite(4, LOW); 28 delay(250); 29} 30 31//abeceda 32 (ENG): 33void a(){ 34 tocka(); 35 pauza(); 36 crta(); 37 kraj(); 38} 39void 40 b(){ 41 crta(); 42 pauza(); 43 tocka(); 44 pauza(); 45 tocka(); 46 pauza(); 47 48 tocka(); 49 kraj(); 50} 51void c(){ 52 crta(); 53 pauza(); 54 tocka(); 55 56 pauza(); 57 crta(); 58 pauza(); 59 tocka(); 60 kraj(); 61} 62void d(){ 63 64 crta(); 65 pauza(); 66 tocka(); 67 pauza(); 68 tocka(); 69 kraj(); 70} 71void 72 e(){ 73 tocka(); 74 kraj(); 75} 76void f(){ 77 tocka(); 78 pauza(); 79 80 tocka(); 81 pauza(); 82 crta(); 83 pauza(); 84 tocka(); 85 kraj(); 86} 87void 88 g(){ 89 crta(); 90 pauza(); 91 crta(); 92 pauza(); 93 tocka(); 94 kraj(); 95} 96void 97 h(){ 98 tocka(); 99 pauza(); 100 tocka(); 101 pauza(); 102 tocka(); 103 pauza(); 104 105 tocka(); 106 kraj(); 107} 108void i(){ 109 tocka(); 110 pauza(); 111 tocka(); 112 113 kraj(); 114} 115void j(){ 116 tocka(); 117 pauza(); 118 crta(); 119 pauza(); 120 121 crta(); 122 pauza(); 123 crta(); 124 kraj(); 125} 126void k(){ 127 crta(); 128 129 pauza(); 130 tocka(); 131 pauza(); 132 crta(); 133 kraj(); 134} 135void l(){ 136 137 tocka(); 138 pauza(); 139 crta(); 140 pauza(); 141 tocka(); 142 pauza(); 143 144 tocka(); 145 kraj(); 146} 147void m(){ 148 crta(); 149 pauza(); 150 crta(); 151 152 kraj(); 153} 154void n(){ 155 crta(); 156 pauza(); 157 tocka(); 158 kraj(); 159} 160void 161 o(){ 162 crta(); 163 pauza(); 164 crta(); 165 pauza(); 166 crta(); 167 kraj(); 168} 169void 170 p(){ 171 tocka(); 172 pauza(); 173 crta(); 174 pauza(); 175 crta(); 176 pauza(); 177 178 tocka(); 179 kraj(); 180} 181void q(){ 182 crta(); 183 pauza(); 184 crta(); 185 186 pauza(); 187 tocka(); 188 pauza(); 189 crta(); 190 kraj(); 191} 192void r(){ 193 194 tocka(); 195 pauza(); 196 crta(); 197 pauza(); 198 tocka(); 199 kraj(); 200} 201void 202 s(){ 203 tocka(); 204 pauza(); 205 tocka(); 206 pauza(); 207 tocka(); 208 kraj(); 209} 210void 211 t(){ 212 crta(); 213 kraj(); 214} 215void u(){ 216 tocka(); 217 pauza(); 218 219 tocka(); 220 pauza(); 221 crta(); 222 kraj(); 223} 224void v(){ 225 tocka(); 226 227 pauza(); 228 tocka(); 229 pauza(); 230 tocka(); 231 pauza(); 232 crta(); 233 234 kraj(); 235} 236void w(){ 237 tocka(); 238 pauza(); 239 crta(); 240 pauza(); 241 242 crta(); 243 kraj(); 244} 245void x(){ 246 crta(); 247 pauza(); 248 tocka(); 249 250 pauza(); 251 tocka(); 252 pauza(); 253 crta(); 254 kraj(); 255} 256void y(){ 257 258 crta(); 259 pauza(); 260 tocka(); 261 pauza(); 262 crta(); 263 pauza(); 264 265 crta(); 266 kraj(); 267} 268void z(){ 269 crta(); 270 pauza(); 271 crta(); 272 273 pauza(); 274 tocka(); 275 pauza(); 276 tocka(); 277 kraj(); 278} 279 280void 281 poruka_u_morse(){ 282 if(slovo == 'a' || slovo == 'A'){ 283 Serial.print(".- 284 "); 285 a(); 286 } 287 if(slovo == 'b' || slovo == 'B'){ 288 Serial.print("-... 289 "); 290 b(); 291 } 292 if(slovo == 'c' || slovo == 'C'){ 293 Serial.print("-.-. 294 "); 295 c(); 296 } 297 if(slovo == 'd' || slovo == 'D'){ 298 Serial.print("-.. 299 "); 300 d(); 301 } 302 if(slovo == 'e' || slovo == 'E'){ 303 Serial.print(". 304 "); 305 e(); 306 } 307 if(slovo == 'f' || slovo == 'F'){ 308 Serial.print("..-. 309 "); 310 f(); 311 } 312 if(slovo == 'g' || slovo == 'G'){ 313 Serial.print("--. 314 "); 315 g(); 316 } 317 if(slovo == 'h' || slovo == 'H'){ 318 Serial.print(".... 319 "); 320 h(); 321 } 322 if(slovo == 'i' || slovo == 'I'){ 323 Serial.print(".. 324 "); 325 i(); 326 } 327 if(slovo == 'j' || slovo == 'J'){ 328 Serial.print(".--- 329 "); 330 j(); 331 } 332 if(slovo == 'k' || slovo == 'K'){ 333 Serial.print("-.- 334 "); 335 k(); 336 } 337 if(slovo == 'l' || slovo == 'L'){ 338 Serial.print(".-.. 339 "); 340 l(); 341 } 342 if(slovo == 'm' || slovo == 'M'){ 343 Serial.print("-- 344 "); 345 m(); 346 } 347 if(slovo == 'n' || slovo == 'N'){ 348 Serial.print("-. 349 "); 350 n(); 351 } 352 if(slovo == 'o' || slovo == 'O'){ 353 Serial.print("--- 354 "); 355 o(); 356 } 357 if(slovo == 'p' || slovo == 'P'){ 358 Serial.print(".--. 359 "); 360 p(); 361 } 362 if(slovo == 'q' || slovo == 'Q'){ 363 Serial.print("--.- 364 "); 365 q(); 366 } 367 if(slovo == 'r' || slovo == 'R'){ 368 Serial.print(".-. 369 "); 370 r(); 371 } 372 if(slovo == 's' || slovo == 'S'){ 373 Serial.print("... 374 "); 375 s(); 376 } 377 if(slovo == 't' || slovo == 'T'){ 378 Serial.print("- 379 "); 380 t(); 381 } 382 if(slovo == 'u' || slovo == 'U'){ 383 Serial.print("..- 384 "); 385 u(); 386 } 387 if(slovo == 'v' || slovo == 'V'){ 388 Serial.print("...- 389 "); 390 v(); 391 } 392 if(slovo == 'w' || slovo == 'W'){ 393 Serial.print(".-- 394 "); 395 w(); 396 } 397 if(slovo == 'x' || slovo == 'X'){ 398 Serial.print("-..- 399 "); 400 x(); 401 } 402 if(slovo == 'y' || slovo == 'Y'){ 403 Serial.print("-.-- 404 "); 405 y(); 406 } 407 if(slovo == 'z' || slovo == 'Z'){ 408 Serial.print("--.. 409 "); 410 z(); 411 } 412 413 if(slovo == ' '){ 414 Serial.print("/ "); 415 416 delay(550); 417 } 418} 419 420 421void setup() { 422 pinMode(4, OUTPUT); //LED 423 424 pinMode(9, OUTPUT); //spiker 425 Serial.setTimeout(25); 426 Serial.begin(9600); 427} 428 429void 430 loop() { 431 while(Serial.available()){ 432 433 String poruka = Serial.readString(); 434 435 Serial.print("\ 436Poruka: "); 437 Serial.println(poruka); 438 439 Serial.print("Morse: 440 \ 441"); 442 for(int i=0; i<poruka.length(); i++){ 443 slovo = poruka.charAt(i); 444 445 poruka_u_morse(); 446 } 447 448 if(i>poruka.length()) Serial.print("\ 449"); 450 451 } 452}
Downloadable files
Schematic
Schematic
Comments
Only logged in users can leave comments