PRAMOD BHAKTA
/
morsecode
Morse Code is generated when user enters a character.
main.cpp@0:2a5815580a95, 2017-03-05 (annotated)
- Committer:
- pb300396
- Date:
- Sun Mar 05 15:19:48 2017 +0000
- Revision:
- 0:2a5815580a95
morse generated;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pb300396 | 0:2a5815580a95 | 1 | #include "mbed.h" |
pb300396 | 0:2a5815580a95 | 2 | #include"beep.h" |
pb300396 | 0:2a5815580a95 | 3 | |
pb300396 | 0:2a5815580a95 | 4 | int morse[26] = {21,1112,1212,112,1,1211,122,1111,11,2221, |
pb300396 | 0:2a5815580a95 | 5 | 212,1121,22,12,222,1221,2122,121,111,2, |
pb300396 | 0:2a5815580a95 | 6 | 211,2111,221,2112,2212,1122}; |
pb300396 | 0:2a5815580a95 | 7 | |
pb300396 | 0:2a5815580a95 | 8 | DigitalOut buzzer(PTB0); |
pb300396 | 0:2a5815580a95 | 9 | //DigitalOut myled(LED1); |
pb300396 | 0:2a5815580a95 | 10 | /*DigitalIn gnd(PTB2); |
pb300396 | 0:2a5815580a95 | 11 | DigitalOut zero(PTC1); |
pb300396 | 0:2a5815580a95 | 12 | DigitalOut one(PTC2);*/ |
pb300396 | 0:2a5815580a95 | 13 | Serial pc(USBTX,USBRX); |
pb300396 | 0:2a5815580a95 | 14 | |
pb300396 | 0:2a5815580a95 | 15 | int main(){ |
pb300396 | 0:2a5815580a95 | 16 | int alpha_input; |
pb300396 | 0:2a5815580a95 | 17 | int temp,c,t; |
pb300396 | 0:2a5815580a95 | 18 | pc.printf("Please enter the letter to hear morse \n"); |
pb300396 | 0:2a5815580a95 | 19 | |
pb300396 | 0:2a5815580a95 | 20 | while(1){ |
pb300396 | 0:2a5815580a95 | 21 | if(pc.readable()){ |
pb300396 | 0:2a5815580a95 | 22 | alpha_input = pc.getc(); |
pb300396 | 0:2a5815580a95 | 23 | pc.putc(alpha_input); |
pb300396 | 0:2a5815580a95 | 24 | pc.printf("\n yo %d : ",(int)alpha_input); |
pb300396 | 0:2a5815580a95 | 25 | if(alpha_input<123 && alpha_input>96){ |
pb300396 | 0:2a5815580a95 | 26 | alpha_input=alpha_input - 97; |
pb300396 | 0:2a5815580a95 | 27 | } |
pb300396 | 0:2a5815580a95 | 28 | |
pb300396 | 0:2a5815580a95 | 29 | else if(alpha_input<91 &&alpha_input>64){ |
pb300396 | 0:2a5815580a95 | 30 | alpha_input=alpha_input-65; |
pb300396 | 0:2a5815580a95 | 31 | } |
pb300396 | 0:2a5815580a95 | 32 | |
pb300396 | 0:2a5815580a95 | 33 | else{ |
pb300396 | 0:2a5815580a95 | 34 | pc.printf("Invalid character\n"); |
pb300396 | 0:2a5815580a95 | 35 | |
pb300396 | 0:2a5815580a95 | 36 | } |
pb300396 | 0:2a5815580a95 | 37 | |
pb300396 | 0:2a5815580a95 | 38 | c=alpha_input; |
pb300396 | 0:2a5815580a95 | 39 | |
pb300396 | 0:2a5815580a95 | 40 | if(c>=0 && c<26) |
pb300396 | 0:2a5815580a95 | 41 | { |
pb300396 | 0:2a5815580a95 | 42 | temp = morse[c]; |
pb300396 | 0:2a5815580a95 | 43 | while(temp!=0){ |
pb300396 | 0:2a5815580a95 | 44 | t=temp%10; |
pb300396 | 0:2a5815580a95 | 45 | temp=temp/10; |
pb300396 | 0:2a5815580a95 | 46 | if(t==1){ |
pb300396 | 0:2a5815580a95 | 47 | buzzer=1; |
pb300396 | 0:2a5815580a95 | 48 | wait(0.1); |
pb300396 | 0:2a5815580a95 | 49 | buzzer=0; |
pb300396 | 0:2a5815580a95 | 50 | pc.putc('.'); |
pb300396 | 0:2a5815580a95 | 51 | } |
pb300396 | 0:2a5815580a95 | 52 | |
pb300396 | 0:2a5815580a95 | 53 | else if(t==2){ |
pb300396 | 0:2a5815580a95 | 54 | buzzer=1; |
pb300396 | 0:2a5815580a95 | 55 | wait(0.25); |
pb300396 | 0:2a5815580a95 | 56 | buzzer=0; |
pb300396 | 0:2a5815580a95 | 57 | pc.putc('-'); |
pb300396 | 0:2a5815580a95 | 58 | } |
pb300396 | 0:2a5815580a95 | 59 | wait(0.2); |
pb300396 | 0:2a5815580a95 | 60 | } |
pb300396 | 0:2a5815580a95 | 61 | } |
pb300396 | 0:2a5815580a95 | 62 | wait(0.5); |
pb300396 | 0:2a5815580a95 | 63 | } |
pb300396 | 0:2a5815580a95 | 64 | } |
pb300396 | 0:2a5815580a95 | 65 | } |