This is a project to replace the 8051 on a existing RGB LED board and add USB functionality. The original board relied on 8051 firmware to control the LEDs so any changes required software development. This version provides a USB interface for LED control. The USB interface is implemented as a HID with a 9 byte OutReport. In conjunction with a simple GUI the RGB LED board can now be controlled to set color patterns, intensity and pattern sequencing.
Dependencies: PCA9635-6 mbed USBDevice
RGB GUI - Windows program to control the PCA9635 board.
Diff: i2cmessages.h
- Revision:
- 1:ee2692588275
- Parent:
- 0:5e18eb7da208
--- a/i2cmessages.h Fri Dec 09 21:40:36 2011 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -#include "i2cexprt.h" - -#define SW_RESET_I2C_ADDRESS 0x06 -#define ALL_CALL_I2C_ADDRESS 0xE0 -#define SUB_ADDRESS_1 0xE2 -#define SUB_ADDRESS_2 0xE4 -#define SUB_ADDRESS_3 0xE8 - -BYTE SW_RESET[3] = {2,0xA5,0x5A}; - -BYTE WAKE_UP_AND_INIT[4] = {3,0x80,0x81,0x01}; - -BYTE GLOBAL_BLINK_SUB_ADDR_1[4] = {3,0x80,0x89,0x21}; // Blink + All Call/Sub-Addr1 -BYTE GLOBAL_BLINK_SUB_ADDR_2[4] = {3,0x80,0x85,0x21}; // Blink + All Call/Sub-Addr2 -BYTE GLOBAL_BLINK_SUB_ADDR_3[4] = {3,0x80,0x83,0x21}; // Blink + All Call/Sub-Addr3 -BYTE GLOBAL_DIM[3] = {2,0x01,0x01}; -BYTE GLOBAL_INTENSITY[3] = { 2, 0x92, 0}; - -void Write_All_Devices(void); -BYTE ALL_LED_FULL_PWM[18]={17,0x82,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; - -BYTE LED_ALL_ON[6] = {5,0x94,0x55,0x55,0x55,0x55}; -BYTE LED_ALL_OFF[6] = {5,0x94,0x00,0x00,0x00,0x00}; -BYTE LED_ALL_INDVDL_PLUS_GLOBL_PWM_CTRL[6] = {5,0x94,0xFF,0xFF,0xFF,0xFF}; - -BYTE LED_0_3_6_9_12_15_ON[6] = {5,0x94,0x41,0x10,0x04,0x41}; -BYTE LED_1_4_7_10_13_ON[6] = {5,0x94,0x10,0x04,0x41,0x10}; -BYTE LED_2_5_8_11_14_ON[6] = {5,0x94,0x04,0x41,0x10,0x04}; - - -