/**
 ****************************************************************************************************
 * @file        dht11.h
 * @author      ԭŶ(ALIENTEK)
 * @version     V1.0
 * @date        2020-04-26
 * @brief       DHT11ʪȴ 
 * @license     Copyright (c) 2020-2032, ӿƼ޹˾
 ****************************************************************************************************
 * @attention
 *
 * ʵƽ̨:ԭ MiniSTM32 V4
 * Ƶ:www.yuanzige.com
 * ̳:www.openedv.com
 * ˾ַ:www.alientek.com
 * ַ:openedv.taobao.com
 *
 * ޸˵
 * V1.0 20200426
 * һη
 *
 ****************************************************************************************************
 */

#ifndef __DHT11_H
#define __DHT11_H 

#include "bsp_system.h"


extern uint8_t t;
extern uint8_t temperature;
extern uint8_t humidity;

/******************************************************************************************/
/* DHT11   */

#define DHT11_DQ_GPIO_PORT                  GPIOA
#define DHT11_DQ_GPIO_PIN                   GPIO_PIN_8
#define DHT11_DQ_GPIO_CLK_ENABLE()          do{ __HAL_RCC_GPIOA_CLK_ENABLE(); }while(0)   /* PAʱʹ */

/******************************************************************************************/

/* IO */
#define DHT11_DQ_OUT(x)     do{ x ? \
                                HAL_GPIO_WritePin(DHT11_DQ_GPIO_PORT, DHT11_DQ_GPIO_PIN, GPIO_PIN_SET) : \
                                HAL_GPIO_WritePin(DHT11_DQ_GPIO_PORT, DHT11_DQ_GPIO_PIN, GPIO_PIN_RESET); \
                            }while(0)                                                /* ݶ˿ */
#define DHT11_DQ_IN         HAL_GPIO_ReadPin(DHT11_DQ_GPIO_PORT, DHT11_DQ_GPIO_PIN)  /* ݶ˿ */


uint8_t dht11_init(void);   /* ʼDHT11 */
uint8_t dht11_check(void);  /* ǷDHT11 */
uint8_t dht11_read_data(uint8_t *temp,uint8_t *humi);   /* ȡʪ */

#endif















