My favorites | Sign in
Project Home Downloads Issues Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "MAX6675.h"

#include <WProgram.h>

MAX6675::MAX6675(uint8_t pin) :
cs(pin)
{
pinMode(cs, OUTPUT);
digitalWrite(cs, HIGH);
setup();
}

void MAX6675::setup()
{
// setup_spi(SPI_MODE_1, SPI_MSB, SPI_NO_INTERRUPT, SPI_MSTR_CLK8);
SPI.setBitOrder(MSBFIRST);
SPI.setClockDivider(SPI_CLOCK_DIV8);
SPI.setDataMode(SPI_MODE1);
SPI.begin();
}

int16_t MAX6675::read()
{
digitalWrite(cs, LOW);
uint8_t highByte = SPI.transfer(0);
uint8_t lowByte = SPI.transfer(0);
digitalWrite(cs, HIGH);
if (lowByte & (1<<2)) {
return -400;
}
else {
return (highByte << 5 | lowByte>>3);
}
}


Change log

r12 by and...@rocketnumbernine.com on Nov 28, 2011   Diff
First Version
Go to: 
Project members, sign in to write a code review

Older revisions

All revisions of this file

File info

Size: 657 bytes, 36 lines
Powered by Google Project Hosting