by aehparta @ tldr.fi:
My lifetime project: building an 8-bit computer using Z80 CPU. This week I had a bad flu and could not do anything useful so I decided to dig up my old plans for this project. I first re-designed many things, like power, CPU-board, IO-board and so on (my old plans were around 10 to 15 years old). After some thought I realized: When I get even the CPU-board working, I want to display some stuff! So why not build the display adapter first. Plus I planned to build the adapter in a way that it can be used separately from the computer itself. Easy thing to start with.
Building a simple VGA-adapter for 8-bit self made computer – [Link]
Some time ago, I stumbled upon an article about 25¢ I²C adapter. I usually use my Raspberry Pi to interface with I²C devices, but having it right on my notebook seemed like quite useful thing, so I decided to build a project around it. Altough the mentioned article says that I²C is not supported on Intel cards on Linux (all of this was tested on Dell Latitude E5530 which does have Intel HD4000), I decided to try anyway. A lot has probably changed since 2008 when it was written.
TWILight – VGA I²C breakout board – [Link]
PK @ dqydj.net writes:
Let me set this up for you: most 8-bit AVRs in the wild (I happened to use an Arduino Nano for this project) are running at 16 MHz. That’s 16,000,000 calculations per second… a very respectable number for most embedded applications.
The VGA industry standard, which is pretty much the default case “we-can-always-fallback-to-this” video standard (640 pixels wide by 480 pixels tall by 60 frames per second), requires pixels to be clocked out at 25.175 MHz:
25,175,000 > 16,000,000.
And that was just one of the barriers to pulling off this silly project. And, yes, with the hack I told you about last time (Please see my notes below), more is possible without overclocking the Arduino – roughly 800 or so pixels wide in 4 bit color should be doable with a 16MHz part, and, probably 1024 pixels in 4 bit color are in reach for 20 MHz clocked parts. (If you’re willing to drop to 2 or 1 bit color and spend a ton on ICs that can handle even faster clocks, you can hit HD resolutions – but I think you’ll run into financial constraints before you max out on the technical side)
How to Produce 640×480 Color VGA Video From an 8-Bit Arduino – [Link]
This project uses an Arduino UNO to create the proper timing signals for 800×600 VGA output. The output is a standard red/green/blue pattern. Not particularly exhilarating but a great starting point for any Arduino lover curious about generating VGA signals.
Basic Arduino VGA – [Link]
The Scoreboard project is now finished and working!
The idea of this project is pretty simple: control a ping-pong electronic scoreboard from an Android bluetooth-enabled device. To do this, I used an ATtiny45 which main function is to display the current scores in a VGA monitor while reading from a bluetooth module UART interface waiting for “commands” that will tell it what to display. The Android device sends the commands via bluetooth, running an application specially designed for this project.
As usual, the whole project is open source, including schematics, AVR firmware and the Android application.
After my Masochist’s Video Card project won 2nd place in the 7400 contest, I got to choose one of many prizes being given away by Dangerous Prototypes. The prize I chose was the DE0 Nano FPGA development board, which, it turns out, is a pretty beefy little thing, despite its tiny size.
This article will look at how to build the same functionality that the Masochist’s Video Card (built only with 7400 logic IC’s) had, however this time we will use the DE0 Nano development board to complete the task, instead of wrist-breaking, pain-staking, masochist-loving wire-wrapping.
DE0 Nano VGA Output – [Link]
A friend of mine suggested that I build something for a 74xx TTL discrete logic contest at dangerous prototypes, so I figured why not? If you like this design, make sure to leave a comment on their website for my competition entry.
The Masochist’s video card is a pure TTL discrete logic design that generates the necessary video signals for VGA. The project name came about after the hours I spent wire-wrapping the project together yielded painfully raw fingertips. So be fore-warned if you duplicate this project, don’t abuse the wire-wrap tool!
Masochist’s Video Card – [Link]
I’m still waiting for my cheap Bluetooth module from China which will serve as an input interface for my scoreboard project. In the meantime, I’ll show you how to convert your ATtiny microcontroller into a Pong game (with no input so far).
Tiny Pong: More fun with ATtiny45 and VGA – [Link]
Here a small project with an ATtiny45. Currently I was able to write some big characters in a VGA monitor. This is the first part, but the final result will be a bluetooth controlled scoreboard.
Scoreboard – VGA signal from an ATtiny45 – [Link]