The Propeller Development Stick Redux uses a AD7999 I2C ADC to add analog functionality to the Propeller. I used the Basic I2C Driver and then wrote two demo programs to demonstrate how to get data from the AD7999. The demos could be used with other devices from the AD799X series with proper changes to the defines.
AD7999 Round Robin Channel
AD7999 Select Channel
The round robin style enables all 4 channels then pulls the data in sequence. This makes the sampling faster as you do not need to write to the AD7999 every sample. The select channel demo writes to the AD7999 and tells it which channel to sample then gets the data. This is slower then the round robin style but you can request a specific channel.
The parts for REV 0 of Tommy arrived from Mouser today. Just finished soldering the Propeller portion and it worked first try. I also updated the page for Tommy.
Tommy Pinball System Specifications
CPU: Parallax Propeller P8X32A-Q44 clocked at 96MHz.
I/O: 64 Optocoupled switch inputs.
32 Mosfets for solenoid control.
8 Servo Connectors.
72 8-bit PWM LEDs. Using WS2803 chips.
Up to 64 8-bit PWM RGB LEDs for General Illumination. Using WS2801 chips.
4 12-bit Analog to Digital Channels.
Standard LED DMD connector.
Power: Molex connector for PC PSU.
Separate connector for Solenoid and Servo Power.
Storage: Micro SD card slot.
2 Mbit of SPI SRAM.
1 Mbit of I2C EEPROM.
Additional: PCB Size is 7"x5" - 4 Layer
3 7-Segment numerical LED digits for debugging.
USB Serial built in.
Selectable voltage for LEDs and Servos.
All I/O data lines brought out for expandability.
Hardware watchdog that will disable solenoid power on event of CPU failure.
Here is the video demoing the motor controller. I used a Mr.Basic robot platform and included a little review about that platform. Code is found after the break.
Here is a link to the code’s page.
I will be uploading a video demoing the code. Have to build a tiny robot first.
I finished the code for the demo for the VFD. It uses the 8 bit parallel bus. I am working on the serial bus version to save I/O lines and a MSP-430 C code version.
Today I wrote some code to get the IEE Flip VFD working. It has a fairly simple protocol and only took a bit of tweaking to get it working. I wrote the demo code for my Prop Dev Stick and will be uploading the SPIN code later once I finish the feature set.
After this I will write some C code for the MSP430 LaunchPad and get that working. The screen supports a serial input mode which saves 8 I/O pins but requires more timing. I will try to get that working as well.
I picked up some of these really neat VFD alphanumeric displays at a surplus shop while at Maker Faire. After acquiring the datasheet from the manufacture, I decided to test them with the built in test mode. I have already started writing the code to run the display and will be posting the code and datasheet when it is done.
I finished the first physical version of the msPROBOT just in time for Maker Faire. I have the majority of the demo code written and I will post it when I test the code. All the basic library functions are written. Just need to make a main program that strings it all together.
There is more information and PCB files you can download at the msPROBOT project page.
So this is meant to be paired with a UART program. This code is not all my own but I could not remember where I found it. I have edited the original quite a bit but the same structure is still there. If someone recognizes it please let me know so I can give credit.
Printf Code (CCS V5)
Project File Ver1.0
I just put the finishing touches on my extensive UART and FIFO library. It uses the MSP430G2553 chip which has a hardware USCI. This can be used for a hardware UART. There are a couple different options to choose from and versions with or without a FIFO.
I will be making a standalone FIFO library so one can be used to store data.
edit: The standalone FIFO library is there now. Not fully tested but should work.