Mini board PCU9669 evaluation kit library

Committer:
nxp_ip
Date:
Mon Mar 26 06:26:28 2012 +0000
Revision:
1:dd16429c98bb
Parent:
0:45e6b54f22e3
Child:
2:9a1d020f6233
first release version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nxp_ip 0:45e6b54f22e3 1 /** A sample code for "mini board PCU9669/PCA9665"
nxp_ip 0:45e6b54f22e3 2 *
nxp_ip 1:dd16429c98bb 3 * @author Akifumi (Tedd) OKANO, NXP Semiconductors
nxp_ip 1:dd16429c98bb 4 * @version 1.0
nxp_ip 1:dd16429c98bb 5 * @date 26-Mar-2011
nxp_ip 0:45e6b54f22e3 6 *
nxp_ip 0:45e6b54f22e3 7 * Released under the MIT License: http://mbed.org/license/mit
nxp_ip 0:45e6b54f22e3 8 *
nxp_ip 0:45e6b54f22e3 9 * An operation sample of PCU9669/PCA9665 I2C bus controller.
nxp_ip 0:45e6b54f22e3 10 * The mbed accesses the bus controller's parallel port (8/2 bit address and 8 bit data) by bit-banging.
nxp_ip 0:45e6b54f22e3 11 * The bit-banging is poerformed by PortInOut function of mbed library.
nxp_ip 0:45e6b54f22e3 12 *
nxp_ip 0:45e6b54f22e3 13 * To make the code porting easier, all codes are partitioned into layers to abstract other parts.
nxp_ip 0:45e6b54f22e3 14 * The mbed specific parts are concentrated in lowest layer: "hardware_abs.*".
nxp_ip 0:45e6b54f22e3 15 * This module may need to be modified for the porting.
nxp_ip 0:45e6b54f22e3 16 *
nxp_ip 0:45e6b54f22e3 17 * All other upper layers are writen in standard-C.
nxp_ip 0:45e6b54f22e3 18 *
nxp_ip 0:45e6b54f22e3 19 * base code is written from 05-Sep-2011 to 09-Sep-2011.
nxp_ip 0:45e6b54f22e3 20 * And demo code has been build on 11-Sep-2011.
nxp_ip 0:45e6b54f22e3 21 * Debug and code adjustment has been done on 08-Sep-2011.
nxp_ip 0:45e6b54f22e3 22 * Small sanitization for main.cpp. All mbed related codes are moved in to "hardware_abs.*". 13-Oct-2011
nxp_ip 0:45e6b54f22e3 23 * hardware_abs are moved into parallel_bus library folder, 3 LED driver operation sample 13-Feb.-2012
nxp_ip 0:45e6b54f22e3 24 * PCU9669 and PCA9665 codes are packed in a project 14-Feb-2012.
nxp_ip 0:45e6b54f22e3 25 *
nxp_ip 0:45e6b54f22e3 26 * Before builidng the code, please edit the file mini_board_PCU9669/config.h
nxp_ip 1:dd16429c98bb 27 * Un-comment the target name what you want to target.
nxp_ip 0:45e6b54f22e3 28 */
nxp_ip 0:45e6b54f22e3 29
nxp_ip 0:45e6b54f22e3 30
nxp_ip 0:45e6b54f22e3 31 /** PCA9629 related definitions
nxp_ip 0:45e6b54f22e3 32 *
nxp_ip 0:45e6b54f22e3 33 * PCA9629's internal register name and address definitions, I2C address difinitions
nxp_ip 0:45e6b54f22e3 34 */
nxp_ip 0:45e6b54f22e3 35
nxp_ip 0:45e6b54f22e3 36 #ifndef MINIBOARD_PCA9629_REG__
nxp_ip 0:45e6b54f22e3 37 #define MINIBOARD_PCA9629_REG__
nxp_ip 0:45e6b54f22e3 38
nxp_ip 0:45e6b54f22e3 39
nxp_ip 0:45e6b54f22e3 40 /** @var PCA9629 I2C bus addresses
nxp_ip 0:45e6b54f22e3 41 */
nxp_ip 0:45e6b54f22e3 42
nxp_ip 0:45e6b54f22e3 43 typedef enum {
nxp_ip 0:45e6b54f22e3 44 PCA9629_ADDR0 = 0x40,
nxp_ip 0:45e6b54f22e3 45 PCA9629_ADDR1 = 0x42,
nxp_ip 0:45e6b54f22e3 46 PCA9629_ADDR2 = 0x44,
nxp_ip 0:45e6b54f22e3 47 PCA9629_ADDR3 = 0x46,
nxp_ip 0:45e6b54f22e3 48 PCA9629_ADDR4 = 0x48,
nxp_ip 0:45e6b54f22e3 49 PCA9629_ADDR5 = 0x4A,
nxp_ip 0:45e6b54f22e3 50 PCA9629_ADDR6 = 0x4C,
nxp_ip 0:45e6b54f22e3 51 PCA9629_ADDR7 = 0x4E,
nxp_ip 0:45e6b54f22e3 52 PCA9629_ADDR8 = 0x50,
nxp_ip 0:45e6b54f22e3 53 PCA9629_ADDR9 = 0x52,
nxp_ip 0:45e6b54f22e3 54 PCA9629_ADDRA = 0x54,
nxp_ip 0:45e6b54f22e3 55 PCA9629_ADDRB = 0x56,
nxp_ip 0:45e6b54f22e3 56 PCA9629_ADDRC = 0x58,
nxp_ip 0:45e6b54f22e3 57 PCA9629_ADDRD = 0x5A,
nxp_ip 0:45e6b54f22e3 58 PCA9629_ADDRE = 0x5C,
nxp_ip 0:45e6b54f22e3 59 PCA9629_ADDRF = 0x5E,
nxp_ip 0:45e6b54f22e3 60 }
nxp_ip 0:45e6b54f22e3 61 pca9629_addr;
nxp_ip 0:45e6b54f22e3 62
nxp_ip 0:45e6b54f22e3 63
nxp_ip 0:45e6b54f22e3 64 #endif // MINIBOARD_PCA9629_REG__
nxp_ip 0:45e6b54f22e3 65
nxp_ip 0:45e6b54f22e3 66