Hi,
I am trying to connect 8 thermocouple boards (4 x MAX31855 and 4 x MAX31856) to one teensy 3.6. I managed to get one MAX31855 working. How do I add the rest to the code. I know that the DO and CLK pins could be shared with all boards and each board has to have it's own CS pin that has to be high to read from that board. How do I do that?
Thanks a bunch
I am trying to connect 8 thermocouple boards (4 x MAX31855 and 4 x MAX31856) to one teensy 3.6. I managed to get one MAX31855 working. How do I add the rest to the code. I know that the DO and CLK pins could be shared with all boards and each board has to have it's own CS pin that has to be high to read from that board. How do I do that?
Thanks a bunch
Code:
/***************************************************
This is an example for the Adafruit Thermocouple Sensor w/MAX31855K
Designed specifically to work with the Adafruit Thermocouple Sensor
----> https://www.adafruit.com/products/269
These displays use SPI to communicate, 3 pins are required to
interface
Adafruit invests time and resources providing this open source code,
please support Adafruit and open-source hardware by purchasing
products from Adafruit!
Written by Limor Fried/Ladyada for Adafruit Industries.
BSD license, all text above must be included in any redistribution
****************************************************/
#include <SPI.h>
#include "Adafruit_MAX31855.h"
// Default connection is using software SPI, but comment and uncomment one of
// the two examples below to switch between software SPI and hardware SPI:
// Example creating a thermocouple instance with software SPI on any three
// digital IO pins.
#define MAXDO 30
#define MAXCS 31
#define MAXCLK 32
// initialize the Thermocouple
Adafruit_MAX31855 thermocouple(MAXCLK, MAXCS, MAXDO);
void setup() {
Serial.begin(9600);
while (!Serial) delay(1); // wait for Serial on Leonardo/Zero, etc
Serial.println("MAX31855 test");
// wait for MAX chip to stabilize
delay(500);
}
void loop() {
// basic readout test, just print the current temp
Serial.print("Internal Temp = ");
Serial.println(thermocouple.readInternal());
double c = thermocouple.readCelsius();
if (isnan(c)) {
Serial.println("Something wrong with thermocouple!");
} else {
Serial.print("C = ");
Serial.println(c);
}
Serial.print("F = ");
Serial.println(thermocouple.readFahrenheit());
delay(1000);
}