Пока прога не откомпилирована и не залита в МК, с регистром ничего случиться не может, это абсурд.
еще как может! вдруг я дальше по коду накосячил что-нибудь с содержимым регистра
Я вижу, ты не понимаешь главного, хоть и элементарного.
Когда работает компилятор, для него нет ни регистров, ни таймеров, ни АЦП - есть некие абстрактные понятия : текст на исходном языке и выходной блок информации - машинный код, упакованный для удобства чтения и загрузки в Intel- формат. Это как перевод с русского на древнезулусский. И глупо в этом случае опасаться, что если ты в исходном тексте напис`ал " иди ты в ....", то компилятор ( переводчик ) обидится и даст тебе в морду. Он это добросовестно переведет, даже не поинтересовавшись у адресата, есть ли у него .... , в которую ему нужно идти , а вот когда перевод попадет к адресату ( в нашем случае - во флеш-память МК ), только тогда можно ожидать адекватной реакции на слова ( или на машинный код ).
опять же пользуясь местной обучалкой нарисовал схемку в протеусе(в первые в жизни), сунул туда полученный (с помощю пятой пятой студии) .HEX файл , в место модуля передатчика нарисовал щуп амперметра (осциллограф там не нашел) , но что то ни фига не вышло
пошел спать ! утро вечера мудренее
странно как то! в протеусе сразу же - почти в самом начале кода, появляется лог 1 на ножке PB7 хотя ни на одну (из 20 кнопок клавиатуры ) я не нажимаю!
такое ощущение что младший бит порта "B" ( отмечен единицей = 0b00000001) сидит на PB7 а не на PB0!
// как открыть код (асемблерный) в протеусе, что бы по шагово отслеживать где таиться ошибка ??? (один раз мне удалось его открыть нажав на кнопку ">|" пошагового выполнения задачи но в последующих попытках этот код не открывался а просто по шагово выполнялись инструкции
в avr студии есть отладчик, там как раз можно следить затем как изменяются состояние в регистрах, портах, таймерах... просто компилируете код без ошибок, и нажимаете debug, или зеленый треугольничек типа "плей", с права должно появиться окно с портами таймерами и всей периферией мк, потом можно переходить по коду по нажатия клавиши отладчик будет обрабатываться одна команда контроллера и будет показано столько на это затрачено машинных тактов, там много чего есть можно переходить в любое место кода что б перескакивать задержки... в общем вам нужно там порыться и вы все найдете, и вы можите увидеть после какой инструкции принимаются логические состояния в ваших портах и не только....
jordan писал(а):в avr студии есть отладчик, там как раз можно следить затем как изменяются состояние в регистрах
Категорически присоединяюсь. Противнус не пробовал, но число сообщений типа "в железе работает, а в Пр. нет" или наоборот -- просто зашкаливает. Да что это за прога такая, в которой для получения правильного результата "нужно определенное искусство", как сказал один чел на конференции, правда, по поводу расчета экономического эффекта. "Предприятию нанесен экономический эффект" Конечно, это мое личное мнение, но Студия штатно позволяет точно отследить поведение МК вплоть до бита. Что касается динамики, принимая во внмание вышесказанное, ее нужно смотреть уже в железе. Иначе можем получить эффект ХЗ