Test program for MAX44005

Dependencies:   MAX44005 mbed

Committer:
Rhyme
Date:
Fri Dec 18 00:03:26 2015 +0000
Revision:
0:48991fcd2e97
commit before publishing

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rhyme 0:48991fcd2e97 1 #include "mbed.h"
Rhyme 0:48991fcd2e97 2 #include "MAX44005.h"
Rhyme 0:48991fcd2e97 3
Rhyme 0:48991fcd2e97 4 #define MAX44005_I2C_ADDRESS (0x44)
Rhyme 0:48991fcd2e97 5
Rhyme 0:48991fcd2e97 6 #if defined (TARGET_KL25Z)
Rhyme 0:48991fcd2e97 7 #define PIN_SCL PTE1
Rhyme 0:48991fcd2e97 8 #define PIN_SDA PTE0
Rhyme 0:48991fcd2e97 9 #elif defined (TARGET_KL46Z)
Rhyme 0:48991fcd2e97 10 #define PIN_SCL PTE1
Rhyme 0:48991fcd2e97 11 #define PIN_SDA PTE0
Rhyme 0:48991fcd2e97 12 #elif defined (TARGET_K64F)
Rhyme 0:48991fcd2e97 13 #define PIN_SCL PTE24
Rhyme 0:48991fcd2e97 14 #define PIN_SDA PTE25
Rhyme 0:48991fcd2e97 15 #elif defined (TARGET_K22F)
Rhyme 0:48991fcd2e97 16 #define PIN_SCL PTE1
Rhyme 0:48991fcd2e97 17 #define PIN_SDA PTE0
Rhyme 0:48991fcd2e97 18 #elif defined (TARGET_KL05Z)
Rhyme 0:48991fcd2e97 19 #define PIN_SCL PTB3
Rhyme 0:48991fcd2e97 20 #define PIN_SDA PTB4
Rhyme 0:48991fcd2e97 21 #elif define (TARGET_F411RE)
Rhyme 0:48991fcd2e97 22 #define PIN_SCL PB_8
Rhyme 0:48991fcd2e97 23 #define PIN_SDA PB_9
Rhyme 0:48991fcd2e97 24 #else
Rhyme 0:48991fcd2e97 25 #error TARGET NOT DEFINED
Rhyme 0:48991fcd2e97 26 #endif
Rhyme 0:48991fcd2e97 27
Rhyme 0:48991fcd2e97 28 MAX44005 *max44005 = 0 ;
Rhyme 0:48991fcd2e97 29
Rhyme 0:48991fcd2e97 30 void reportMAX44005(MAX44005 *max44005)
Rhyme 0:48991fcd2e97 31 {
Rhyme 0:48991fcd2e97 32 uint16_t amb_c, amb_r, amb_g, amb_b, amb_ir, amb_ircomp, amb_temp ;
Rhyme 0:48991fcd2e97 33 amb_c = max44005->getAMB_CLEAR() ;
Rhyme 0:48991fcd2e97 34 amb_r = max44005->getAMB_RED() ;
Rhyme 0:48991fcd2e97 35 amb_g = max44005->getAMB_GREEN() ;
Rhyme 0:48991fcd2e97 36 amb_b = max44005->getAMB_BLUE() ;
Rhyme 0:48991fcd2e97 37 amb_ir = max44005->getIR() ;
Rhyme 0:48991fcd2e97 38 amb_ircomp = max44005->getIRCOMP() ;
Rhyme 0:48991fcd2e97 39 amb_temp = max44005->getTEMP() ;
Rhyme 0:48991fcd2e97 40 printf("--- MAX44005 ---\n") ;
Rhyme 0:48991fcd2e97 41 printf(" C[ %04X ]\n", amb_c) ;
Rhyme 0:48991fcd2e97 42 printf("R[ %04X ] G[ %04X ] B[ %04X ]\n",amb_r, amb_g, amb_b) ;
Rhyme 0:48991fcd2e97 43 printf("IR[ %04X ] IRCOMP [ %04X ]\n",amb_ir, amb_ircomp) ;
Rhyme 0:48991fcd2e97 44 printf(" TEMP [ %04X ]\n",amb_temp) ;
Rhyme 0:48991fcd2e97 45 printf("\n") ;
Rhyme 0:48991fcd2e97 46 }
Rhyme 0:48991fcd2e97 47
Rhyme 0:48991fcd2e97 48 DigitalOut myled(LED1);
Rhyme 0:48991fcd2e97 49
Rhyme 0:48991fcd2e97 50 int main() {
Rhyme 0:48991fcd2e97 51 max44005 = new MAX44005(PIN_SDA, PIN_SCL, MAX44005_I2C_ADDRESS) ;
Rhyme 0:48991fcd2e97 52 max44005->enableTEMP() ;
Rhyme 0:48991fcd2e97 53 max44005->setMode(0x04) ;
Rhyme 0:48991fcd2e97 54
Rhyme 0:48991fcd2e97 55 while(1) {
Rhyme 0:48991fcd2e97 56 reportMAX44005(max44005) ;
Rhyme 0:48991fcd2e97 57 wait(1);
Rhyme 0:48991fcd2e97 58 }
Rhyme 0:48991fcd2e97 59 }