8-Bit Chip Rocks 16-Bit 44.1kHz Tunes

There’s a special place in our hearts for chip tunes generated with your favorite microcontroller. But why stop there? Full-featured audio is a great challenge and it’s not often we see examples of this caliber. It puts out CD-quality audio using not much more than a microcontroller.

How do you get 16-bit audio out of an 8-bit microcontroller. We’ll give you a hint: two pins are used. Not helping? Here it comes: two 8-bit DACs PWM outputs are used on this chip, the ATmega1284. One is used for the lower eight bits, the other handles the upper. The two are combined using carefully calculated precision resistor values and the results are beyond what you imagine. This is produced at a bitrate of 44077.135, slightly off from the 44100Hz standard but we challenge you audiophiles to tell the difference. The wave files are served from an SD card read by the chip using the Petit-FatFs library.

There are so many great things about this project. First off, following [Wancheng Zhou’s] example will let anyone with even basic microcontroller skills build a digital audio player for an [Andrew Jackson] and a couple of [Washingtons]. Secondly, those with a medium uC skill level will want to take the idea and implement/debug it for themselves. Bringing it home, [Wancheng] shows how to gauge the quality of the audio output using FFT.

If you didn’t figure it out by the time of year, this is yet another example of a Cornell ECE 4760 final project. Shout out to [Bruce Land] for inspiring awesome projects and requiring extensive documentation of the projects which itself promotes deeper understand all around.

Continue reading “8-Bit Chip Rocks 16-Bit 44.1kHz Tunes”

16-bit HCMOS computer is a wire wrapping wonderland

The D16/M is a 16-bit computer built using HCMOS logic chips. It’s a thing of beauty from every angle thanks to the work [John Doran] put into the hobby project. But he didn’t just take pictures of the build and slap them on a webpage. He took the time to publish a remarkable volume of documents for the computer too!

The processor can execute a total of 73 instructions and offers a 100-pin bus for accessing main memory and peripherals. So far he has documented three different peripheral boards, each of which is pluggable thanks to an edge connector that accepts the board. The expansion boards are for system memory, serial communication port, and a clever four-position SD card interface for persistent storage.

Got a question about the system? He wrote a FAQ. Want to learn from his obvious mastery of wire-wrapping? He wrote a wire wrapping tips guide. Like we said, there’s a mountain of documentation and the links to it all are included in his main project page.

[Thanks Allen]