|
ATmega16A не работат кнопка на PA2, Возрастает потребление, греется МК |
|
|
|
Nov 4 2010, 07:53
|

Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-08-09
Из: Украина, Харьков
Пользователь №: 52 034

|
Здравствуйте! Контроллер - ATmega16A в корпусе TQFP. К ногам PA0 - PA3 подключены кнопки, выводы подтянуты к +5В через внешние 330 Ом. При работе кнопок на PA0, PA1 и PA3 проблем нет, а вот при замыкании кнопки на PA2 резко повышается потребление схемы с 50мА до 140мА и после размыкания снижается незначительно. Иногда при повторном замыкании потребление может подняться до 170мА. Начинает греться контроллер. Если подать питание при замкнутой кнопке на PA2 увеличения потребления не происходит - только после размыкания и повторного замыкания. Протестировано три платы - везде одно и тоже. Явное отключение внутренних подтягивающих резисторов ничего не дало Код SFIOR = SFIOR|(0x01<<2); Глюки прошивки исключаются - при очищенном камне то же самое. Какие есть мысли, в чем может быть проблема?
Сообщение отредактировал i.cf - Nov 4 2010, 08:07
|
|
|
|
|
Nov 4 2010, 08:20
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170

|
Цитата(i.cf @ Nov 4 2010, 09:53)  Контроллер - ATmega16A в корпусе TQFP. К ногам PA0 - PA3 подключены кнопки, выводы подтянуты к +5В через внешние 330 Ом. Пока мыслей нет, но попробуйте включить на РА2 последовательный резистор 10..100K и проверьте, что будет. И проверьте подсоединение AVCC. Может, развести забыли. Я уже где-то писал, но повторюсь. Как только начались перебои с поставками Атмелей, у меня иногда стали беспричнно вылетать порты, с возрастанием тока на 10..15 ма. И это на серийных устройствах, где ничего не менялось. Скорее всего, в связи с увеличеним спроса раскопали свалки, отмыли плесень с выкинутых ранее камешков и поплыли они к нам...
|
|
|
|
|
Nov 4 2010, 09:16
|
Местный
  
Группа: Участник
Сообщений: 256
Регистрация: 5-04-09
Из: Москва
Пользователь №: 47 180

|
Цитата(i.cf @ Nov 4 2010, 10:53)  Протестировано три платы - везде одно и тоже. На контроллерах из других партий работает? Или это первые платы? Если это первые платы - возможен глюк программы. Если платы серийные, и на ранних партиях все работает, и программа не менялась - скорее всего битые контроллеры.
|
|
|
|
|
Nov 4 2010, 09:19
|

Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-08-09
Из: Украина, Харьков
Пользователь №: 52 034

|
Цитата(sensor_ua @ Nov 4 2010, 10:48)  Похоже, что либо порт на выход включен, либо подтяжка отключена (скорее по другим кнопам). Порт настраивается в проекте всего в 2х местах: Код ... DDRA = (DDRA&0xF0); ... DDRA = (DDRA|((1<<4)|(1<<5))); ... младшие 4 линии - входы. Внутренняя подтяжка отключена - есть внешняя. Цитата(forever_student @ Nov 4 2010, 11:16)  На контроллерах из других партий работает? Или это первые платы? Если это первые платы - возможен глюк программы. Партия - всего три платы. До этого отлаживалось на макете - там другие ноги были задействованы и стояла ATmega16 (без А) в DIPе. Там все работало, правда программа была переделана с тех пор. Цитата(IGK @ Nov 4 2010, 10:20)  попробуйте включить на РА2 последовательный резистор 10..100K и проверьте, что будет. Перед контроллером по всем четырем линиям кнопок поставил резисторы по 10К - проблема исчезла! Спасибо за совет!!!  Надо было мне сразу так разводить - тем более что так правильнее. Жаль что платы уже разведены и собраны - придется резать дорожки и заливать чем-нибудь.
Сообщение отредактировал i.cf - Nov 4 2010, 09:23
|
|
|
|
|
Nov 4 2010, 11:48
|

Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-08-09
Из: Украина, Харьков
Пользователь №: 52 034

|
Цитата(Сергей Борщ @ Nov 4 2010, 12:18)  Почему правильнее? http://electronix.ru/forum/index.php?showt...mp;#entry800684Цитата(stells @ Nov 4 2010, 12:24)  а Вы на это обратили внимание? может в этом причина? порт А запитывается от AVCC По схеме и печатке сверял - должно быть. Около каждой ноги питания МК стоит керамика 0.1мкФ. Промерял - есть везде.
|
|
|
|
|
Nov 4 2010, 12:08
|

Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-08-09
Из: Украина, Харьков
Пользователь №: 52 034

