/* Demo program for the 2017/18 open door day at HTL Hollabrunn Copyright (C) 2018 Andreas Mieke This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "systick.h" volatile uint32_t SysTickCnt; void SysTick_Handler() { // SysTick_Handler increments SysTickCnt SysTickCnt++; } void systick_init(void) { // Init the systick clocks to a T = 1 ms RCC_ClocksTypeDef clocks; RCC_GetClocksFreq(&clocks); SysTick_Config(clocks.HCLK_Frequency/1000 - 1); // Set count to 0 SysTickCnt = 0; } void Wait(uint32_t ms) { // Wait specified time in milliseconds uint32_t SysTickCntHold = SysTickCnt; while((SysTickCnt - SysTickCntHold) <= ms); }