Team 1.1 – Space Invader Bootcamp: The Big Picture

The primary objective of this lab was to use a culmination of all that was learned throughout the semester in a cumulative project showcasing the skills and knowledge that we had developed in a project of our own choice and design. The made the primary goal to coherently and practically apply the principles and techniques we had developed over the course of the semester. After brainstorming and debating about the primary function of our project, the team decided to attempt to utilize an LCD screen and an accelerometer to display and move a small dot about the screen in relation to the origin and the movement of said accelerometer, possibly making a simple game out of it. However, due to the relative difficulty of the application and various time constraints, the LCD screen originally intended for the project was substituted with the screen already on the A3BU microcontroller and the accelerometer was substituted with a small joystick with which the dot is moved about the screen. A small button was also integrated into the design with which we were able to use to “shoot” at static targets in the context of a classic video game style. The various pieces of equipment used at some point throughout the course of the project are as follows: the Atmel A3BU microcontroller, a Parallax joystick, and a basic push-button. Despite the few and minor hiccups that we had during the course of the project, the final result is an effective and functioning rendition of our original idea to make a simple and fun game with the help of the A3BU microcontroller and a few select pieces of third-party hardware.

Nokia’s LCD display

For our project, we decided to purchase and use a Nokia Graphic LCD display to have a bigger display. At first it seemed easy to just plug the right wires in and make the LCD to work. Here’s a graphical representation of what the LCD looks like connected to an Arduino.

We hooked up the A3BU accordingly. When it came to converting the code for Arduino to a code that’d work with A3BU, we noticed we would need to write a driver from scratch for the Philips PCD8544 display controller to work with A3BU.

We started developing a simple driver for the PCD8544 display. Upon more research we realized that the LCD protocol is 9-bit SPI verses the AVR microcontroller series only support 8-bit mode. The LCD display could work with the 8-bit AVR microcontroller but we would need to implement additional software SPI output for it. Since the project scope doesn’t allow us to spend more time on it, we decided to go back to the good old LCD display for the A3BU which it’d make things much easier since we’re familiar with ST7565R LCD controller :).

(See Fall 2015 flappy bird project for a creative workaround to using the Nokia LCD with the A3BU!)