|
Цитата(stells @ Nov 4 2010, 14:06)  что значит "должно быть"? Вы подаете питание на AVCC? Вроде написал: Цитата(i.cf @ Nov 4 2010, 13:48)  Промерял - есть везде. Есть на трех VCC, на AVCC и на AREF.
Сообщение отредактировал i.cf - Nov 4 2010, 12:10
|
|
|
|
|
Nov 4 2010, 12:27
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(i.cf @ Nov 4 2010, 14:48)  Там речь идет о борьбе с наводками. У вас же происходит, судя по симптомам, тиристорное защелкивание при замыкании кнопки. Природа его непонятна, ведь кнопка, если я правильно понял, находится на той же плате? Покажите разводку, если она не секретна. P.S. Я даже стесняюсь спросить, а выводы земли все подключены?
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Nov 4 2010, 12:55
|

Профессионал
    
Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486

|
Цитата(i.cf @ Nov 4 2010, 14:53)  К ногам PA0 - PA3 подключены кнопки, выводы подтянуты к +5В через внешние 330 Ом. 330 Ом не маловато ли? А может это вообще 33 Ома. (5В/33 Ом= 150мА) Или порты на выход настроены.
--------------------
И на камнях растут деревья!
|
|
|
|
|
Nov 4 2010, 13:29
|

Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-08-09
Из: Украина, Харьков
Пользователь №: 52 034

|
Цитата(Сергей Борщ @ Nov 4 2010, 14:27)  Там речь идет о борьбе с наводками. У вас же происходит, судя по симптомам, тиристорное защелкивание при замыкании кнопки. Природа его непонятна, ведь кнопка, если я правильно понял, находится на той же плате? Кнопки болтаются на проводах длинной 20см, которые будут крепиться на лицевой панели. Плата будет эксплуатироваться рядом с источником помех (могут быть "иголки" до 1кВ) - поэтому и использованы внешние подтяжки. От кнопок на землю стоит керамика 0.1мкФ. Сейчас, конечно, испытывается без источника наводок, на столе. Цитата(Сергей Борщ @ Nov 4 2010, 14:27)  Покажите разводку, если она не секретна. Часть платы с кнопками и контроллером:
Кнопки подключаются к разъемам XR5-XR8. Индуктивности по питанию - ферритовые бусины (на случай сбоев от помех). Слой top залит землей, слой bottom +5В. Цитата(Сергей Борщ @ Nov 4 2010, 14:27)  P.S. Я даже стесняюсь спросить, а выводы земли все подключены? Прозвонил тестером - "звенят" все четыре. Цитата(domowoj @ Nov 4 2010, 14:55)  330 Ом не маловато ли? А может это вообще 33 Ома. (5В/33 Ом= 150мА) Нет, 330 Ом. 5В/330 Ом = 15мА - сходится с показаниями амперметра при нажатии. Цитата(domowoj @ Nov 4 2010, 14:55)  Или порты на выход настроены. Уже писал: порт настраивается тольк в двух местах.
|
|
|
|
|
Nov 4 2010, 19:45
|

Знающий
   
Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065

|
По резисторам: у Вас на используются SMD резисторы. Обращаю внимание, что если на smd-резисторе написано "330" -- это 330 Ом, а 33 Ома. ( 300 --это 33 умноженное на 10 в степени 0 Ом.) Извините, что напомнил элементарные вещи. Цитата(Vasily_ @ Nov 5 2010, 00:25)  Aref зачем запитан? у вас ацп используется? если нет тогда и будут чудеса, его надо настроить на внешнюю опору. Опора AREF как сконфигурирована? Если на внутренний источник, то подводить питание нельзя. Нужно установить только конденсатор. Еще раз извиняюсь за элементарщину. Тиристорное защелкивание может произойти только тогда, когда на входе присутствует напряжение превышающее напряжения питания. Говорят, такое может произойти когда выключается питание и тут же включается опять. Если на входах висят большие конденсаторы и они не успевают разрядиться за время выключения питания, то в момент нарастания Vcc вполне может окажется, что напряжение на конденсаторе больше, напряжения питания. Капкан будет обеспечен. Но практически, сколько я ни работаю с AVR-ками, я как-то ни разу не сталкивался с этим тиристорным эффектом. И, надо заметить, что это никак не объясняет отличие этой злой ноги от других точно таки же. Найдете -- отпишитесь, пожалуйста. Становится любопытно.
--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|