|
ELIOT1 HAL
|
Интерфейс драйвера универсального блока таймеров Подробнее...
#include "hal_common.h"Структуры данных | |
| struct | vtu_config |
| Структура для конфигурации VTU. Подробнее... | |
Определения типов | |
| typedef void(* | vtu_callback) (VTU_Type *base, uint32_t timer, enum vtu_interrupt_control value) |
| Функция обратного вызова | |
Перечисления | |
| enum | vtu_status |
| Статусы драйвера универсального блока таймеров Подробнее... | |
| enum | vtu_mode |
| Режимы работы тамеров универсального блока таймеров Подробнее... | |
| enum | vtu_capture_edge_control |
| Управление фронтами при режиме захвата Подробнее... | |
| enum | vtu_pwm_polarity |
| Управление полярностью ШИМ Подробнее... | |
| enum | vtu_interrupt_control |
| Управление прерываниями Подробнее... | |
| enum | timer_num_mode |
| Номер таймера и его режим работы для прерываний Подробнее... | |
Функции | |
| enum vtu_status | VTU_GetLastAPIStatus (void) |
| Получение статуса выполнения функции, тип результата которой отличен от enum vtu_status. | |
Инициализация и деинициализации таймера | |
| enum vtu_status | VTU_GetDefaultConfig (struct vtu_config *config) |
| Создание конфигурации по умолчанию | |
| enum vtu_status | VTU_Init (VTU_Type *base, uint32_t timer, struct vtu_config *config) |
| Инициализация таймера | |
| enum vtu_status | VTU_Deinit (VTU_Type *base, uint32_t timer) |
| Деинициализация таймера | |
Функции управления VTU | |
| enum vtu_status | VTU_EnableTimer (VTU_Type *base, uint32_t timer, bool enable) |
| Разрешение работы таймера | |
| enum vtu_status | VTU_SetCounter (VTU_Type *base, uint32_t timer, uint16_t value, bool extended) |
| Установка значения счетчика | |
| uint16_t | VTU_GetCounter (VTU_Type *base, uint32_t timer, bool extended) |
| Получение значения счетчика | |
| enum vtu_status | VTU_SetPrescaler (VTU_Type *base, uint32_t timer, uint8_t value) |
| Установка значения предделителя | |
| uint8_t | VTU_GetPrescaler (VTU_Type *base, uint32_t timer) |
| Получение значения предделителя | |
| enum vtu_status | VTU_SetPeriodCapture (VTU_Type *base, uint32_t timer, uint16_t value, bool extended) |
| Установка значения периода генерации шим без учета предделителя | |
| uint16_t | VTU_GetPeriodCapture (VTU_Type *base, uint32_t timer, bool extended) |
| Получение значения периода генерации шим без учета предделителя | |
| enum vtu_status | VTU_SetDutyCycleCapture (VTU_Type *base, uint32_t timer, uint16_t value, bool extended) |
| Установка периода импульса шим без учета предделителя | |
| uint16_t | VTU_GetDutyCycleCapture (VTU_Type *base, uint32_t timer, bool extended) |
| Получение периода импульса шим без учета предделителя | |
| void | VTU_SetCallback (uint32_t timer, vtu_callback callback) |
| Установка функции обратного вызова | |
| enum vtu_status | VTU_EnableTimerIRQ (VTU_Type *base, uint32_t timer, enum vtu_interrupt_control value, bool enable, enum vtu_mode mode) |
| Разрешение работы прерывания | |
| enum vtu_interrupt_control | VTU_GetTimerIRQ (VTU_Type *base, uint32_t timer, enum vtu_mode mode) |
| Получение прерываний | |
| enum vtu_status | VTU_ClearTimerIRQ (VTU_Type *base, uint32_t timer, enum vtu_interrupt_control values, enum vtu_mode mode) |
| Очистка прерываний | |
| enum vtu_status | VTU_SetPWMPolarity (VTU_Type *base, uint32_t timer, enum vtu_pwm_polarity value1, enum vtu_pwm_polarity value2, bool use_value2) |
| Установка полярности ШИМ | |
| enum vtu_status | VTU_GetPWMPolarity (VTU_Type *base, uint32_t timer, enum vtu_pwm_polarity *value1, enum vtu_pwm_polarity *value2, bool use_value2) |
| Получение полярности ШИМ | |
| enum vtu_status | VTU_SetCaptureEdgeCtrl (VTU_Type *base, uint32_t timer, enum vtu_capture_edge_control value1, enum vtu_capture_edge_control value2, bool use_value2) |
| Установка типа захвата | |
| enum vtu_status | VTU_GetCaptureEdgeCtrl (VTU_Type *base, uint32_t timer, enum vtu_capture_edge_control *value1, enum vtu_capture_edge_control *value2, bool use_value2) |
| Получение типа захвата | |
Интерфейс драйвера универсального блока таймеров