MikroElektronika
Temp-Log 3 Click
Temp-Log 3 Click
SKU:MIKROE-3326
Couldn't load pickup availability
Share
The MCP9843 IC meets JEDEC specification JC42.4-TSE3000B3 and JC42.4-TSE2002B3, allowing it to be used as a thermal sensor for memory modules. The MCP9843 is designed specifically for DRAM DIMMs (Dual In-line Memory Modules), allowing the Serial Presence Detect (SPD) feature. However, its use is not limited only to memory modules. The presence of EEPROM can be utilized for many different tasks: recording of temperature peaks, storage of various thermal event alerts, and similar. This makes Temp-Log 3 a great choice for development of various embedded applications based on temperature measurement and data logging.
How does it work?
Temp-Log 3 click is equipped with the MCP9843 IC, a temperature sensor with EEPROM, by Microchip. This IC is used to convert the temperature measurement into digital information. Besides the thermal sensor, this IC also features 256 bytes of EEPROM on the same die. It is compliant with the JEDEC specification JC42.4-TSE3000B3 and JC42.4-TSE2002B3 since it is designed specifically for DRAM DIMMs (Dual In-line Memory Modules), allowing the Serial Presence Detect (SPD) feature. However, it is not limited only to this role: it can be used as a very accurate general-purpose thermometer with the added benefit of integrated EEPROM, reducing the number of physical ICs required to design a temperature logging application. Temp-Log 3 click utilizes the I2C serial interface (SMBus compatible), which allows it to be used in a wide range of applications.
The temperature sensor section includes all the features typically found on such ICs. Most of its interrupt engine features are very similar (or identical) to features found in Thermo 8 click, which is based on the MCP9808 IC. This includes the interrupt and thermometer modes, alert pin configuration, hysteresis of the temperature thresholds, critical temperature alert feature, and so on. The EVENT pin of the IC is routed to the INT pin of the Click board™. It is pulled to a HIGH logic level by a resistor, so the polarity should be programmed accordingly, the same as in the case of Thermo 8 click. However, there are some minor differences including the EEPROM section, which will be discussed.
The MCP9843 features the CAPABILITIES register, unlike the MCP9808 IC. This register is a read-only register and it provides some general information, such as the factory-specified accuracy in the upper-temperature range (+75°C to +95°C and +40°C to +125°C), measurement range, resolution, and other parameters of the sensor. Its description, along with the description of other registers, can be found in the MCP9843 datasheet.
Although the output temperature register is of the same width as the one used in MCP9808 (16 bits), there are 12 bits of thermal data available along with the sign bit, in the 2’s complement format. All the user-configurable registers in the MCP9843 are 16 bits wide. However, not all 16 bits are used, in most cases.
Both the temperature and the EEPROM section have their own I2C address. The I2C address is determined by four fixed bit values, while the last three bits (LSBs) are determined by the logic states applied to A2, A1, and A0. While A2 and A1 address are hard-wired to a LOW logic level on this Click board™, the value of the A0 address bit can be changed by switching the SMD jumper labeled as ADDR SEL to either 0 (tied to GND) or 1 (tied to VCC). The datasheet of the MCP9843 offers a table with the content of these four bits for each section of the IC.
By switching the SMD jumper labeled as VCC SEL, the logic voltage level of the I2C bus can be selected between 3.3V and 5V. This allows Temp-Log 3 click to be interfaced with both 3.3V and 5V MCUs. Note, however, that the MCP9843 is supplied with power from the mikroBUS™ 3.3V rail, regardless of the VCC SEL jumper position.
Specifications
Type | Humidity,Temperature |
Applications | Temp-Log 3 is a great solution for the development of various embedded applications based on temperature measurement and data logging. |
On-board modules | MCP9843 IC, a temperature sensor with EEPROM, by Microchip |
Key Features | A very high measurement accuracy and repeatability, programmable thresholds and hysteresis, a dedicated EVENT pin with a programmable function, selectable resolution, 256 bytes of integrated EEPROM, and more |
Interface | I2C |
Input Voltage | 3.3V,5V |
Click board size | M (42.9 x 25.4 mm) |
Pinout diagram
This table shows how the pinout on Temp-Log 3 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
PWR | PWR | - | Power LED indicator |
JP1 | VCC SEL | Left | Logic voltage level selection: left position 3.3V, right position 5V |
JP2 | VCC SEL | Left | I2C slave address selection: left position 0 (GND), right position 1 (VCC) |
Software support
We provide a library for the Temp-Log 3 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library performs a control of the Temp-Log 3 Click board. There are a functions that offer a choice to measure the ambient temperature and set a temperature limit values to generate alarm. The library also can save a desired configurations or temperature values to the EEPROM, which has size of 256 bytes. For more details check documentation.
Key functions:
-
T_TEMPLOG3_RETVAL templog3_writeReg( uint8_t regAddr, uint16_t dataIn )
- Function writes a 16bit data to the desired register. -
T_TEMPLOG3_RETVAL templog3_getTemp( uint8_t tempSel, T_TEMPLOG3_DEG *tempOut )
- Function gets a temperature value from the desired temperature register calculated to the Celsius degrees. -
T_TEMPLOG3_RETVAL templog3_setTemp( uint8_t tempSel, T_TEMPLOG3_DEG tempIn )
- Function sets a desired temperature register on the desired value calculated to the Celsius degrees. -
void templog3_eepromByteWrite( uint8_t regAddr, uint8_t dataIn, uint8_t eepromMode )
- Function writes a one byte data to the EEPROM including/excluding a write protection.
Examples description
The application is composed of the three sections :
- System Initialization - Initializes peripherals and pins.
- Application Initialization - Initializes I2C interface and performs a device configuration for properly working. Also sets the temperature limit to the desired values.
- Application Task - (code snippet) - First ensures that the minimum conversion time is met, and then reads the ambient temperature calculated to the Celsius degrees. Also checks the limit status and shows a message when some limit condition is met. Note : The temperature range that can be measured or written is from -40 to +125 Celsius degrees. The user can change the measured temperature resolution, but the range remains the same. The limit temperature resolution is always a 10bit, or 0.25 Celsius degrees. If user wants to enable the EEPROM Write Protection, the A0 pin on the device must be set to the high voltage level.
void applicationTask() { templog3_waitConvDone(); retStatus = templog3_getTemp( _TEMPLOG3_TEMP_AMBIENT_REG, &temperature ); FloatToStr( temperature, text ); floatCut(); mikrobus_logWrite( "** Ambient temperature is : ", _LOG_TEXT ); mikrobus_logWrite( text, _LOG_TEXT ); logUnit(); mikrobus_logWrite( " **", _LOG_LINE ); checkLimitStatus(); Delay_ms( 300 ); }
Additional Functions :
- floatCut - Makes that float values be rounded on two decimal places.
- logUnit - Writes a Celsius degrees symbol on uart terminal.
- checkLimitStatus - Checks the limit status for each temperature reading cycle and writes a message on uart terminal when some limit condition is met.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
Conversions
I2C
UART
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.




