Arduino(20) 熱電対温度計 バージョン2
熱電対で計測した温度を、LCDに表示します。
回路図

スケッチ

#include <LiquidCrystal_I2C.h>
#include <SPI.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // LCDのアドレス 0x27 LCD 16×2
int readDATA;//MAX6675のデータ格納変数
SPISettings MAX6675Setting (4000000, MSBFIRST, SPI_MODE0);
void setup() {
SPI.begin();
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
}
void loop() {
SPI.beginTransaction(MAX6675Setting);
digitalWrite(SS, LOW);
readDATA = SPI.transfer(0xFF) << 8;
readDATA = readDATA + SPI.transfer(0xFF);
digitalWrite(SS, HIGH);
SPI.endTransaction();
lcd.setCursor(0, 0);
lcd.print(readDATA, HEX);
lcd.print(" ");
lcd.print(readDATA >> 3);
lcd.print(" ");
lcd.print(readDATA >> 3, HEX);
lcd.setCursor(0, 1);
lcd.print((readDATA >> 3) * 0.25);
lcd.print(" Deg C");
delay(1000);
}
結果

配線がぐちゃぐちゃになってしまいました。二行目に摂氏温度が表示されています。



















