CSE 466 Final Project

Mauro Leibelt and Michael Buschbach

 

As is generally the case, we had great expectations at the outset...

Our plan was to create a chat application with the use of an Atmel AT89x55 8051 Microcontroller (MC).  The idea being that many persons or devices having one of these MCs could be connected together with only two wires.  Of course, in our present age, it would seem to be an antiquated concept.  Not so.  Okay, so maybe a little.

 

A zip file that contains everything that has been created in the course of this project can be found here.

 

The interesting part of the project, and our main focus, and our main bane, was a network stack.

A description of our ideas on what we thought that the implementation ought to look like can be found here.  Ultimately, almost nothing works, although "it should."  We had the physical layer running between two MCs for awhile at the start, but when we attempted to build upon that with the rest of the stack, it proved to thwart us at nearly every instruction.

These are the files containing our attempt at the implementation:  (zipped).  They can be compiled using the Keil development tools, then loaded onto the 8051 Microcontroller.

app.c app.h
datalink.c datalink.h
mac.c mac.h
serial.c serial.h
transport.c transport.h

 

There are a number of different components in our hardware setup.  They include the MC itself, an RS-232 serial communication device, and a PCF8584 I2C-bus controller.

The schematic for a single MC setup can be found here.  Right-click to download or it might open in the browser.

 

As it stands, the application interface of our project will work between the serial ports two computers.

Of course, this means that there were a few changes that had to be made in order for us to just pass over the MC piece of our project.  These are documented somewhat within the VBasic code.  Also, many of the message types for the interface between the MC and PC have yet to be implemented.

Here are the VBasic files and a sample executable:

VB Chat Files Sample

 

But don't get me wrong, you can still talk to yourself if you like, so long as you have VBasic 6 installed on your machine.  Just hook up a serial cable between two ports on your computer and run the sample executable twice.

Observe:

 

Did I forget to mention that it's called the "'NSync Chat-o-Rama 3000"?