В AVR studio часть программы работает как надо, т.е. я её пошагово прогнал, всё нормально. В регистрах и портах нужные значения и т.п.
Рассматриваю сейчас часть программы где просто динамическая индикация идет.
Когда я симулирую её в Proteus, то там начинаются глюки в зависимости от частоты на которой работает процессор. Там некие биты указываются, отвечающие за эту самую частоту. Почему так может быть, что на intRC=1MHz всё работает более или менее, а на 4MHz уже отображает на дисплее не то.
И даже когда, вроде, отображается нормально происходит следующий момент. Вот в программе последовательно активизируется четыре разряда индикации. В AVR studio всё как и написано в программе происходит. Но в Proteus он может перескакивать разяды.
Может это быть связано со сторожевым таймером?
Почему так может быть? В чем может быть ошибка?
Контроллер - atmega8.
...you've got to ask yourself one question: "Do I feel lucky?" Well, do ya, punk?



