Аналоговые контакты Arduino выходят из строя

Я проводил измерения с выходов операционного усилителя, когда внезапно без всякой причины измерил 5 вольт на всех контактах Arduino Mega. Я отключил Arduino, загрузил Firmata и протестировал. Все контакты показывают высокий уровень до 1023.. 5 В выводятся без всякой причины, даже когда на вход у меня есть аналоговый пинг.

Код эскизов загружается, освещение выглядит нормально. Я заметил, что чип процессора нагревается, а напряжение на линии макета, идущей к аналоговым контактам Arduino, составляет 7 Вольт.

Является ли это признаком серьезного повреждения моего устройства?

, 👍0

Обсуждение

Вероятно. Оно не должно быть горячим. Было ли к контактам подключено что-то, что потребляет такой большой ток, что может нагреться? Каково напряжение питания операционного усилителя? Выше 5В?, @Jot

Я сомневаюсь. Вольтметр на той же выходной линии операционного усилителя показал 7 вольт. Но после отключения проводки от аналогового контакта Arduino показания вернулись к норме 35 мл. Кроме того, только 3 контакта подключены к устройству OpAmp, измеряющему входное напряжение, выход и землю. Все контакты Arduino (кроме A0) застряли в состоянии HIGH., @Jose Enrique Calderon

Напряжение atmega2560 может составлять от -0,5 В до +5,5 В, когда atmega2560 питается от напряжения 5,0 В. Напряжение 7 В может его повредить. Выдуть можно только часть чипа. Когда вы уверены, что хотя бы один вывод перегорел, то от него следует избавиться, так как не исключено, что повреждены и другие детали внутри микросхемы. Я все еще не уверен на 100%, что чип поврежден, потому что при загрузке скетча пин 0 и 1 должны быть рабочими., @Jot

Можно ли легко удалить и заменить этот чип? Пожалуйста, укажите любой источник этой восстановительной операции., @Jose Enrique Calderon

Спросите кого-нибудь, умеющего паять smd, но это большой чип, что очень усложняет задачу. В чем была причина? Как 7В попало на контакты atmega2560? Операционный усилитель напряжением 5 В с выходным напряжением Rail-to-Rail не является проблемой. При использовании более высоких напряжений следует использовать делитель напряжения или защитный резистор., @Jot

Именно это меня и озадачивает. Сначала я использовал старый операционный усилитель, который НЕ является рельсовым, работающим при питании от -12 до +12. У меня было все настроено для усиления небольших сигналов мВ до диапазона от 0 до 5 В. Последнее подавалось на аналоговый вывод Arduino. Есть ли вероятность того, что напряжение в линии питания USB от компьютера к Arduino подскочит до 7 В? Или это было что-то, что было перечеркнуто на бородке операционного усилителя?, @Jose Enrique Calderon

Порт USB не достигает 7 В, поэтому это должно быть что-то на макетной плате. Для микроконтроллера Atmega разрешено подавать на вывод 1 мА. Оно может быть и больше, но это не указано, оно может находиться в диапазоне непрерывного тока 5 мА и пикового значения 20 мА (просто предположение). Например, защитный резистор 4 к7 на входе аналогового контакта защитит до 10,2 В (и намного больше при использовании неуказанных чисел). Простой защитный резистор может предотвратить множество проблем, внося лишь немного больше шума и немного больше неточностей., @Jot

@jot, пожалуйста, измените свой комментарий на ответ, чтобы проголосовать за вас соответственно, @Jose Enrique Calderon


1 ответ


Лучший ответ:

2

Высокое напряжение на выводе может частично повредить микроконтроллер.

Микроконтроллеры ATtiny иногда выдерживают напряжение до 7 В.
Микроконтроллеры ATmega повреждаются под этим напряжением.
ATmega2560 старше и еще более критична к напряжениям: она не может работать на частоте 16 МГц ниже 4,5 В и легко выходит из строя при напряжении выше 6 В.

Когда микроконтроллер работает при напряжении 5,0 В, входной контакт может иметь напряжение от -0,5 В до +5,5 В.

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

Решение:

Простым решением является установка защитного резистора на пути сигнала к аналоговому входу.

schematic

Согласно примечаниям к применению AVR182, для микроконтроллеров ATmega разрешено подавать ток 1 мА на вывод или вытягивать ток 1 мА с вывода. Этот ток течет через внутренние диоды ESD к VCC или от GND.

При защитном резисторе 4к7 перед входом микроконтроллер защищен до: 1мА * 4к7 + 5,5В = 10,2 В.

Внутренние диоды ESD могут иметь ток более 1 мА, но максимальный ток не указан. Это также опасно, когда, например, ATmega переходит в спящий режим. Тогда ток в 1 мА может поднять напряжение VCC и все равно повредить микроконтроллер ATmega.

Если используется делитель напряжения (два резистора, R1 и R2) и внутренний источник опорного напряжения, то делитель напряжения можно спроектировать таким образом, чтобы он был защищен от очень высоких напряжений. Например, для ATmega2560 внутреннее опорное напряжение 2,56 В, R1 = 47 кОм, R2 = 10 кОм. Он может измерять напряжение до 14,6 В и иметь защиту до 78 В.

,

Насколько я понимаю, ATmega реализует спящий режим, отключая тактовую частоту, при этом Vcc по-прежнему применяется ко всему чипу., @Edgar Bonet

@EdgarBonet да, поэтому ток, подаваемый на аналоговый или цифровой вывод, может поднять напряжение VCC выше 5 В (если напряжению больше некуда идти) и может повредить чип. Должен ли я объяснить это лучше?, @Jot