ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
27 февраля
1572828 Топик полностью
Dingo (Сегодня, 07:36, просмотров: 52) ответил Nikolay_Po на Век живи - век учись. Не думал, что попадусь на таком инкременте в Си:
Уточню то, что не даёт покоя: SystemClockSpeed - динамическая величина? Если даже так, вряд ли она произвольные значения принимает. Понимаю, что ситуация уже решена; я ход мыслей при написании кода понять затрудняюсь. И даже так, как у вас "правильно было так" - странно: 

DSFSMtimer += (uint32_t)(500e-3 * SystemClockSpeed);

// SystemClockSpeed сначала преобразуется double, // потом умножение, преобразование в целое. const uint32_t _time_500sm = 500e-3 * SystemClockSpeed; // Если тактовая - константа.
DSFSMtimer += _time_500ms; // Ещё вариант: исхожу из того, что тип тактовой - целочисленный.

DSFSMtimer += SystemClockSpeed * 500 / 1000; // в миллисекундах.


Если что - без болванчика набросал, но верить не принуждаю. (-: