Commit Iniziale, progetto funzionante caricato su box ETcontroller in
cantina
This commit is contained in:
31
MAX6675/MAX6675.cpp
Normal file
31
MAX6675/MAX6675.cpp
Normal file
@@ -0,0 +1,31 @@
|
||||
#include "MAX6675.h"
|
||||
|
||||
Thermo::Thermo(SPI* dev=0, PinName p=D0){
|
||||
device = dev;
|
||||
cs = new DigitalOut(p);
|
||||
cs->write(OFF);
|
||||
}
|
||||
|
||||
Thermo::~Thermo(){
|
||||
cs->write(OFF);
|
||||
device->unlock();
|
||||
}
|
||||
|
||||
char Thermo::readTemp(float* temp){
|
||||
uint16_t data,t,s;
|
||||
readRaw(&data);
|
||||
t=(data & 0x7FF8)>>3;
|
||||
s=(data & 0x0004)>>2;
|
||||
*temp=t*0.25;
|
||||
return s;
|
||||
}
|
||||
|
||||
void Thermo::readRaw(uint16_t* data){
|
||||
uint16_t d;
|
||||
cs->write(ON);
|
||||
device->lock();
|
||||
d=device->write(0x0000);
|
||||
device->unlock();
|
||||
cs->write(OFF);
|
||||
*data = d;
|
||||
}
|
||||
Reference in New Issue
Block a user