попросили меня сделать штучку на тини 13, кот. будет по входам следить за помехами. *что в обвязке - не знаю
если на одном из 3-х пинов "1", инкриментируем соответствующий элемент массива А1. Делаем 100 замеров, между замерами пауза 30мс (сон). если один из элементов A1 превысил значение 10, то инкриментируем соответствующий пину элемент массива А2. Если за время работы устройства значение А2 превысит 6, отключаем этот пин.
В протеусе вроде бы бегает все прилично. А после заливки в устройство начинается в нем каша).
на ресет подано 5в, +питания 5в, вроде стабильно. смотрел осциллографом, провалов не видел
схема включения 1: 2 пина на землю, 1 на +питания.
По светодиодам видно, что проходит много прерываний по вачдогу (сколько не могу сказать, осц. столько не пишет), затем прерывание от пинчейнж
схема включения 2: все 3 пина на землю. отрываю один пин на мгновение в воздух, вижу прерывание по пинчейнж, сажу назад на землю. вижу много прерываний по вачдогу, затем еще одно от пинчейнж и опять много по вачдогу. но ведь все пины уже давно на земле и перед разрешением прерываний от пинчейнж и уходом в спящий я чищу флаг.
в общем совсем замучился.
возможно что не так в коде, или я не так понимаю механику некоторых вещей в микроконтроллере? в протеусе-то работает....
может компилятор меня не так понимает (winavr 2010, -оs)? если кто-то хорошо знает ассемблер, загляните в дизасм



