Contextual Computing Group

CCG Home | People | Research | Publications | Resources | Contact

William Rachelson
gurufool@cc
General Overview:
  bUSBoy is a small board that sports a Cypress EZ-USB chip. The chip is the marriage of an 8051 microcontroller with a USB interface. It has everything you would expect from a standard 8051, including serial, i2c, and gpio. Cypress added some other special functionality: USB interface, serial eeprom booting, etc. You could use this board to give a USB interface to virtually anything you can hook up to a microcontroller, such as small sensors, switches, motors, etc. The board can draw power from the USB port.

Resources

Schematics - ezusb.pdf
Bill of Materials - bom.txt
Protel Files - ezusb.ddb and the protel schematic library.
Windows drivers - ezusbdev.exe
This file is from Cypress' web page. It is the software for their EZ-USB dev board. It includes a program that allows you to transfer eeprom and .ihx files to the 8051. You can use this or the Linux version (preferred) below.
Dev Kit Homepage

Linux drivers
I used version 2.2.16 with the USB backport. I believe things have finally become a bit more stabilized, and you no longer need the backport in the most recent 2.2 kernel. Just in case, here's the backport for 2.2.16:
backport.diff

You'll also need a driver to talk to the board. First, compile anchor.c as a module then make a /dev/ezusb device with maj/minor: 180/101 using 'mknod c 180 101'. This simple driver allows you to send Intel Hex (.ihx) formatted files to the 8051 for execution. Debugging data should be available in at the KERN_DEBUG level (usually /var/log/debug).

SDCC - A C compiler suitable for the 8051
AS31 - An assembler for the 8051
Use this macro preprocessor (perl script) with as31
Note: This is Rob's preprocessor, and it's temporarily down. He should fix it soon.
Keil Commercial compiler - It's outrageously expensive (>$0)
EZ-USB Manual - manual.pdf appendix.pdf register set summary.pdf
Cypress EZ-USB Homepage
Code - mmmm.. code.
ezusb.h - all the ez-usb's memory for C code
test.c - sends data to the boards uart. you can test the serial port with this.
green.tar - a sample program that turns on the green led. includes two source versions (.C and .asm) and the .ihx file.
anchor.c_pre - New driver for linux. Still in progress. Doesn't work yet. When you read from /dev/ezusb, it returns 1 byte of data representing portC.
firmware.tar - Firmware for the above driver. It samples port C, loads up the output buffer, and fires off the data.
Also Helpful
Setting up baud rates
EZ-USB I/O Ports - Differences to Standard 8051
Programming the EZ-USB I2C Interface
Quick and EZ Guide to USB
Configuring EZ-USB without a USB Connection
Bulk Performance Analysis
Cypress Appnotes Home

 
 
  

CCG Home | People | Research | Publications | Resources | Contact

[GVU Center] [College Of Computing] [Georgia Tech]