
text-to-speech hello world
Dependencies: emic2 mbed SDFileSystem
main.cpp@2:922b8fe6ff94, 2017-11-04 (annotated)
- Committer:
- nnguyen45
- Date:
- Sat Nov 04 18:31:24 2017 +0000
- Revision:
- 2:922b8fe6ff94
- Parent:
- 0:c1e7994288d7
Starting logic for lesson plan
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nnguyen45 | 0:c1e7994288d7 | 1 | #include "mbed.h" |
nnguyen45 | 2:922b8fe6ff94 | 2 | #include <string> |
nnguyen45 | 2:922b8fe6ff94 | 3 | using namespace std; |
nnguyen45 | 0:c1e7994288d7 | 4 | //Emic 2 Hello Speech World Demo |
nnguyen45 | 2:922b8fe6ff94 | 5 | #include "SDFileSystem.h" |
nnguyen45 | 2:922b8fe6ff94 | 6 | |
nnguyen45 | 2:922b8fe6ff94 | 7 | SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board |
nnguyen45 | 2:922b8fe6ff94 | 8 | |
nnguyen45 | 0:c1e7994288d7 | 9 | DigitalOut myled(LED1); |
nnguyen45 | 0:c1e7994288d7 | 10 | #include "emic2.h" |
nnguyen45 | 2:922b8fe6ff94 | 11 | |
nnguyen45 | 2:922b8fe6ff94 | 12 | emic2 myTTS(p28, p27); //serial RX,TX pins to emic |
nnguyen45 | 2:922b8fe6ff94 | 13 | |
nnguyen45 | 0:c1e7994288d7 | 14 | int main() |
nnguyen45 | 0:c1e7994288d7 | 15 | { |
nnguyen45 | 0:c1e7994288d7 | 16 | myTTS.volume(18); //max volume |
nnguyen45 | 2:922b8fe6ff94 | 17 | string repeat = "Please try again."; |
nnguyen45 | 2:922b8fe6ff94 | 18 | |
nnguyen45 | 2:922b8fe6ff94 | 19 | |
nnguyen45 | 2:922b8fe6ff94 | 20 | |
nnguyen45 | 0:c1e7994288d7 | 21 | while(1) { |
nnguyen45 | 0:c1e7994288d7 | 22 | myled = 1; |
nnguyen45 | 0:c1e7994288d7 | 23 | //Plain text demo |
nnguyen45 | 0:c1e7994288d7 | 24 | myTTS.speakf("S");//Speak command starts with "S" |
nnguyen45 | 2:922b8fe6ff94 | 25 | myTTS.speakf("Welcome to Bat, the Blind Assistive Teacher. This device will help you learn how to write and type braille."); // Send the desired string to convert to speech |
nnguyen45 | 0:c1e7994288d7 | 26 | myTTS.speakf("\r"); //marks end of speak command |
nnguyen45 | 0:c1e7994288d7 | 27 | myTTS.ready(); //ready waits for speech to finish from last command with a ":" response |
nnguyen45 | 2:922b8fe6ff94 | 28 | if(str.length(letter[0]) != 0) { |
nnguyen45 | 2:922b8fe6ff94 | 29 | myTTS.speakf("STo write the letter %s, press pins %D\r",letter[0], ID); |
nnguyen45 | 2:922b8fe6ff94 | 30 | //check pins pressed |
nnguyen45 | 2:922b8fe6ff94 | 31 | if(incorrect) { |
nnguyen45 | 2:922b8fe6ff94 | 32 | myTTS.speakf("SPin %D is incoorect.\r",ID); |
nnguyen45 | 2:922b8fe6ff94 | 33 | myTTS.speakf("S%s.\r", repeat); |
nnguyen45 | 2:922b8fe6ff94 | 34 | } |
nnguyen45 | 2:922b8fe6ff94 | 35 | } else if(str.length(words) != 0) { |
nnguyen45 | 2:922b8fe6ff94 | 36 | myTTS.speakf("SType the word %s.\r",word); |
nnguyen45 | 2:922b8fe6ff94 | 37 | } |
nnguyen45 | 0:c1e7994288d7 | 38 | myled = 0; |
nnguyen45 | 0:c1e7994288d7 | 39 | //Voice Demo |
nnguyen45 | 0:c1e7994288d7 | 40 | for (int i=0; i<9 ; i++) { //demo different voices |
nnguyen45 | 0:c1e7994288d7 | 41 | myTTS.voice(i); |
nnguyen45 | 0:c1e7994288d7 | 42 | myTTS.speakf("SHello this is a sample of voice number, %D\r",i); |
nnguyen45 | 0:c1e7994288d7 | 43 | myTTS.ready(); |
nnguyen45 | 0:c1e7994288d7 | 44 | } |
nnguyen45 | 0:c1e7994288d7 | 45 | myTTS.voice(0); //back to default voice |
nnguyen45 | 0:c1e7994288d7 | 46 | //Number demo |
nnguyen45 | 0:c1e7994288d7 | 47 | for (int i=10; i>=0 ; i--) { //demo different numbers |
nnguyen45 | 0:c1e7994288d7 | 48 | myTTS.speakf("S%D.\r",i); |
nnguyen45 | 0:c1e7994288d7 | 49 | myTTS.ready(); |
nnguyen45 | 0:c1e7994288d7 | 50 | } |
nnguyen45 | 0:c1e7994288d7 | 51 | } |
nnguyen45 | 0:c1e7994288d7 | 52 | } |
nnguyen45 | 2:922b8fe6ff94 | 53 |