TC1046

TC1046 is a temperatures sensor IC (-40 °C to +125 °C) made by Microchip Technology. This posting will provide the OSS-ECAL(Open Source Software for Electronic Components Abstraction Layer) for TC1046.
MCU interface : ADC

CAUTION:Please be sure to refer to the latest version of the Datasheet prior to actual design.

TC1046

General description

The TC1046 is a linear output temperature sensor whose output voltage is directly proportional to measured temperature. The TC1046 can accurately measure temperature from -40°C to +125°C.
The output voltage range for these devices is typically 174mV at -40°C, 424mV at 0°C, 580 mV at +25°C, and 1205mV at +125°C. A 6.25mV/°C voltage slope allows for the wide temperature range.
The TC1046 is packaged in a 3-Pin SOT-23B package, making them ideal for space critical applications.

Feature
  • Supply Voltage Range:2.7V to 4.4V
  • Wide Temperature Measurement Range:-40°C to +125°C
  • High Temperature Converter Accuracy:± 2°C, Max, at 25°C
  • Linear Temperature Slope: 6.25 mV/°C
  • Very Low Supply Current:35 µA Typical
  • Small 3-Pin SOT-23B Package
Application
  • Cellular Phones
  • Power Supply Thermal Shutdown
  • Temperature-Controlled Fans
  • Temperature Measurement/Instrumentation
  • Temperature Regulators
  • Consumer Electronics
  • Portable Battery-Powered Equipment

OSS-ECAL specification

API Function

etSTS oTC1046( etCMD cmd, float32* rlt )

Return value
Parameter IN
Parameter OUT

etSTS
etCMD cmd
float32* rlt

OSS-ECAL status code
OSS-ECAL command code
Temperature -40 to 125 [°C]

etCMD
eCMD_START


Feature :
Command to start AD conversion.

Process :
1. AD conversion start.

Command API function :
etSTS oTC1046_START( void )

Return value :
eSTS_FIN
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :
Arduino, Mbed, ModusToolbox not supported.

eCMD_READ

Feature :
Command that reads the AD conversion value, converts the AD conversion value to a characteristic Temperature, and stores the Temperature in rlt.

Process :
1. Read AD conversion value.
2. Convert AD conversion value to Temperature.
Voltage value = (AD conversion value × VDD) / ( 2AD bit )
Temperature = ((voltage value – voltage offset value) / gain) + Temperature offset value (Min, Max Limit)
3. Store Temperature to rlt.

Command API function :
etSTS oTC1046_READ( float32* rlt )

Return value :
eSTS_FIN
eSTS_ERR_MIN
eSTS_ERR_MAX
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :
Please execute this API function after starting AD conversion.
Arduino, Mbed, ModusToolbox not supported.

eCMD_START_READ

Feature :
Command that starts AD conversion, waits for AD conversion to finish, reads out the AD conversion value, converts the AD conversion value to a characteristic Temperature, and stores the Temperature in rlt.

Process :
1. AD conversion start.
2. Wait until AD conversion is completed.
3. Read AD conversion value.
4. Convert AD conversion value to Temperature.
Voltage value = (AD conversion value × VDD) / ( 2AD bit )
Temperature = ((voltage value – voltage offset value) / gain) + Temperature offset value (Min, Max Limit)
5. Store Temperature to rlt.

Command API function :
etSTS oTC1046_START_READ( float32* rlt )

Return value :
eSTS_FIN
eSTS_ERR_MIN
eSTS_ERR_MAX
eSTS_ERR_HAL_ADC
eSTS_ERR_COMMAND_CODE
eSTS_ERR_OTHERS_RUN
eSTS_ERR_ADC_OBJECT

NOTE :

Files
Folder*Filesummary
TC1046_HALNAME/samplesample.c (.cpp)Sample Application Program
sample.hSample Application Header
TC1046_HALNAMEoTC1046.c (.cpp)OSS-ECAL Program for TC1046
oTC1046.hOSS-ECAL Header for TC1046
oss_ecal.hOSS-ECAL Common Header (Ver 01.00.00 or later)
user_setting.c (.cpp)Const and Table of User setting
user_setting.hHeader of User setting
readme.mdReadme
OSS-ECAL Terms of Use.txtOSS-ECAL Terms of Use

* For HALNAME, please refer to HAL Support.

HAL Support List
MCU/Board
manufacturer
HALMCU*Development environment*HALNAME
ArduinoArduino 1.8.6ATmega2560
ATmega328P
Mega 2560 Rev3
Arduino Pro Mini 3.3V
ARDUINO
ARMMbed 6.17.0STM32F401RETxSTM32 Nucleo-64 boardsMBED
InfineonModusToolbox HAL Cat1 2.4.3CYBLE-416045-02CY8CPROTO-063-BLE PSoC 6 BLE Prototyping KitModusToolbox
NXPMCUXpresso SDK
iMXRT1051B_1052B
ksdk2_0
CYBLE-416045-02IMXRT1050-EVKBiMXRT1051B1052B
RenesasSSP 2.4.0R7FS7G27H3A01CFCS7G2 SKSSP
STMSTM32Cube FW_F4 V1.27.1STM32F401RETxSTM32 Nucleo-64 boardsSTM32F4
Debian ProjectDebian(Linux) v2022.04TI AM335xBeagleBone Black – Rev CLinux

* MCU and development environment at the time of development. Even if the same HAL is used, different MCUs and development environments may not work together.

OSS-ECAL Download

Please login before downloading. To register as a new user, please click here.
This OSS-ECAL is a sample version and can be downloaded without user registration, but please accept the OSS-ECAL Terms of Use before downloading.

Built-in How to

How to incorporate OSS-ECAL into user programs

How to incorporate multiple OSS-ECALs in a user program (same MCU function)

How to incorporate multiple OSS-ECALs in a user program (different MCU function)

How to incorporate multiple identical electronic components into a user program

How to reduce the impact on user programs by replacing electronic components

OSS-ECAL English
error: Content is protected !!