by Olin Lathrop of Cognivis.com says:
I did a little private Halloween project with a PIC 16F876 that included generating some sounds. I use the PWM output at over 50KHz with low pass filtering to serve as a D/A. Two 7-bit sound samples are stored per program memory location. I use a *very* low sample rate of about 2KHz, which is OK for the low frequency grunts and growls it is intended for. With this setup, there is room for about 7 seconds of sound in the program memory not used by the program. The largest single chunk of work was writing the windows program to read a WAV file, filter and resample to my 2KHz rate, and then write the PIC assembler file for the data table.You will need a significantly higher sampling rate for reasonable voice. 6KHz is probably reasonable, but you might be able to get away with 4KHz or so if it doesn't have to sound that great and you use people with low pitch voices. Compression can also decrease the size of the data a great deal, especially since you know the sound is a human voice.
The file EMBEDINC.TAR contains a directory tree in TAR format, which should be readable on any [Windows... ed: use winzip] system. This file expands to the single top level directory EMBEDINC containing a tree of stuff. The WAV_HAL executable is in the COM (commands) directory, and the Pascal source code for it is in the SOURCE/PICS directory. The remaining files and directory structure is only useful if you want to run WAV_HAL.EXE. If you run WAV_HAL where it is instead of making a copy of it somewhere else, it will be able to find the message files and write descriptive errors to standard output. Otherwise you get messages like "Message xxx in subsystem yyy."
Also:
Questions:
Comments: