#pragma once #include #include #include "writepin.h" class Dht11 { static constexpr uint16_t LOOP_TIMEOUT_COUNT = (10000.0 / 16000000.0)*F_CPU; static constexpr uint8_t LOOP_TIMEOUT_SMALL_COUNT = (100.0 / 16000000.0)*F_CPU; static constexpr uint8_t BIT_COUNT = 6;//(8.0 / 16000000.0)*F_CPU; static constexpr bool DHT22 = true; volatile unsigned char * const _port; volatile unsigned char * const _port_ctl; volatile unsigned char * const _inPort; const unsigned char _pin; public: Dht11(volatile unsigned char * const port, volatile unsigned char * const inPort, volatile unsigned char * const port_ctl, const unsigned char pin); uint8_t read(); int16_t humidity = 0; int16_t temperature = 0; };