Перейти к содержанию
    

ATmega16A не работат кнопка на PA2

По резисторам: у Вас на используются SMD резисторы. Обращаю внимание, что если на smd-резисторе написано "330" -- это 330 Ом, а 33 Ома. (300 --это 33 умноженное на 10 в степени 0 Ом.)
С резисторами все в порядке - написано "331".

 

Aref зачем запитан? у вас ацп используется? если нет тогда и будут чудеса, его надо настроить на внешнюю опору.
Опора AREF как сконфигурирована? Если на внутренний источник, то подводить питание нельзя. Нужно установить только конденсатор.
АЦП не используется. Повесил к питанию по привычке, на всякий случай, инициализацию периферии касающейся АЦП не проводил - это мой промах.

Завтра попробую настроить в программе AREF.

 

Тиристорное защелкивание может произойти только тогда, когда на входе присутствует напряжение превышающее напряжения питания. Говорят, такое может произойти когда выключается питание и тут же включается опять. Если на входах висят большие конденсаторы и они не успевают разрядиться за время выключения питания, то в момент нарастания Vcc вполне может окажется, что напряжение на конденсаторе больше, напряжения питания. Капкан будет обеспечен. Но практически, сколько я ни работаю с AVR-ками, я как-то ни разу не сталкивался с этим тиристорным эффектом. И, надо заметить, что это никак не объясняет отличие этой злой ноги от других точно таки же.
На RESETе стоит супервизор MAX811 на напряжение отключения 4.63В, поэтому, думаю, если бы питание пропадало, контроллер был бы сброшен и остался в этом состоянии. По питанию на плате стоит кажется 470мкФ (платы на работе - сейчас не вспомню точно), плюс около десятка керамических 0.1мкФ.

Повышение потребления происходит именно при замыкании кнопки. После размыкания снижается незначительно (на величину тока через резистор кнопки).

 

Найдете -- отпишитесь, пожалуйста. Становится любопытно.
Собственно после прорезки дорожек и добавления перед входами МК резисторов 10К проблема перестала возникать, вот только бросать на полпути не докопавшись до сути не хочется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На RESETе стоит супервизор MAX811 на напряжение отключения 4.63В, поэтому, думаю, если бы питание пропадало, контроллер был бы сброшен и остался в этом состоянии.

Не, супервизор никак "не повредит" :) защелкиванию. Но думаю , конденсаторы на входах разрядятся раньше

(через 330), кондера по питанию. Хотя , проверьте , что у вас с питанием в момент нажатия кнопки?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавил в начало программы отключение внутреннего источника опорного напряжения:

ADMUX = ADMUX&(~((0x01<<6)|(0x01<<7)));

Ничего не изменилось.

 

А не проще с aref питание откусить.
Поднял ногу 29 AREF, добавил керамику 0.1мкФ.

Включил внутренний опорный источник.

ADMUX = ADMUX&(~(0x01<<7)); 
ADMUX = ADMUX|(0x01<<6);

Изменений нет.

Включал внутренний источник с внешним конденсатором

ADMUX = ADMUX|(0x01<<7); 
ADMUX = ADMUX|(0x01<<6);

Изменений нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программно подаем на ногу единицу и тестером измеряем состояние выхода, далее подав ноль проделайте тоже самое, если уровни подозрительные, проверяйте схему.

 

Вы не описали за что отвечает кнопка на PA2

(например после нажатия кнопки проц дает команду подать на другой порт единицу, простое отпускание кнопки состояние порта обратно не меняет)

Изменено пользователем Marian

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программно подаем на ногу единицу и тестером измеряем состояние выхода, далее подав ноль проделайте тоже самое, если уровни подозрительные, проверяйте схему.
Не совсем понял. PA2 на вход назначена и подтягивающие резисторы отключены - по идее ничего происходить не должно.

 

Вы не описали за что отвечает кнопка на PA2

(например после нажатия кнопки проц дает команду подать на другой порт единицу, простое отпускание кнопки состояние порта обратно не меняет)

К плате подключен светодиод, и на данном этапе тестирования я переделал программу, чтоб в зависимости от нажатия кнопок изменялось количество вспышек светодиода. Так что вариант, что эта кнопка включает какую-то бяку исключен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не совсем понял. PA2 на вход назначена и подтягивающие резисторы отключены - по идее ничего происходить не должно.

 

Не должно да не обязано, включив на выход проверите не коротит куда дорожка.

 

Проще выложить схему для протеуса, исходник переделанной программки.

Если там бяк нет, смогу проверить в железе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не должно да не обязано, включив на выход проверите не коротит куда дорожка.
Звонил тестером - ничего не коротит.

 

Проще выложить схему для протеуса, исходник переделанной программки.
На счет протеуса я и так могу сказать что там все нормально будет работать - у меня на макете с другой мегой работало.

 

Если там бяк нет, смогу проверить в железе.
Про какое железо идет речь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем ничего нового обнаружено не было. После добавления резисторов все платы были протестированы - все ведут себя нормально.

 

Впереди 3 года гарантии - будем ждать новостей :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...