New Products
-
Sold out
OAK-FFC IMX577 M12
Vendor:POLOLURegular price Rs. 8,499.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 20A
Vendor:POLOLURegular price Rs. 329.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 25A
Vendor:POLOLURegular price Rs. 439.00Regular priceUnit price / perSold out -
Pololu I²C Isolator, ISO1640
Vendor:POLOLURegular price Rs. 449.00Regular priceUnit price / per -
3pi+ 32U4 OLED Robot Kit with 30:1 MP Motors (Standard Edition Kit)
Vendor:POLOLURegular price Rs. 15,549.00Regular priceUnit price / per -
Conductivity Calibration K 1.0 Set (4 pouches)
Vendor:Atlas ScientificRegular price Rs. 1,599.00Regular priceUnit price / perSold out -
Analog Discovery 3 Pro Bundle
Vendor:DigilentRegular price Rs. 42,569.00Regular priceUnit price / per -
Lighthouse swarm bundle - Crazyflie 2.1+ (250mAh batteries)
Vendor:BitcrazeRegular price Rs. 474,999.00Regular priceUnit price / perSold out -
Loco Swarm bundle - Crazyflie 2.1+ (250mAh batteries)
Vendor:BitcrazeRegular price Rs. 544,999.00Regular priceUnit price / perSold out -
Kopis X8 Cinelifter 5" Kit - Caged (Frame Kit)
Vendor:HolybroRegular price Rs. 28,199.00Regular priceUnit price / per -
Atlas Scientific i3 InterLink
Vendor:Atlas ScientificRegular price Rs. 6,349.00Regular priceUnit price / per -
Sold out
PoE Injector
Vendor:LuxonisRegular price Rs. 2,099.00Regular priceUnit price / perSold out -
Sold out
1-Port VINT Hub Phidget
Vendor:PhidgetsRegular price Rs. 2,699.00Regular priceUnit price / perSold out -
Holybro 1045 Propeller 2 Pair CW+CCW-Black
Vendor:HolybroRegular price Rs. 1,549.00Regular priceUnit price / per -
ACS37220LEZATR-100B3 Current Sensor Large Carrier -100A to +100A, 3.3V
Vendor:POLOLURegular price Rs. 829.00Regular priceUnit price / per -
CT433-HSWF50MR TMR Current Sensor Compact Carrier -50A to +50A, 3.3V
Vendor:POLOLURegular price Rs. 1,039.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Adjustable Current, Blue Edition
Vendor:POLOLURegular price Rs. 409.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Fixed 1A@5V / 660mA@3.3V, Blue Edition (Soldered Header Pins)
Vendor:POLOLURegular price Rs. 489.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Fixed 500mA@5V / 330mA@3.3V (Soldered Header Pins)
Vendor:POLOLURegular price Rs. 469.00Regular priceUnit price / per -
T Connector Male-Female Pair
Vendor:POLOLURegular price Rs. 169.00Regular priceUnit price / per -
Pololu Reverse Voltage Protector, 4-60V, 10A
Vendor:POLOLURegular price Rs. 159.00Regular priceUnit price / per -
Pololu Reverse Voltage Protector, 4-60V, 12A
Vendor:POLOLURegular price Rs. 199.00Regular priceUnit price / per -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 10A
Vendor:POLOLURegular price Rs. 179.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 12A
Vendor:POLOLURegular price Rs. 229.00Regular priceUnit price / perSold out -
Pololu Mini Plastic Gearmotor Bracket Pair - Tall
Vendor:POLOLURegular price Rs. 599.00Regular priceUnit price / per