Record Sound Without A Microcontroller

For his A-level electronic course work, [Andrew] decided to build a digital sound recorder that doesn’t use a microcontroller.

[Andrew]’s build captures audio from an on board microphone at 8000 samples/second. The audio is digitized into 8-bit sound data and sent to an SRAM. The recording and playback functions are controlled entirely by 4000-series logic chips. He admits the sound quality is pretty poor; this is mostly due to the 8kHz sample rate. In some circles, though, a terrible sample rate is seen as being pretty cool so we’re not going to say [Andrew]’s build is useless.

There’s some pretty smart design choices in [Andrew]’s build, like a cut off filter on the microphone set at 4000 Hz (the Nyquist frequency of his system).  For the recording medium, he used an SRAM that can hold about half a megabyte of data. At 8000 samples/second,  [Andrew]’s build can store a little more than 60 seconds of audio. The build may not be a logic chip computer, but there’s not any question in our mind that [Andrew] learned something. Check out [Andrew]’s 66-page coursework report here (PDF warning).

14 thoughts on “Record Sound Without A Microcontroller

  1. Did this in the early 90’s in Digital Electronics 102 by using a pair of 4520 binary counters and a 4 bit AtoD with a 555 running at 8Khz.

    It was really crappy audio but I was able to record audio snippets to then burn into eproms to make audio triggers really easy.

    Honestly a lot of things can be done without a micocontroller if people take the time to learn electronics and how logic chips work and what is available.

    1. oops, I missed the reply and reported this comment. Please ignore it.

      I agree with you regarding the necessity to know your basis in electronics, but good design means efficiency too.
      Beside the challenge of doing it, it’s a totally outdated design (90’s style) that would eat batteries for breakfast.

      A nice proof of concept indeed.

  2. there’s not any question in our mind that [Andrew] learned something.

    Could HaD be more patronising if they tried?

    @ino – I’d expect the current consumption to be comparable to a uP based solution when recording, tbh. What makes you think it would be excessive?

    Anyway, nice work Andrew!

    1. @eccentric: I assume ino counted chips like I did – there are 13 separate logic ICs (not counting the SRAM, op amps, or the audio amp, which you might still need with a uC).

      I haven’t looked up current consumption for 4000-series ICs lately, but I assume 13 of any type of IC would need more power than one microcontroller, especially if you used sleep modes on the uC.

      Why do you expect current draw to be similar? I’m curious, not trolling.

    2. The sram sinks something like 25mA during recording.
      A pic like the PIC18F26K22, for example, sinks less than 1mA at 1Mhz with 512K of eeprom and a 10 bit ADC.
      Add the quiescent current for all the logic gates, ADC, DAC and your consumption is then way greater than the µc. This ref can fall beyond the µamp in sleep mode.
      That was my point.

  3. Traditional Telephone audio http://en.wikipedia.org/wiki/G.711 is a bit fancier than this – it does 8000 8-bit samples per second, but instead of a linear 8-bit A/D conversion it does a logarithmic mapping from a 14-bit sample down to 8 bits, and remaps it back when you play it. So it does a bit better job of modeling human speech sounds, and when you’re done it still sounds kind of lame.

  4. What a coincidence–I actually made one of these last week! I used a 128KB SRAM, two 74HC393 counters, and an ADC0820 (which has a much higher sample rate than the ADC0804) I was having difficulty with the microphone amplifier circuit and gave up because it sounded like crap. It’s great to see that Andrew got it all working!

  5. Nice idea, wonder if this would work with the old chips I have from that defunct 8086?

    Presumably any SRAM should work, even one of the more modern ones like the 23x series if you used 4000 series logic to generate the relevant combination of bits in the right sequence to shift it into write or read mode.

  6. Damn… This was (pretty much exactly) what I had planned for my AS project. Even down to the sampling rate, although I was going to use Flash memory and not static RAM so that it would remember what it had recorded. Too bad I was beaten to it, but congrats to Andrew on what’ll definitely be an A* project.

Leave a Reply to The CageybeeCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.