MAX31855 Arduino Library
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Developed By:
- Alec N., Control Connection
- Ryan McLaughlin [email protected]
- Yves Touchette (Code fixes, thanks!)
- John Howe and Fred Cooke (formatting and clarity fixes)
Versions
###v1.0.0
- fixed negative output values
- fixed variable type issues
###v1.0.0.beta2
- Updated example with new Arduino 1.0 file extension
- Added the blinking LED to the Examples
- Added a temperature unit to the readMAX31855() function
- Debugged both examples using MAX31855 Arduino shields on a Uno R3
###v1.0.0.beta1
- Some math errors fixed that rounded numbers where they should not have been. This caused issues when temperatures were displaying wrong.
- Fixed misspelling of readFahrenheit().
- Updated calls and variable names to make them easier to understand and flow Arduino format.
- Added unit setting.
- Fixed compile issues for Arduino v1.0.
- Tested code on Uno R3 with Single Shield.
###v0.5.0
- Initial release. For use with pre-1.0 Arduino software only.
Summary
The primary use of the library is to easily interface with a MAX31855 chip via the SPI interface. Use the following code to initialize the library.
MAX31855 temp(SCK,CS,SO);
Variables:
- CS is chip select pin of chip
- SO is data out of the chip
- SCK is the clock pin of the chip
Hardware
There are many places you can find MAX31855 interface boards, or you can integrate it into your own design. If you are looking for a breakout, you can check out ryanjmclaughlin.com.
TODO
- read_max31855.pde: Clean up code and comment!!
- read_max31855.pde: make use of all library functions and make more robust.
- finish documenting functions in readme
Functions
readMAX31855
bool readMAX31855(double *tempTC, double *tempCJC, bool *faultOpen, bool *faultShortGND, bool *faultShortVCC);
x = temp.readMAX31855(&tempTC, &tempCJC, &faultOpen, &faultShortGND, &faultShortVCC);
readCelsius
double readCelsius(void);
readFarenheit
double readFahrenheit(void);
readCJC
double readCJC(void);
readFaultCode
uint8_t readFaultCode(void);