12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- // ***********************************************************
- // systick.h
- // Модуль создан на основе кода teplofizik, 2013
- // ***********************************************************
- #ifndef __SYSTICK_H
- #define __SYSTICK_H
- #define TIMER_HANDLERS 10 // Максимально количество обработчкиков
- void SYSTICK_SetDelayFlag();
- uint8_t Delay_ms(__IO uint32_t nTime);
- void TimingDelay_Decrement(void);
- typedef void (*TTimerHandler)();
- // Запуск таймера с заданной частотой
- void timer_Init(uint32_t Frequency);
- // Добавить функцию в список вызова. Handler будет вызываться с заданной частотой
- // Аргументы: 2
- // Frequency - частота вызова (при увеличении снижается точность)
- // Handler - функция которая будет вызваться
- // Результат: нет
- void timer_AddFunction(uint16_t Frequency, TTimerHandler Handler);
- // Остановить таймер
- void timer_Stop(TTimerHandler Handler);
- // Включить таймер. Задача будет включена с места остановки
- void timer_Resume(TTimerHandler Handler);
- // Перезапустить таймер
- void timer_Restart(TTimerHandler Handler);
- // Перезапустить таймер. Задача будет выполненна сразу
- void timer_RestartAtOnce(TTimerHandler Handler);
- // Изменить частоту таймера
- void timer_ChangeFrequency(TTimerHandler Handler, uint16_t Frequency);
- // Главный цикл. в нем вызваются обработчики таймера
- void timer_Main(void);
- uint32_t clock_GetSYS(void);
- #endif
|