This function returns the temperature reported by the channel as a floating point value.
float temperature = P1.readTemperature(1, 2); // Reads slot 1 channel 2 of the P1-04THM
Note: While this module can be used for voltage inputs, you still need to use the "readTemperature" function as the voltage is reported as a floating point number.
Configuration Tool
Module Configuration and Status Tables
We recommend using the status functions and configuration tool. These tables are provided as additional reference.
Module Status Data
Bytes | (MSB) 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 (LSB) | Description |
---|---|---|---|---|---|---|---|---|---|
Byte 0 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 1 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 2 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 3 | x | x | x | x | x | 2 | x | 0 | bit 2 - Module not ready |
bit 1 is undefined | |||||||||
bit 0 - Module diagnostics failure | |||||||||
Byte 4 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 5 | x | x | x | x | 3 | 2 | 1 | 0 | bit 3 - Burnout error on channel 4 |
bit 2 - Burnout error on channel 3 | |||||||||
bit 1 - Burnout error on channel 2 | |||||||||
bit 0 - Burnout error on channel 1 | |||||||||
Byte 6 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 7 | x | x | x | x | 3 | 2 | 1 | 0 | bit 3 - Under range error on channel 4 |
bit 2 - Under range error on channel 3 | |||||||||
bit 1 - Under range error on channel 2 | |||||||||
bit 0 - Under range error on channel 1 | |||||||||
Byte 8 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 9 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 10 | x | x | x | x | x | x | x | x | bits 0-7 are undefined |
Byte 11 | x | x | x | x | 3 | 2 | 1 | 0 | bit 3 - Over range error on channel 4 |
bit 2 - Over range error on channel 3 | |||||||||
bit 1 - Over range error on channel 2 | |||||||||
bit 0 - Over range error on channel 1 |
Module Configuration Data
Default values are in bold.
Offset | Description | Allowable Values | Value Description |
---|---|---|---|
Bytes 00-01 | Channel enable | 0x4000 | Enable channel 1 |
0x4001 | Enable channels 1 and 2 | ||
0x4002 | Enable channels 1-3 | ||
0x4003 | Enable channels 1-4 | ||
Bytes 02-03 | Burnout and Units | 0x6001 | Low side Burnout (min scale)/Temp in degrees C |
0x6003 | High side Burnout (max scale)/Temp in degrees C | ||
0x6005 | Low side Burnout (min scale)/Temp in degrees F | ||
0x6007 | High side Burnout (max scale)/Temp in degrees F | ||
Bytes 04-05 | Channel 1 Range | 0x210r | |
r = 0 | J | ||
r = 1 | K | ||
r = 2 | E | ||
r = 3 | R | ||
r = 4 | S | ||
r = 5 | T | ||
r = 6 | B | ||
r = 7 | N | ||
r = 8 | C | ||
r = 9 | 0-39mV | ||
r = A | +/-39mV | ||
r = B | +/-78mV | ||
r = C | 0-156mV | ||
r = D | +/-156mV | ||
r = E | 0-1.25V | ||
Bytes 06-07 | Channel 2 Range | 0x220r | See CH1 |
Bytes 08-09 | Channel 3 Range | 0x230r | See CH1 |
Bytes 10-11 | Channel 4 Range | 0x240r | See CH1 |
Bytes 12-13 | Reserved | 0x0000 | Reserved |
Bytes 14-15 | Reserved | 0x0000 | Reserved |
Bytes 16-17 | Reserved | 0x0000 | Reserved |
Bytes 18-19 | Reserved | 0x0000 | Reserved |
Channels: 4
Thermocouples Types: J, E, K, R, S, T, B, N, and C.
Voltage Ranges: 0-39.0625 mVDC, ±39.0625 mVDC, ±78.125 mVDC, 0-156.25 mVDC, ±156.25 mVDC, 0-1250
mVDC.
Resolution: Temperature: ±0.1 °C or °F Voltage: 16 bit (Formatted as a float)
Examples:
Arduino
CircuitPython
Additional Resources:
Data Sheet
P1-04THM
on AutomationDirect.com