I'm using a PIC16F877 programmed in C for rs-232 serial interface with a Speakjet. When turned on, the Speakjet says "Ready," and I can get it to say ready again with a printf("V"). But I can't get the thing to say anything else. Could I get some help with this? Should I be using putc? printf? Essentially, what kind of syntax does it need?
Speakjet help
Jan 19, 2008
2 Replies
Let me give some more information:
I am using serial communication to a PIC chip programmed in C. When the setup is turned on, the Speakjet enunciates "Ready." Using the following code, I can cause it to enunciate "Ready" an additional time:
#include #include #use delay(clock=20000000) #use rs232(baud=9600, xmit=PIN_D1)
void main() { delay_ms(2000); printf("\\\\0"); delay_ms(2000); printf("V"); }
However, I have tried a number of methods and I can\'t get it to say
anything else from the list of sounds in the Speakjet user manual
(http://lib.store.yahoo.net/lib/e-clec-tech/speakjetchip.pdf). I am
wondering if anyone could post a simple sample code in C that would
show me how to make it enunciate a word? I am entirely unfamiliar with
other programming languages and only somewhat familiar with C, so
something as simple and as thoroughly explained as possible would be
very much appreciated.
I have not used the speakjet chip so my reply is only a guess based upon a quick look at the documentation.
The fact that you can command the speakjet chip to say 'Ready' says that you have your computer talking to the speakjet chip. That is often the hardest part.
The next thing that I would try is something like:
void main() { delay_ms(2000); printf("\\\\0"); /* Enter SCP mode */ delay_ms(2000); printf("V"); /* Request acknowledgement */ delay_ms(2000); printf("X"); /* Exit SCP mode */ printf(" \\\\AX \\\\EK \\\\FAST \\\\RR \\\\OH \\\\SE \\\\SE"); /* Speak "across" */ delay_ms(2000); }
The sequence for the word 'across' came from an item called 'SpeakJet Dictionary' in the PDFs section on
formatting link
Some other are:
a = \\EYIY \\IY able=\\FAST \\EYIY \\BO \\UH \\LE about=\\UX \\OB \\AYWW \\TT across= \\AX \\EK \\FAST \\RR \\OH \\SE \\SE act= \\AY \\EK \\TT acting = \\AY \\EK \\TT \\STRESS \\IH \\NGE activated= \\AY \\KE \\TT \\FAST \\IH \\VV \\FAST \\EYIY \\TT \\IH \\ED add= \\AY \\AY \\ED address= \\SLOW \\AY \\ED \\FAST \\RR \\EH \\SLOW \\SE adorn = \\SLOW \\AX \\DO \\FAST \\OWRR \\NE afraid= \\AX \\FF \\FAST \\RR \\EYIY \\ED after= \\AY \\FF \\TT \\FAST \\AXRR afternoon= \\AY \\FF \\FAST \\TT \\FAST \\AXRR \\FAST \\NE \\UW \\SLOW \\NE again= \\AX \\GE \\SLOW \\EY \\NE against= \\AX \\GE \\EY \\NE \\SE \\SLOW \\TT air= \\EYRR airplane= \\EYRR \\PO \\FAST \\LE \\EYIY \\NE alarm = \\SLOW \\UX \\LE \\AWRR \\MM alert= \\AX \\LE \\AXRR \\TT alien=\\Fast \\EY \\Fast \\EYIY \\LE \\IY \\Slow \\Fast \\AX \\NE alive= \\UX \\LE \\FAST \\OH \\FAST \\OHIY \\VV all= \\SLOW \\AW \\SLOW \\LO alligator= \\AY \\LE \\FAST \\IH \\GE \\RELAX \\EYIY \\TT \\FAST \\AXRR almost= \\OH \\FAST \\LO \\MM \\STRESS \\OW \\SO \\TT alone= \\UX \\LO \\OW \\OW \\SLOW \\NE along= \\UX \\LO \\OH \\OH \\SLOW \\NGO alpha= \\AY \\LE \\FAST \\FF \\UX alphabet= \\AY \\LO \\FAST \\FF \\FAST \\AX \\STRESS \\SOFT \\BE \\EY \\SLOW \\TT already= \\AW \\LE \\FAST \\RR \\EY \\DE \\IY also= \\SLOW \\AW \\SLOW \\LO \\SLOW \\SO \\OWWW although= \\FAST \\OH \\SLOW \\LO \\DH \\SLOW \\OWWW always= \\SLOW \\AW \\LE \\WW \\EYIY \\SLOW \\SE am = \\AY \\AY \\MM among= \\RELAX \\UX \\MM \\UX \\NGO ample = \\SLOW \\AY \\FAST \\MM \\PO \\UX \\LO
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required