30 #ifndef __NIIETCM4_CAP_H
31 #define __NIIETCM4_CAP_H
66 #define IS_CAP_CAPTURE_POLARITY(CAPTURE_POLARITY) (((CAPTURE_POLARITY) == CAP_Capture_Polarity_PosEdge) || \
67 ((CAPTURE_POLARITY) == CAP_Capture_Polarity_NegEdge))
84 #define IS_CAP_HALT(HALT) (((HALT) == CAP_Halt_Stop) || \
85 ((HALT) == CAP_Halt_StopOnZero) || \
86 ((HALT) == CAP_Halt_Free))
103 #define IS_CAP_SYNC_OUT(SYNC_OUT) (((SYNC_OUT) == CAP_SyncOut_Bypass) || \
104 ((SYNC_OUT) == CAP_SyncOut_TimerEqPeriod) || \
105 ((SYNC_OUT) == CAP_SyncOut_Disable))
121 #define IS_CAP_CAPTURE_MODE(CAPTURE_MODE) (((CAPTURE_MODE) == CAP_Capture_Mode_Single) || \
122 ((CAPTURE_MODE) == CAP_Capture_Mode_Cycle))
138 #define IS_CAP_PWM_POLARITY(PWM_POLARITY) (((PWM_POLARITY) == CAP_PWM_Polarity_Pos) || \
139 ((PWM_POLARITY) == CAP_PWM_Polarity_Neg))
155 #define IS_CAP_MODE(MODE) (((MODE) == CAP_Mode_Capture) || \
156 ((MODE) == CAP_Mode_PWM))
208 #define IS_CAP_CAPTURE_PRESCALE(PRESCALE) ((PRESCALE) < ((uint32_t)0x40))
215 #define IS_CAP_CAPTURE_STOP_VAL(STOP_VAL) ((STOP_VAL) < ((uint32_t)4))
244 #define CAP_ITSource_GeneralInt ((uint32_t)0x01)
245 #define CAP_ITSource_CapEvent0 ((uint32_t)0x02)
246 #define CAP_ITSource_CapEvent1 ((uint32_t)0x04)
247 #define CAP_ITSource_CapEvent2 ((uint32_t)0x08)
248 #define CAP_ITSource_CapEvent3 ((uint32_t)0x10)
249 #define CAP_ITSource_TimerOvf ((uint32_t)0x20)
250 #define CAP_ITSource_TimerEqPeriod ((uint32_t)0x40)
251 #define CAP_ITSource_TimerEqCompare ((uint32_t)0x80)
252 #define CAP_ITSource_All ((uint32_t)0xFF)
258 #define IS_CAP_IT_SOURCE(IT_SOURCE) (((IT_SOURCE) != (uint32_t)0x0000) && (((IT_SOURCE) & (uint32_t)0xFFFFFF00) == ((uint32_t)0x00)))
265 #define IS_CAP_IT_SOURCE_SINGLE(IT_SOURCE) (((IT_SOURCE) == CAP_ITSource_GeneralInt) || \
266 ((IT_SOURCE) == CAP_ITSource_CapEvent0) || \
267 ((IT_SOURCE) == CAP_ITSource_CapEvent1) || \
268 ((IT_SOURCE) == CAP_ITSource_CapEvent2) || \
269 ((IT_SOURCE) == CAP_ITSource_CapEvent3) || \
270 ((IT_SOURCE) == CAP_ITSource_TimerOvf) || \
271 ((IT_SOURCE) == CAP_ITSource_TimerEqPeriod) || \
272 ((IT_SOURCE) == CAP_ITSource_TimerEqCompare))
294 void CAP_SetTimer(NT_CAP_TypeDef* CAPx, uint32_t TimerVal);
void CAP_SyncCmd(NT_CAP_TypeDef *CAPx, FunctionalState State)
Разрешение синхронизации.
CAP_SyncOut_TypeDef
Выбор источника выходного сигнала синхронизации.
void CAP_Capture_Init(NT_CAP_TypeDef *CAPx, CAP_Capture_Init_TypeDef *CAP_Capture_InitStruct)
Инициализирует режим захвата блока CAPx согласно параметрам структуры CAP_Capture_InitStruct.
uint32_t CAP_Capture_GetCap1(NT_CAP_TypeDef *CAPx)
Получение текущего значения из регистра захвата 1.
CAP_SyncOut_TypeDef CAP_SyncOut
uint32_t CAP_Capture_StopVal
void CAP_ITStatusClear(NT_CAP_TypeDef *CAPx, uint32_t CAP_ITSource)
Сброс флагов источников прерываний выбранного блока захвата.
FunctionalState
Описывает логическое состояние периферии. Используется для операций включения/выключения периферийных...
void CAP_PWM_SetCompare(NT_CAP_TypeDef *CAPx, uint32_t CompareVal)
Установка значения сравнения ШИМ.
void CAP_StructInit(CAP_Init_TypeDef *CAP_InitStruct)
Заполнение каждого члена структуры CAP_InitStruct значениями по умолчанию.
void CAP_ITForceCmd(NT_CAP_TypeDef *CAPx, uint32_t CAP_ITSource)
Принудительный вызов прерывания выбранного блока захвата.
void CAP_TimerCmd(NT_CAP_TypeDef *CAPx, FunctionalState State)
Разрешение работы таймера, выбранного блока захвата.
void CAP_ITCmd(NT_CAP_TypeDef *CAPx, uint32_t CAP_ITSource, FunctionalState State)
Разрешение работы прерывания выбранного блока захвата.
void CAP_Init(NT_CAP_TypeDef *CAPx, CAP_Init_TypeDef *CAP_InitStruct)
Инициализирует CAPx согласно параметрам структуры CAP_InitStruct.
FunctionalState CAP_Capture_RstEvent2
CAP_Capture_Polarity_TypeDef
Выбор фронта захвата.
uint32_t CAP_PWM_GetPeriod(NT_CAP_TypeDef *CAPx)
Получение текущего периода ШИМ.
Структура инициализации режима захвата.
uint32_t CAP_Capture_GetCap3(NT_CAP_TypeDef *CAPx)
Получение текущего значения из регистра захвата 3.
CAP_Capture_Polarity_TypeDef CAP_Capture_PolarityEvent0
CAP_PWM_Polarity_TypeDef CAP_PWM_Polarity
FunctionalState CAP_SyncCmd
uint32_t CAP_PWM_GetShadowCompare(NT_CAP_TypeDef *CAPx)
Получение отложенного значения сравнения ШИМ.
void CAP_Capture_StructInit(CAP_Capture_Init_TypeDef *CAP_Capture_InitStruct)
Заполнение каждого члена структуры CAP_Capture_InitStruct значениями по умолчанию.
FlagStatus
Описывает возможные состояния флага при запросе его статуса.
void CAP_ITPendClear(NT_CAP_TypeDef *CAPx)
Сброс флага прерывания выбранного блока захвата.
uint32_t CAP_PWM_GetCompare(NT_CAP_TypeDef *CAPx)
Получение текущего значения сравнения ШИМ.
uint32_t CAP_PWM_GetShadowPeriod(NT_CAP_TypeDef *CAPx)
Получение отложенного значения периода ШИМ.
CAP_Mode_TypeDef CAP_Mode
FlagStatus CAP_ITPendStatus(NT_CAP_TypeDef *CAPx)
Чтение статуса прерывания выбранного блока захвата.
uint32_t CAP_GetShadowTimer(NT_CAP_TypeDef *CAPx)
Получение отложенного значения таймера.
void CAP_Capture_SetCap1(NT_CAP_TypeDef *CAPx, uint32_t Value)
Установка значения регистра захвата 1.
CAP_Halt_TypeDef CAP_Halt
void CAP_SetTimer(NT_CAP_TypeDef *CAPx, uint32_t TimerVal)
Установка текущего значения счетчика напрямую.
void CAP_SwSync(NT_CAP_TypeDef *CAPx)
Проведение программной синхронизации.
FunctionalState CAP_Capture_RstEvent1
FunctionalState CAP_Capture_RstEvent3
Структура инициализации режима ШИМ.
void CAP_PWM_Init(NT_CAP_TypeDef *CAPx, CAP_PWM_Init_TypeDef *CAP_PWM_InitStruct)
Инициализирует режим ШИМ блока CAPx согласно параметрам структуры CAP_PWM_InitStruct.
uint32_t CAP_Capture_GetCap2(NT_CAP_TypeDef *CAPx)
Получение текущего значения из регистра захвата 2.
CAP_Capture_Polarity_TypeDef CAP_Capture_PolarityEvent1
FlagStatus CAP_ITStatus(NT_CAP_TypeDef *CAPx, uint32_t CAP_ITSource)
Чтение статуса флага источника прерывания выбранного блока захвата.
void CAP_Capture_SetCap3(NT_CAP_TypeDef *CAPx, uint32_t Value)
Установка значения регистра захвата 3.
void CAP_PWM_SetShadowPeriod(NT_CAP_TypeDef *CAPx, uint32_t PeriodVal)
Установка значения периода ШИМ для отложенной записи.
CAP_Capture_Polarity_TypeDef CAP_Capture_PolarityEvent3
void CAP_SetShadowTimer(NT_CAP_TypeDef *CAPx, uint32_t TimerVal)
Установка теневого значения таймера для отложенной записи.
CAP_Halt_TypeDef
Выбор режима остановки таймера при отладке.
void CAP_PWM_SetPeriod(NT_CAP_TypeDef *CAPx, uint32_t PeriodVal)
Установка значения периода ШИМ.
Это главный заголовочный файл драйвера, обычно включаемый в main.c.
CAP_Capture_Mode_TypeDef CAP_CaptureMode
Структура инициализации блока захвата в целом.
void CAP_PWM_StructInit(CAP_PWM_Init_TypeDef *CAP_PWM_InitStruct)
Заполнение каждого члена структуры CAP_PWM_InitStruct значениями по умолчанию.
void CAP_Capture_SetCap0(NT_CAP_TypeDef *CAPx, uint32_t Value)
Установка значения регистра захвата 0.
uint32_t CAP_Capture_GetCap0(NT_CAP_TypeDef *CAPx)
Получение текущего значения из регистра захвата 0.
CAP_PWM_Polarity_TypeDef
Выбор активного уровня в режиме ШИМ.
CAP_Capture_Polarity_TypeDef CAP_Capture_PolarityEvent2
void CAP_Capture_Cmd(NT_CAP_TypeDef *CAPx, FunctionalState State)
Разрешение захвата для выбранного блока захвата.
CAP_Capture_Mode_TypeDef
Выбор режима работы захвата.
void CAP_PWM_SetShadowCompare(NT_CAP_TypeDef *CAPx, uint32_t CompareVal)
Установка значения сравнения ШИМ для отложенной записи.
uint32_t CAP_Capture_Prescale
void CAP_Capture_SetCap2(NT_CAP_TypeDef *CAPx, uint32_t Value)
Установка значения регистра захвата 2.
uint32_t CAP_GetTimer(NT_CAP_TypeDef *CAPx)
Получение текущего значения таймера.
FunctionalState CAP_Capture_RstEvent0
void CAP_DeInit(NT_CAP_TypeDef *CAPx)
Устанавливает все регистры блока захвата значениями по умолчанию.
CAP_Mode_TypeDef
Выбор режима работы блока захвата.