Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed 4DGL-uLCD-SE
Fork of morseCode_1 by
Header_file.h@3:6e52b66c5a0c, 2018-04-18 (annotated)
- Committer:
- Jeco13
- Date:
- Wed Apr 18 01:16:06 2018 +0000
- Revision:
- 3:6e52b66c5a0c
- Parent:
- 2:d60577c26a58
- Child:
- 4:62c590826ddb
Text_to_morse function written
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jeco13 | 2:d60577c26a58 | 1 | #include "mbed.h" |
Jeco13 | 2:d60577c26a58 | 2 | |
Jeco13 | 2:d60577c26a58 | 3 | |
Jeco13 | 2:d60577c26a58 | 4 | AnalogOut speaker(p18); |
Jeco13 | 2:d60577c26a58 | 5 | DigitalOut led(p8); |
Jeco13 | 2:d60577c26a58 | 6 | |
Jeco13 | 2:d60577c26a58 | 7 | void dot(){ |
Jeco13 | 2:d60577c26a58 | 8 | //turn on speaker for 0.5s. |
Jeco13 | 2:d60577c26a58 | 9 | //turn on led for 0.5s. |
Jeco13 | 2:d60577c26a58 | 10 | //turn off speaker & led. |
Jeco13 | 3:6e52b66c5a0c | 11 | wait(0.5); |
Jeco13 | 2:d60577c26a58 | 12 | } |
Jeco13 | 2:d60577c26a58 | 13 | |
Jeco13 | 2:d60577c26a58 | 14 | void dash(){ |
Jeco13 | 3:6e52b66c5a0c | 15 | //turn on speaker for 1s. |
Jeco13 | 3:6e52b66c5a0c | 16 | //turn on led for 1s. |
Jeco13 | 2:d60577c26a58 | 17 | //turn off speaker & led. |
Jeco13 | 3:6e52b66c5a0c | 18 | wait(0.5); |
Jeco13 | 3:6e52b66c5a0c | 19 | } |
Jeco13 | 3:6e52b66c5a0c | 20 | |
Jeco13 | 3:6e52b66c5a0c | 21 | void Text_to_morse(char input_char){ //function takes in characters at a time. call dot & dash appropriately for detected char |
Jeco13 | 3:6e52b66c5a0c | 22 | //int w = 0.5; //wait duration in-between led blinks and speaker clicks |
Jeco13 | 3:6e52b66c5a0c | 23 | if(input_char == 'a' || 'A'){ |
Jeco13 | 3:6e52b66c5a0c | 24 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 25 | //wait(w); //wait 0.5s in between |
Jeco13 | 3:6e52b66c5a0c | 26 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 27 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 28 | } |
Jeco13 | 3:6e52b66c5a0c | 29 | else if(input_char == 'b' || 'B'){ |
Jeco13 | 3:6e52b66c5a0c | 30 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 31 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 32 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 33 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 34 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 35 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 36 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 37 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 38 | } |
Jeco13 | 3:6e52b66c5a0c | 39 | else if(input_char == 'c'||'C'){ |
Jeco13 | 3:6e52b66c5a0c | 40 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 41 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 42 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 43 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 44 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 45 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 46 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 47 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 48 | } |
Jeco13 | 3:6e52b66c5a0c | 49 | else if(input_char == 'd'||'D'){ |
Jeco13 | 3:6e52b66c5a0c | 50 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 51 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 52 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 53 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 54 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 55 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 56 | }else if(input_char == 'e'||'E'){ |
Jeco13 | 3:6e52b66c5a0c | 57 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 58 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 59 | } |
Jeco13 | 3:6e52b66c5a0c | 60 | else if(input_char == 'f'||'F'){ |
Jeco13 | 3:6e52b66c5a0c | 61 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 62 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 63 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 64 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 65 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 66 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 67 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 68 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 69 | } |
Jeco13 | 3:6e52b66c5a0c | 70 | else if(input_char == 'g'||'G'){ |
Jeco13 | 3:6e52b66c5a0c | 71 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 72 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 73 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 74 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 75 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 76 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 77 | } |
Jeco13 | 3:6e52b66c5a0c | 78 | else if(input_char == 'h'||'H'){ |
Jeco13 | 3:6e52b66c5a0c | 79 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 80 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 81 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 82 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 83 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 84 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 85 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 86 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 87 | } |
Jeco13 | 3:6e52b66c5a0c | 88 | else if(input_char == 'i'||'I'){ |
Jeco13 | 3:6e52b66c5a0c | 89 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 90 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 91 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 92 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 93 | } |
Jeco13 | 3:6e52b66c5a0c | 94 | else if(input_char == 'j'||'J'){ |
Jeco13 | 3:6e52b66c5a0c | 95 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 96 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 97 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 98 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 99 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 100 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 101 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 102 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 103 | } |
Jeco13 | 3:6e52b66c5a0c | 104 | else if(input_char == 'k'||'K'){ |
Jeco13 | 3:6e52b66c5a0c | 105 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 106 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 107 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 108 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 109 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 110 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 111 | } |
Jeco13 | 3:6e52b66c5a0c | 112 | else if(input_char == 'l'||'L'){ |
Jeco13 | 3:6e52b66c5a0c | 113 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 114 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 115 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 116 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 117 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 118 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 119 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 120 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 121 | } |
Jeco13 | 3:6e52b66c5a0c | 122 | else if(input_char == 'm'||'M'){ |
Jeco13 | 3:6e52b66c5a0c | 123 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 124 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 125 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 126 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 127 | } |
Jeco13 | 3:6e52b66c5a0c | 128 | else if(input_char == 'n'||'N'){ |
Jeco13 | 3:6e52b66c5a0c | 129 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 130 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 131 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 132 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 133 | } |
Jeco13 | 3:6e52b66c5a0c | 134 | else if(input_char == 'o'||'O'){ |
Jeco13 | 3:6e52b66c5a0c | 135 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 136 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 137 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 138 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 139 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 140 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 141 | } |
Jeco13 | 3:6e52b66c5a0c | 142 | else if(input_char == 'p'||'P'){ |
Jeco13 | 3:6e52b66c5a0c | 143 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 144 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 145 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 146 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 147 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 148 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 149 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 150 | //wait(w); |
Jeco13 | 3:6e52b66c5a0c | 151 | } |
Jeco13 | 3:6e52b66c5a0c | 152 | else if(input_char == 'q'||'Q'){ |
Jeco13 | 3:6e52b66c5a0c | 153 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 154 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 155 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 156 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 157 | } |
Jeco13 | 3:6e52b66c5a0c | 158 | else if(input_char == 'r'||'R'){ |
Jeco13 | 3:6e52b66c5a0c | 159 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 160 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 161 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 162 | } |
Jeco13 | 3:6e52b66c5a0c | 163 | else if(input_char == 's'||'S'){ |
Jeco13 | 3:6e52b66c5a0c | 164 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 165 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 166 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 167 | } |
Jeco13 | 3:6e52b66c5a0c | 168 | else if(input_char == 't'||'T'){ |
Jeco13 | 3:6e52b66c5a0c | 169 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 170 | } |
Jeco13 | 3:6e52b66c5a0c | 171 | else if(input_char == 'u'||'U'){ |
Jeco13 | 3:6e52b66c5a0c | 172 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 173 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 174 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 175 | } |
Jeco13 | 3:6e52b66c5a0c | 176 | else if(input_char == 'v'||'V'){ |
Jeco13 | 3:6e52b66c5a0c | 177 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 178 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 179 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 180 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 181 | } |
Jeco13 | 3:6e52b66c5a0c | 182 | else if(input_char == 'w'||'W'){ |
Jeco13 | 3:6e52b66c5a0c | 183 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 184 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 185 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 186 | } |
Jeco13 | 3:6e52b66c5a0c | 187 | else if(input_char == 'x'||'X'){ |
Jeco13 | 3:6e52b66c5a0c | 188 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 189 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 190 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 191 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 192 | } |
Jeco13 | 3:6e52b66c5a0c | 193 | else if(input_char == 'y'||'Y'){ |
Jeco13 | 3:6e52b66c5a0c | 194 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 195 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 196 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 197 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 198 | } |
Jeco13 | 3:6e52b66c5a0c | 199 | else if(input_char == 'z'||'Z'){ |
Jeco13 | 3:6e52b66c5a0c | 200 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 201 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 202 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 203 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 204 | } |
Jeco13 | 3:6e52b66c5a0c | 205 | else if(input_char == '0'){ |
Jeco13 | 3:6e52b66c5a0c | 206 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 207 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 208 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 209 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 210 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 211 | } |
Jeco13 | 3:6e52b66c5a0c | 212 | else if(input_char == '1'){ |
Jeco13 | 3:6e52b66c5a0c | 213 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 214 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 215 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 216 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 217 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 218 | } |
Jeco13 | 3:6e52b66c5a0c | 219 | else if(input_char == '2'){ |
Jeco13 | 3:6e52b66c5a0c | 220 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 221 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 222 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 223 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 224 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 225 | } |
Jeco13 | 3:6e52b66c5a0c | 226 | else if(input_char == '3'){ |
Jeco13 | 3:6e52b66c5a0c | 227 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 228 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 229 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 230 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 231 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 232 | } |
Jeco13 | 3:6e52b66c5a0c | 233 | else if(input_char == '4'){ |
Jeco13 | 3:6e52b66c5a0c | 234 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 235 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 236 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 237 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 238 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 239 | } |
Jeco13 | 3:6e52b66c5a0c | 240 | else if(input_char == '5'){ |
Jeco13 | 3:6e52b66c5a0c | 241 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 242 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 243 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 244 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 245 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 246 | } |
Jeco13 | 3:6e52b66c5a0c | 247 | else if(input_char == '6'){ |
Jeco13 | 3:6e52b66c5a0c | 248 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 249 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 250 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 251 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 252 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 253 | } |
Jeco13 | 3:6e52b66c5a0c | 254 | else if(input_char == '7'){ |
Jeco13 | 3:6e52b66c5a0c | 255 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 256 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 257 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 258 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 259 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 260 | } |
Jeco13 | 3:6e52b66c5a0c | 261 | else if(input_char == '8'){ |
Jeco13 | 3:6e52b66c5a0c | 262 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 263 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 264 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 265 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 266 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 267 | } |
Jeco13 | 3:6e52b66c5a0c | 268 | else if(input_char == '9'){ |
Jeco13 | 3:6e52b66c5a0c | 269 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 270 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 271 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 272 | dash(); |
Jeco13 | 3:6e52b66c5a0c | 273 | dot(); |
Jeco13 | 3:6e52b66c5a0c | 274 | } |
Jeco13 | 3:6e52b66c5a0c | 275 | else{wait(1);}//error character, or space character. |
Jeco13 | 2:d60577c26a58 | 276 | } |