MIT Media Labber David Cranor writes:
For the FAB6 conference this year, Max Lobovsky and I made a microcontroller-based thin client which uses a NTSC TV as its output device.
It does the NTSC video generation totally in hardware, has a full 480×240 framebuffer, and the code is written all in in c. Additionally, the code is written in such a way to make it easy for applications to draw arbitrary bitmapped graphics to the framebuffer, as well as access the serial receive buffer and keyboard character buffer.
This is my first STM32 project, so it was a fun exercise to make something which uses so many of the chip’s peripherals. Doing color is next on the agenda; the only reason this iteration is black and white is that we only had a week from “here’s the datasheet, cortex-M-what?” to finished project.
The STM32 used in this project runs at 80 MHz, has awesome peripherals, a DMA, tons of RAM/flash, a built in serial bootloader, and costs about $6 – I’m probably never going to use an atmega for anything again!
Source and board files included!