Program to demonstrate NXP semiconductor's PCA9955B chip working with the BBC micro:bit

Dependencies:   PCA995xA microbit

Fork of PCA9955A_Hello by InetrfaceProducts NXP

This is a simple program that allows you to control each port on a PCA9955B connected over i2c to a BBC micro:bit using a simple USB serial communication program.

I've written it to work with the 2 digit SMD soldering kit I designed. Drop me an email at tb942@hotmail.co.uk for further info on that...

Committer:
nxp_ip
Date:
Wed Feb 25 06:48:49 2015 +0000
Revision:
1:8b5c26cc269c
Parent:
0:ec8cc77909e5
Child:
2:cfa5103184b1
fix

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nxp_ip 0:ec8cc77909e5 1 #include "mbed.h"
nxp_ip 0:ec8cc77909e5 2
nxp_ip 0:ec8cc77909e5 3 #include "PCA9955A.h"
nxp_ip 0:ec8cc77909e5 4 PCA9955A led_cntlr( p28, p27, 0x02 ); // SDA, SCL, Slave_address(option)
nxp_ip 0:ec8cc77909e5 5
nxp_ip 1:8b5c26cc269c 6 int main()
nxp_ip 0:ec8cc77909e5 7 {
nxp_ip 0:ec8cc77909e5 8 led_cntlr.current( ALLPORTS, 1.0 ); // Set all ports output current 100%
nxp_ip 0:ec8cc77909e5 9
nxp_ip 0:ec8cc77909e5 10 while(1) {
nxp_ip 0:ec8cc77909e5 11 for ( int port = 0; port < led_cntlr.number_of_ports(); port++ ) {
nxp_ip 0:ec8cc77909e5 12 for ( int i = 1; i <= 100; i++ ) {
nxp_ip 0:ec8cc77909e5 13 led_cntlr.pwm( port, (float)i / 100.0 );
nxp_ip 0:ec8cc77909e5 14 wait( 0.01 );
nxp_ip 0:ec8cc77909e5 15 }
nxp_ip 0:ec8cc77909e5 16 }
nxp_ip 0:ec8cc77909e5 17 led_cntlr.pwm( ALLPORTS, 0.0 ); // Set all ports output PWM 0%
nxp_ip 0:ec8cc77909e5 18 }
nxp_ip 0:ec8cc77909e5 19 }