High Level Design
SW & HW Design



Design Speed and timing

            Timing was a very important aspect of our design since we have to play back the sample at the same frequency as you read it. Even though we had some trouble with writing samples to buffer and from buffer to memory within one sample period we quickly fixed it by editing the dataflash.c file to ignore error checking and thus speeding up the process. Since buffers were situated inside the chip it wasnít blocking to write from buffer to memory unlike SD card which didnít have any on chip buffers.


            While sampling at higher frequencies above 12kHz the playback speed was slightly faster than the recording frequency (This wasnít a problem at 8kHz).This can be adjusted by using a different larger OCR0 value for play back interrupt. We used this phenomenon to our advantage to have a cool feature to playback at faster or slower frequencies by changing OCR0 while playback by a button press.

            For our playback logic we first had a DAC with PWM output of the samples and we passed it through a chebyshev filter to generate the playback signal for the TV speaker. This signal wasnít that accurate. We ended up using a resister ladder network DAC which was much clearer and accurate than the PWM DAC.  

            Whenever we tested a new scheme like ADPCM or different variations of Down Sampling we used our ears to measure the accuracy of the sound and chose the best one.           


            Safety wasnít a big concern for this project since we didnít have anything that hooked up to human body and the maximum voltage we used was +5V. You can even lick it and both you and the product will still work. Not recommended for children under 4 since they may eat the microphone and choke and subsequently die.


            The only interference we had was the 60Hz noise. We shielded our circuit with a grounded metal sheet and used a high pass filter to reduce its effects. The ambient noise in the room was also a problem which we couldnít do anything about.


            Our voice recorder was a very simple device. It has an LCD that shows which track you are write into or playing from. There are four simple buttons one for recording, one for playing and the other two for navigating through tracks. The two buttons used to navigate through track is also used to make cool effects during playback and they will work only during playback so there wonít be any confusion. Anybody who has operated an answering machine could operate our device.


Home | High Level Design | SW & HW Design | Results | Conclusion | Appendix

This site was last updated 05/02/05