ks0108

I finally set aside some time for one of my own projects. I have been playing around with ARM microcontrollers a lot lately and wanted to try out my GLCD display that uses the KS0108 protocol. It’s 5V but I had heard that some of these displays will work with 3.3V TTL. But the datasheet tells me otherwise. I tried using a pull-up resistor to 5V and configuring the Stellaris Launchpad pins to open drain, but the low voltage wasn’t getting below the 0.3V threshold needed by my display. My only choice was to use some type of level conversion. I actually ended up driving the KS0108 using a pair of TXB0108 level converters.

I figured this had to have been done before so I check over at Sparkfun. Their offerings are either one-way or have a direction pin that you must drive yourself. I figured there had to be a bi-directional solution and a search over at Mouser led me to the TXB0108. It is exactly what I was looking for and as you can see I etched my own circuit boards to make the TSSOP chips breadboard compatible. I’ve documented the process you can find the code and board files at my post linked above.

This build may not be as colorful as Super Pixel Bros, but choosing a KS0108 graphic LCD certainly brings a lot more definition to the images. You can see in the video after the break that the AVR does an excellent job of generating and animating multiple objects. It doesn’t take much to put this together yourself but if you want the board layout done for you, you’re out of luck. The hardware for the project is installed on a PCB that was hand-drawn with an etch resist marker. Continue reading “Overclocked ATmega32 gaming”→

Space Invaders came out in 1978, six years after Pong. That means this Space Invaders clock uses newer technology, right? Nope, it’s the same hardware as the Adafruit Pong Clock with some updated firmware. Still, as you can see after the break, the effect is pretty nice. Pong was cool, but having a clock that scrolls through several classic games would be cooler.

[PT] let us know that Adafruit Industries has just release a pong clock kit. The $80 price tag might seem a bit steep but it does come with a custom-ordered KS0108 display in order to get white on black like the classic video game, as seen after the break. Also included is the laser-cut case, an ATmega328 microcontroller, RTC, and all the other bits needed to get this working.

Tetris, the timeless classic, is one of those concepts that someone will try to run on every conceivable hardware platform. I took on the challenge of programming a Tetris clone from the ground up using hardware I had on hand. At the heart of the build is an ATmega168 microcontroller. The game displays on a KS0108 128×64 LCD module with five momentary push switches to provide directional, rotational, and input controls. You can see the resulting monochrome action embedded after the break.

I had several goals in mind while writing the code for the game. I wanted the code to be portable so that the size of the board and type of screen used could be easily changed. With that in mind I developed the trunk for a Nokia 3595 cellphone screen and a parallel branch for the graphic LCD. Originally I was working with an ATmega8 but upgraded so that I could operate at the 3.3v the cell phone screen required.

The firmware for the graphic LCD branch compiles to just over 6 kB which means it can still be run on a mega8. Also, the ATmega168 is the same processor used in the Arduino Duemilanove so another Tetris port is not out of the question. I just got a hold of my first Arduino so we’ll see if I find time to start a new branch in the code.

Here’s a handheld version of Rogue. Rogue is one of the first graphical computer games and takes the player through a dungeon-exploring adventure. [Manuel] built this around a PIC 16F876 microcontroller and a KS0108 graphic LCD screen.

Hot on the heels of the pixellated Mario game, these embedded handhelds make for fun projects and great gifts. There are few parts used and [Manuel] etched his own PCB. Take a look at the schematic, this is a great platform to start with but the sky’s the limit on writing your own games.