ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1316309 Топик полностью
POV (04.06.2023 16:27, просмотров: 160) ответил Costic на Как я понимаю речь про SiLabs C8051F120 или что-то 100 серии (твой любимый, не помню). Плавающая точка _очень_ медленная. За время пока вычисляется выражение может набежать переполнение счётчика. Прерывание/счётчик остановлены? t16 объявлена volatile? Обязательно ли умножать на 0.12, может быть разделить на 8 (*0.125) достаточно и сделать это сдвигом (t16 >> 3)? У меня в F380 нет регистра PCA0_T, вместо него PCA0L и PCA0H, которые надо читать в нужной
Всё остановлено, никаких прерываний (собссно внутри прерывания это всё и делается, перебить никто не может). Видно же по скринам отладчика - именно вычисления неверно выполняются... 

В дизасм уж не полез смотреть, полные тесты поправленной прошивки прогнал - работает как по последнему варианту