Страница 1 из 1

неправильный коэффициент деления

СообщениеДобавлено: 27 авг 2017, 13:53
krian
Экспериментируя с Flowcode 6, я обнаружил ошибку.
При установке предварительного делителя для таймера 2 в окне настройки прерывания по переполнению, он задается, видимо, тем же кодом, что и для таймеров 0 и 1. В результате получается не то, что ожидается. Например, если для таймера 1 код прескалера b100 дает коэффициент 256, то для таймера 2 это будет коэффициент 64. В даташите таблица есть, в которой показано, что прескалер таймера 2 имеет больший набор коэффициентов деления. Для коэффициента 256 ему надо записать код b110. Но Flowcode 6 этого не делает.
Чтобы получить нужный коэффициент, нужно сначала разрешить прерывание с остановленным таймером, а дальше вставить код на Си:
TCCR2B=(1<<CS22) | (1<<CS21) | (0<<CS20); //включение таймера2 через делитель 256.
Тогда все работает правильно.

Re: неправильный коэффициент деления

СообщениеДобавлено: 27 авг 2017, 18:47
Андрей
В ФК-6 дочерта всяких глюков и ошибок, которые перетекли из 5 и 4 версий. Только в 6 вылечить ничего нельзя, в отличии от 5.