ATY_LIB V2_102_230218
ATY_LIB for general devices or ALGO
 
Loading...
Searching...
No Matches
AHT20_ATY.h File Reference

Familiar functions of AHT20 for all embedded device. More...

#include "INCLUDE_ATY.h"
#include "HW_I2C_ATY.h"

Go to the source code of this file.

Macros

#define ATH20_ADDRESS   0x38
 
#define AHT20_SOFT_RST   0xBA
 
#define AHT20_NOR_MODE   0xA8
 
#define AHT20_INIT   0xBE
 
#define AHT20_TRIG_MEASURE   0xAC
 
#define AHT20_STATUS   0x00
 

Functions

uint8_t AHT20_TemHumGet (uint16_t *ht)
 

Detailed Description

Familiar functions of AHT20 for all embedded device.

Parameters
ProjectDEVICE_GENERAL_ATY_LIB
Author
ATY
Version
  • 1_01_220804 > ATY
    1. Preliminary version, first Release

Definition in file AHT20_ATY.h.

Macro Definition Documentation

◆ AHT20_INIT

#define AHT20_INIT   0xBE

Definition at line 41 of file AHT20_ATY.h.

◆ AHT20_NOR_MODE

#define AHT20_NOR_MODE   0xA8

Definition at line 40 of file AHT20_ATY.h.

◆ AHT20_SOFT_RST

#define AHT20_SOFT_RST   0xBA

Definition at line 39 of file AHT20_ATY.h.

◆ AHT20_STATUS

#define AHT20_STATUS   0x00

Definition at line 43 of file AHT20_ATY.h.

◆ AHT20_TRIG_MEASURE

#define AHT20_TRIG_MEASURE   0xAC

Definition at line 42 of file AHT20_ATY.h.

◆ ATH20_ADDRESS

#define ATH20_ADDRESS   0x38

Definition at line 38 of file AHT20_ATY.h.

Function Documentation

◆ AHT20_TemHumGet()

uint8_t AHT20_TemHumGet ( uint16_t ht)

Definition at line 271 of file AHT20_ATY.c.

272{
273 if(AHT20_InitFlag == 0)
274 {
275 if(AHT20_Init() == 1)
276 {
277 AHT20_InitFlag = 2; // init fail
278 }
279 else
280 {
281 AHT20_InitFlag = 1;
282 }
283 }
284 if(AHT20_InitFlag == 2)
285 {
286#ifdef __DEBUG_AHT20_ATY
287 printf("\r\n0xFF");
288#endif /* __DEBUG_AHT20_ATY */
289 return 0xFF;
290 }
291 else if(AHT20_InitFlag == 1)
292 {
293 // Init success
294 uint32_t tempHT_uint32[2] = {0};
295 float tempHT_f[2] = {0};
296 if(AHT20_ReadHT(tempHT_uint32) == 0)
297 {
298 if((tempHT_uint32[0] && tempHT_uint32[1]) != 0)
299 {
300 AHT20_CalcResult(tempHT_uint32, tempHT_f);
301 ht[0] = ((tempHT_f[0] * 1000) + 5) / 10;
302 ht[1] = ((tempHT_f[1] * 1000) + 5) / 10;
303#ifdef __DEBUG_AHT20_ATY
304 printf("\r\nHum: %.2f - Tem: %.2f", tempHT_f[0], tempHT_f[1] - 50);
305#endif /* __DEBUG_AHT20_ATY */
306 }
307 else
308 {
309#ifdef __DEBUG_AHT20_ATY
310 printf("\r\n0xFD");
311#endif /* __DEBUG_AHT20_ATY */
312 return 0xFD;
313 }
314 }
315 else
316 {
317#ifdef __DEBUG_AHT20_ATY
318 printf("\r\n0xFE");
319#endif /* __DEBUG_AHT20_ATY */
320 return 0xFE;
321 }
322 }
323
324 return 0;
325}
uint8_t AHT20_Init(void)
AHT20 all initialize.
Definition: AHT20_ATY.c:161
uint8_t AHT20_CalcResult(uint32_t *ht, float *aht)
calculate result from 20bit origin data, RH=%, T=C
Definition: AHT20_ATY.c:253
uint8_t AHT20_InitFlag
calculate result from 20bit origin data, RH=%, T=C
Definition: AHT20_ATY.c:270
uint8_t AHT20_ReadHT(uint32_t *ht)
read and split data to origin hum & tem
Definition: AHT20_ATY.c:213
__WEAK_ATY void printf(uint8_t *,...)
unsigned long uint32_t
Definition: fw_types.h:20