MorseCodeGenerator
Dependencies: beep mbed tsi_sensor
main.cpp
- Committer:
- pb300396
- Date:
- 2017-04-02
- Revision:
- 0:feeb8cbe962c
- Child:
- 1:4ae13b5973d7
File content as of revision 0:feeb8cbe962c:
#include "mbed.h" #include "tsi_sensor.h" #include"beep.h" #if defined (TARGET_KL25Z) || defined (TARGET_KL46Z) #define ELEC0 9 #define ELEC1 10 #elif defined (TARGET_KL05Z) #define ELEC0 9 #define ELEC1 8 #else #error TARGET NOT DEFINED #endif int morse[26] = {21,1112,1212,112,1,1211,122,1111,11,2221, 212,1121,22,12,222,1221,2122,121,111,2, 211,2111,221,2112,2212,1122}; int divisor = 10; //set divisor, for blinking speed float slider = -1.0; DigitalOut buzzer(PTB0); Serial pc(USBTX,USBRX); int count =0; int main(){ int alpha_input; int temp,c,t; TSIAnalogSlider tsi(ELEC0, ELEC1, 80); pc.printf("Please enter the letter to hear morse \n"); while(1){ if(pc.readable()){ alpha_input = pc.getc(); pc.putc(alpha_input); pc.printf("\n yo %d : ",(int)alpha_input); if(alpha_input<123 && alpha_input>96){ alpha_input=alpha_input - 97; } else if(alpha_input<91 &&alpha_input>64){ alpha_input=alpha_input-65; } else{ pc.printf("Invalid character\n"); } c=alpha_input; if(c>=0 && c<26) { temp = morse[c]; while(temp!=0){ t=temp%10; temp=temp/10; if(t==1){ buzzer=1; wait(0.1); buzzer=0; pc.putc('.'); } else if(t==2){ buzzer=1; wait(0.25); buzzer=0; pc.putc('-'); } wait(0.2); } } wait(0.5); } if(tsi.readPercentage() != 0) { count = count +1; //check if slider is tuched, if tuched slider != 0 slider = tsi.readPercentage(); //set slidervalue ( / divisor ) if(slider>0 && slider<0.5){ buzzer=1; wait(0.1); buzzer=0; pc.printf("."); } if(slider>0.5 && slider<0.98){ buzzer=1; wait(0.25); buzzer=0; pc.printf("-"); } } } }