Current temperature express as coloured theme.

Dependencies:   N5110 TMP102 mbed

Fork of 2645_I2C_TMP102 by Craig Evans

main.cpp

Committer:
eencae
Date:
2016-02-05
Revision:
1:dd5fb735acf1
Parent:
0:21a200b880d7
Child:
2:3789998dde80

File content as of revision 1:dd5fb735acf1:

/* 

2645_I2C_TMP102_Library

Sample code from ELEC2645 Week 17 Lab

Demonstrates how to re-factor the TMP102 code into a library

(c) Craig A. Evans, University of Leeds, Feb 2016

*/ 

#include "mbed.h"
// include the library header, ensure the library has been imported into the project
#include "TMP102.h"

// Create TMP102 object
TMP102 tmp102(I2C_SDA,I2C_SCL);  
// UART connection for PC
Serial pc(USBTX,USBRX);

// K64F on-board LEDs 
DigitalOut r_led(LED_RED);
DigitalOut g_led(LED_GREEN);
DigitalOut b_led(LED_BLUE);
// K64F on-board switches
InterruptIn sw2(SW2);
InterruptIn sw3(SW3);

// error function hangs flashing an LED
void error();
// setup serial port
void init_serial();
// set-up the on-board LEDs and switches
void init_K64F();

int main()
{
    // initialise the board and serial port
    init_K64F();
    init_serial(); 
    // call the sensor init method using dot syntax
    tmp102.init();
    
    while (1) {
        
        // read temperature and print over serial port
        float T = tmp102.get_temperature();
        pc.printf("T = %f K\n",T);
        // small delay - 1s to match the update rate of the sensor (1 Hz)
        wait(1.0);
        
    }

}

void init_serial() {
    // set to highest baud - ensure terminal software matches
    pc.baud(115200); 
}

void init_K64F() 
{
    // on-board LEDs are active-low, so set pin high to turn them off.
    r_led = 1;
    g_led = 1;
    b_led = 1;   
    
    // since the on-board switches have external pull-ups, we should disable the internal pull-down
    // resistors that are enabled by default using InterruptIn
    sw2.mode(PullNone);
    sw3.mode(PullNone);

}