/* * MCP9600.c * * Created on: Jul 11, 2018 * Author: avi */ //https://github.com/MikroElektronika/HEXIWEAR/blob/master/SW/Click%20Examples%20mikroC/examples/Thermo_K/HEXIWEAR_THERMO_K_Click.c #include "MCP9600.h" char tmp_data[10]; /* float Read_Temperature() { float Temperature; tmp_data[0] = MCP9600_TH; // Thermocouple Temperature register I2C_Start(); // Issue I2C start signal I2C_Write( MCP9600_I2C_ADDR, tmp_data, 1, END_MODE_RESTART ); // Send byte (tmp_data[0]) Delay_us( 50 ); // delay 50 us I2C_Read( MCP9600_I2C_ADDR, tmp_data, 2, END_MODE_STOP ); // Read thermocouple temperature and store it in tmp_data if( (tmp_data[0] & 0x80) == 0x80 ) { // TA < 0°C tmp_data[0] = tmp_data[0] & 0x7F; // Clear SIGN Temperature = 1024 - ( tmp_data[0] * 16 + tmp_data[1] / 16 ); } else // TA > 0°C Temperature = ( tmp_data[0] * 16 + (float)tmp_data[1] / 16 ); // Temperature = Ambient Temperature (°C) return Temperature; // Return Thermocouple temperature data } */