NHS31xx SW API
tsen_nss.h
1 /*
2  * Copyright 2014-2020 NXP
3  * This software is owned or controlled by NXP and may only be used strictly
4  * in accordance with the applicable license terms. By expressly accepting
5  * such terms or by downloading, installing, activating and/or otherwise using
6  * the software, you are agreeing that you have read, and that you agree to
7  * comply with and are bound by, such license terms. If you do not agree to
8  * be bound by the applicable license terms, then you may not retain, install,
9  * activate or otherwise use the software.
10  */
11 
12 #ifndef __TSEN_NSS_H_
13 #define __TSEN_NSS_H_
14 
82 typedef struct NSS_TSEN_S {
83  __IO uint32_t CR;
84  __I uint32_t DR;
85  __I uint32_t SR;
86  __IO uint32_t SP0;
88  __IO uint32_t SP1;
89  __IO uint32_t SP2;
90  __IO uint32_t SP3;
91  __IO uint32_t TLO;
92  __IO uint32_t THI;
93  __IO uint32_t IMSC;
95  __I uint32_t RIS;
97  __I uint32_t MIS;
99  __O uint32_t ICR;
101 } NSS_TSEN_T;
102 
104 typedef enum TSEN_RESOLUTION {
112 
114 typedef enum TSEN_STATUS {
122 } TSEN_STATUS_T;
123 
125 typedef enum TSEN_INT {
130  TSEN_INT_ALL = 0x0F
131 } TSEN_INT_T;
132 
143 void Chip_TSen_Init(NSS_TSEN_T *pTSen);
144 
151 void Chip_TSen_DeInit(NSS_TSEN_T *pTSen);
152 
158 void Chip_TSen_SetResolution(NSS_TSEN_T *pTSen, TSEN_RESOLUTION_T resolution);
159 
166 
173 void Chip_TSen_Start(NSS_TSEN_T *pTSen);
174 
188 
198 int Chip_TSen_GetValue(NSS_TSEN_T *pTSen);
199 
209 int Chip_TSen_NativeToKelvin(int native, int multiplier);
210 
220 int Chip_TSen_KelvinToNative(int kelvin, int multiplier);
221 
231 int Chip_TSen_NativeToCelsius(int native, int multiplier);
232 
242 int Chip_TSen_CelsiusToNative(int celsius, int multiplier);
243 
253 int Chip_TSen_NativeToFahrenheit(int native, int multiplier);
254 
264 int Chip_TSen_FahrenheitToNative(int fahrenheit, int multiplier);
265 
273 void Chip_TSen_Int_SetThresholdLow(NSS_TSEN_T *pTSen, int native);
274 
283 
291 void Chip_TSen_Int_SetThresholdHigh(NSS_TSEN_T *pTSen, int native);
292 
301 
308 
315 
323 
330 
331 #endif
TSEN_STATUS_T
Definition: tsen_nss.h:114
int Chip_TSen_NativeToKelvin(int native, int multiplier)
int Chip_TSen_NativeToFahrenheit(int native, int multiplier)
Definition: tsen_nss.h:110
Definition: tsen_nss.h:127
void Chip_TSen_Int_ClearRawStatus(NSS_TSEN_T *pTSen, TSEN_INT_T flags)
__I uint32_t MIS
Definition: tsen_nss.h:97
void Chip_TSen_Int_SetThresholdLow(NSS_TSEN_T *pTSen, int native)
__I uint32_t SR
Definition: tsen_nss.h:85
void Chip_TSen_DeInit(NSS_TSEN_T *pTSen)
Definition: tsen_nss.h:118
__IO uint32_t CR
Definition: tsen_nss.h:83
TSEN_STATUS_T Chip_TSen_ReadStatus(NSS_TSEN_T *pTSen, TSEN_RESOLUTION_T *pResolution)
void Chip_TSen_SetResolution(NSS_TSEN_T *pTSen, TSEN_RESOLUTION_T resolution)
__IO uint32_t SP2
Definition: tsen_nss.h:89
Definition: tsen_nss.h:109
Definition: tsen_nss.h:120
TSEN_RESOLUTION_T
Definition: tsen_nss.h:104
__O uint32_t ICR
Definition: tsen_nss.h:99
Definition: tsen_nss.h:128
Definition: tsen_nss.h:105
__IO uint32_t SP3
Definition: tsen_nss.h:90
#define __IO
Definition: core_cm0plus.h:167
TSEN_INT_T Chip_TSen_Int_GetRawStatus(NSS_TSEN_T *pTSen)
#define __I
Definition: core_cm0plus.h:164
Definition: tsen_nss.h:121
int Chip_TSen_Int_GetThresholdHigh(NSS_TSEN_T *pTSen)
__IO uint32_t TLO
Definition: tsen_nss.h:91
Definition: tsen_nss.h:116
void Chip_TSen_Int_SetThresholdHigh(NSS_TSEN_T *pTSen, int native)
Definition: tsen_nss.h:126
int Chip_TSen_FahrenheitToNative(int fahrenheit, int multiplier)
int Chip_TSen_GetValue(NSS_TSEN_T *pTSen)
int Chip_TSen_Int_GetThresholdLow(NSS_TSEN_T *pTSen)
Definition: tsen_nss.h:108
Definition: tsen_nss.h:119
__IO uint32_t IMSC
Definition: tsen_nss.h:93
TSEN_INT_T
Definition: tsen_nss.h:125
TSEN_RESOLUTION_T Chip_TSen_GetResolution(NSS_TSEN_T *pTSen)
void Chip_TSen_Init(NSS_TSEN_T *pTSen)
void Chip_TSen_Int_SetEnabledMask(NSS_TSEN_T *pTSen, TSEN_INT_T mask)
Definition: tsen_nss.h:82
#define __O
Definition: core_cm0plus.h:166
void Chip_TSen_Start(NSS_TSEN_T *pTSen)
Definition: tsen_nss.h:115
Definition: tsen_nss.h:129
__I uint32_t DR
Definition: tsen_nss.h:84
__IO uint32_t SP0
Definition: tsen_nss.h:86
Definition: tsen_nss.h:130
Definition: tsen_nss.h:117
Definition: tsen_nss.h:106
__IO uint32_t SP1
Definition: tsen_nss.h:88
int Chip_TSen_CelsiusToNative(int celsius, int multiplier)
Definition: tsen_nss.h:107
__IO uint32_t THI
Definition: tsen_nss.h:92
int Chip_TSen_NativeToCelsius(int native, int multiplier)
TSEN_INT_T Chip_TSen_Int_GetEnabledMask(NSS_TSEN_T *pTSen)
int Chip_TSen_KelvinToNative(int kelvin, int multiplier)
__I uint32_t RIS
Definition: tsen_nss.h:95