#include <Arduino_MachineControl.h>

using namespace machinecontrol;

#include <iostream>

float res_divider = 0.28057;
float reference = 3.3;

void setup() {
 
  Serial.begin(19200);
  // Initialize temperature probes
  temp_probes.tc.begin();
  Serial.println("Temperature probes initialization done");
  // Enables Thermocouples chip select
  temp_probes.enableTC();
  Serial.println("Thermocouples enabled");
  /*
  analogReadResolution(16);

  Serial.begin(9600);
  analog_in.set0_10V();*/
}

void loop() {
  //Set CH0, has internal 150 ms delay
  temp_probes.selectChannel(0);
  //Take CH0 measurement
  float temp_ch0 = temp_probes.tc.readTemperature();
  
  Serial.print("Temperature CH0 [°C]: ");
  Serial.print(temp_ch0);
  Serial.println();
  /*
  float raw_voltage_ch0 = analog_in.read(0);
  float voltage_ch0 = (raw_voltage_ch0 * reference) / 65535 / res_divider;
  Serial.print("Voltage CH0: ");
  Serial.print(voltage_ch0, 3);
  Serial.println("V");

  float raw_voltage_ch1 = analog_in.read(1);
  float voltage_ch1 = (raw_voltage_ch1 * reference) / 65535 / res_divider;
  Serial.print("Voltage CH1: ");
  Serial.print(voltage_ch1, 3);
  Serial.println("V");

  float raw_voltage_ch2 = analog_in.read(2);
  float voltage_ch2 = (raw_voltage_ch2 * reference) / 65535 / res_divider;
  Serial.print("Voltage CH2: ");
  Serial.print(voltage_ch2, 3);
  Serial.println("V");
  Serial.println();
  */

  std::cout << "Hello, Cortex-M7!" << std::endl;
  
  delay(250);
}
