/** ****************************************************************************** * @file ow_port.h * @brief This file includes the driver for port for OneWire purposes ****************************************************************************** */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef ONEWIRE_PORT_H #define ONEWIRE_PORT_H /* Includes ------------------------------------------------------------------*/ #include "stm32f1xx_hal.h" /* I/O Port ------------------------------------------------------------------*/ #define UART_Driver ///< использовтаь UART (onewire_uart.c/.h) //#define LL_Driver ///< использовать CMSIS для управления ножкой #define CMSIS_Driver ///< использовать CMSIS для управления ножкой // если ничего не выбрано - используется HAL /** * @defgroup DEFAULT_SETTINGS Дефолтные параметры для OW * @details Определены дефолтные параметры для OW, применятся если передать NULL в Dallas_BusFirstInit. * @{ */ /** * @brief Порт вывода для шины 1-Wire. * @details Указывает порт GPIO, к которому подключена линия данных 1-Wire (например, для DS18B20). */ #define OW_UART_Handle huart1 /** * @brief Порт вывода для шины 1-Wire. * @details Указывает порт GPIO, к которому подключена линия данных 1-Wire (например, для DS18B20). */ #define OW_GPIO_Port GPIOA /** * @brief Маска пина, соответствующая номеру OW_Pin_Numb. * @details Используется при доступе к регистрам порта для управления состоянием линии 1-Wire. */ #define OW_Pin (GPIO_PIN_9) /** * @brief Аппаратный таймер для формирования временных интервалов протокола 1-Wire. * @details Применяется для создания точных задержек при обмене данными по шине 1-Wire. */ #define OW_TIM TIM3 /** * @brief Количество тактов таймера OW_TIM, соответствующее 1 микросекунде. * @details Вычисляется на основе частоты таймера. Например, для таймера с частотой 24 МГц значение будет равно 24. */ #define OW_TIM_1US_PERIOD 72 /** DEFAULT_SETTINGS * @} */ /* OneWire Timings -----------------------------------------------------------*/ void OneWire_Delay_us(uint32_t us); /* Common Register -----------------------------------------------------------*/ #if defined(UART_Driver) #include "onewire_uart.h" #include "usart.h" #endif #endif /* ONEWIRE_PORT_H */