Ці бяспечна вадзіць I/O штыфтоў неўключэнне AVR ATmega328P?

Ці бяспечна ездзіць кантакты гэтага AVR чып, пакуль ён абясточаны?

Напрыклад, калі б я падзяліць драйвер рухавіка такім чынам, што ён можа кіравацца двума мікракантролерамі, будзе альбо мікракантролер будзе пашкоджаны у той час як іншае абясточана, але бачачы напружанне сігналу на яго штыфты з іншага мікракантролера?

EDIT: Паколькі гэта была пазначаная як дублікат, вось некаторыя тлумачэнні. MCU, паказаны тут, адрозніваецца ад іншага вытворцы. Хоць я не ўпэўнены, іх эксплуатацыя і абмежаванні будуць, безумоўна, адрозніваюцца. Гэтае пытанне не пра Wether гэта будзе «аслабіць» МК, але пра тое, калі гэта бяспечна зрабіць гэта ў першую чаргу. ИМО аслабіць азначала б, што гэта магчыма, але з часам гэта будзе пагаршаць прадукцыйнасць MCU.

4
Што тэхпашпарт сказаць пры абсалютных максімальных ацэнках?
дададзена аўтар user20218, крыніца
Звярніце ўвагу, што кантакты ўводу-выснова, верагодна, маюць ахоўныя дыёды ESD, што будзе азначаць ваш MCU будзе фантомным харчаваннем, калі вы водзіце яго абясточаны.
дададзена аўтар Sunichi, крыніца

7 адказы

Вы можаце быць зацікаўлены ў відэа EEVBlog ў аб харчавання мікракантролер без падлучэння харчавання шпількі . Калі вы водзіце кантакты ўводу/вываду на MCU, вы можаце ў канчатковым выніку уключэннем харчавання мікракантролера праз свае ахоўныя дыёды.

Калі пасля падзення дыёд, ваш VCC заканчвае тым, што вышэй або ніжэй мінімальнага напружання, неабходнага для прывада вашага MCU (або прыцягнуць больш току, чым унутраныя дыёды могуць апрацоўваць), то ён не будзе працаваць правільна. Вядома, гэта калі ваш VCC растуляць і ня закорочен на зямлю (або нуль вольт).

Вось схема эквівалентнай схемы для вашага ATmega328P:

enter image description here

Звярніце ўвагу на дыёды ад зямлі да VCC.

У любым выпадку, тэхнічнае апісанне не <�ет> відавочна паказаць дакладнае паводзіны ваджэння ATmega328P ад загваздкі I/O.

Тым не менш, гэта не сказаць, абсалютная максімальнае напружанне вы можаце звярнуцца да (без nRESET) I/O кантактны Vcc + 0.5V. Як mbrig адзначыў у каментарах, калі вы фантомныя харчаванне чыпа, падзенне дыёд, вельмі верагодна, выкліча напружанне на выснове I/O, каб быць больш, чым Vcc + 0.5V.

Ліставыя дадзеныя стану, эксплуатацыі ATmega328P за межамі яго абсалютнага максімальная адзнака можа прывесці да незваротнага пашкоджання, таму я рэкамендаваў бы супраць яго.

16
дададзена
@ilkkachu Так, калі Vcc нейкім чынам заземлены, вы рызыкуеце пашкодзіць ці/як ATmega328P і ўсё, што за рулём яго.
дададзена аўтар Sunichi, крыніца
@mbrig Я рэдагаваў адказ ўдакладніць
дададзена аўтар Sunichi, крыніца
@electrophile Праверце спецыфікацыю супраць вашага дызайну. Калі вы працуеце яго ў рэкамендуемых парогах, вам будзе добра
дададзена аўтар Sunichi, крыніца
Я downvoted, таму што гэтая сітуацыя не з'яўляецца «нявызначанай», гэта даволі ясна з табліцы: прыкладання напружання> Vcc + 0,5 (якое павінна быць верным фантомнай ўлада IC) да любога штыфта парушае абсалютныя максімальныя значэння і можа пашкодзіць мікрасхему.
дададзена аўтар mbrig, крыніца
Выдатна downvote выдаленыя!
дададзена аўтар mbrig, крыніца
І калі VCC <�я> з'яўляецца заземлены, напружанне на выснове I/O б проста кароткае замыканне на зямлю, што прыводзіць да занадта вялікім току і, магчыма, дзьме сама меней, ахоўны дыёд, праўда?
дададзена аўтар Sophy, крыніца
Зразумела. Калі б я тады трымаць MCU харчавання, што будзе трымаць напружанне вываду I/ў бяспечных межах, і што павінна быць у парадку, праўда?
дададзена аўтар Simon, крыніца

З табліцы:

ATmega328p datasheet:

Максімальнае напружанне на любым іншым штыфтам, чым _RESET вызначаецца як «Vcc + 0.5V». Калі чып абясточаны, Vcc з'яўляецца 0, так што няма - вы не можаце бяспечна прымяніць любы напружанне вышэй 0,5В.

Калі вы хочаце падзяліцца I/O паміж дзвюма часткамі, дзе адзін з іх можа быць абясточаны, вам трэба нейкае перамыкач.

9
дададзена
@tangrs True. Тэхнічнае апісанне на самай справе не ўлічвае гэтую магчымасць, але гэта, вядома, не кажа, што гэта нармальна таксама. (І гэта, безумоўна, не так.)
дададзена аўтар BrainSlugs83, крыніца
Хутчэй за ўсё, у тым, што шыны харчавання будзе ўтрымліваць ёмістасць, якая запатрабуе зарадкі, каб падняць Vcc так «абясточана» вельмі падобны на «пры 0 вольт». +1.
дададзена аўтар user20218, крыніца
Ручной інструмент можа азначаць разрыў ланцуга, а не nessecarily 0В
дададзена аўтар Sunichi, крыніца

Небяспечнае як для AVR і іншых мікракантролераў. Рэсівер паспрабаваць для ўключэння харчавання, калі іншы MCU кіруе яго I/O шпількай «высокая». Не добра для AVR - ён прызначаны для харчавання ад стараннага штыфта харчавання. Дрэнныя рэчы могуць здарыцца інакш. Паколькі вытворца відавочна кажа «не рабіць гэтага», вытворца не абавязаны сказаць, што «дрэнныя рэчы» вы можаце сутыкнуцца. Мой вопыт паказвае, што "дрэнна" у дыяпазоне ад вельмі дзіўным да <�моцнага> дыму .
Бо AVR можа выглядаць як кароткае замыканне на зямлю, а другі MCU (спрабуючы выцягнуць яго выхадны кантакт высокага) сутыкнецца з цяжкім грузам. Ён можа не пацягнуць гэтак жа высока, як і павінна быць, і выклікаць занадта вялікі ток цячы (пакласці яго ў небяспецы).
У групе рызыкі таксама драйвер рухавіка, асабліва калі гэта PWM. Не ведаючы, што ён павінен быць «высокай» або «нізкі» (дзесьці пасярэдзіне), гэта можа прывесці да перагрэву.
Такім чынам, вы рызыкуеце усе .

4
дададзена
Зразумела. Дзякуючы.
дададзена аўтар Simon, крыніца

Няма.

На ўваходзе большасць кантактаў на прыладзе, такія як AVR ATmega328 ёсць дыёды для абароны чыпа ад электрастатычнага разраду (ESD). Гэтыя дыёды падключаюцца да рэйкі харчавання прылады.

Калі вы водзіце лагічны сігнал на шпільку, калі прылада абясточана ён будзе спрабаваць уладай праз дыёд. Гэта можа прывесці да пашкоджання, але часта гэта будзе ўплываць на схему харчавання на-перазагрузкі, так што прылада не ўключыцца правільна, калі энергія даступная. Гэта часта з'яўляецца прычынай нечаканага спажывання электраэнергіі ў батарэйках схем.

Вы павінны змясціць у мультыплексар, каб выбраць MCU кіруе драйвер рухавіка або арганізаваць што і мікракантролеры працуюць, але адзін, які не прызначаны для працы рухавіка захоўвае свае парты ўводу/высновы ў высокоимпедансное стан (напрыклад, як ўваход).

Typical MCU I/O port

4
дададзена
Вы можаце змясціць тры-стану буфераў паміж высновамі ўводу/высновы кожнага мікракантролера і драйвера рухавіка. Вы б арганізаваць буферы, каб заўсёды атрымліваць харчаванне, але ўсталяваць выхадны-дазваляльны сігнал на буфер, адпаведна, на падставе якіх мікракантролер ўключэнні. Гэта, па сутнасці, тое ж абсталяванне, што ўнутры выходных драйвераў на мікракантролерах, але разбіўшы яго ў якасці дыскрэтнай часткі, вы можаце кантраляваць яго асобна ад улады MCU.
дададзена аўтар Tobi, крыніца
Калі вы трымаеце працэсар ў стане скіду ўсе парты ўводу-вываду павінны ісці высокі імпеданс (ліст дадзеных тлумачыць, што адбываецца ў рэжыме скіду). Гэта зойме час для працэсара для запуску пры адпушчэнні скіду. Гэта можа працаваць для вас, хоць.
дададзена аўтар remram, крыніца
Я ведаю, што яны могуць быць сканфігураваны як ўваходы з дапамогай праграмнага забеспячэння, аднак, ёсць спосаб, з дапамогай апаратных сродкаў, каб пакласці ўсе парты ўводу-высновы ў высокоимпедансное стан?
дададзена аўтар Simon, крыніца

Паводле спецыфікацыі V <�суб> IH </суб> = V <�суб> CC </суб> + 0,5 У, так ад гэтага ў адзіночку, гэта не.

Аднак, калі V <�поўдзень> CC </суб> сапраўды «адкрыты», сілкуючыся кантакты ўводу/высновы будзе прымяняцца фантомныя V <�суб> CC </суб> да прылады, таму ён не будзе сапраўды выключаны, так што збольшага нівеліруе вышэй пытанне, але ён адкрывае цэлы новы можа чарвякоў.

Нават калі вышэй не з'яўляецца праблема, няма ніякай гарантыі, вы на самой справе будзеце ў стане вадзіць кантактныя высокую I/O, калі прылада выключана. Вы можаце знайсці выхад вельмі нізкі супраціў да зямлі.

Апошняе пытанне таксама ставіцца і да <�моцны> ўваходных кантактаў занадта </моцныя> па шляху. Калі выказаць здагадку, што чыпы V <�суб> CC </суб> заглух на зямлю, уваход будзе ўяўляць сабой дыёд з кандэнсатарам на зямлю на любы сігнал, які вы спрабуеце вымераць з іншай прыладай.

Basically... don't do it.

2
дададзена
<�Р> Ці бяспечна ездзіць кантакты гэтага AVR чып, пакуль ён абясточаны?

што ў бясьпецы ці не з'яўляецца адносным.

phantom powering a device can be handy -> powering on demand basically. for example, you can have a set-up where the slaves are phantom powered and normally off. the master can send a few pulses on the transmission line to wake it up and once the transmission is over, the device goes off all by itself.

але, як і ўсё ў жыцці, ён прыходзіць са сваімі ўласнымі рызыкамі, якія павінны быць прызнаныя і кіравацца адпаведным чынам.

так што гэта не так сказаць катэгарычна, што фантомныя харчаванне з'яўляецца добрым ці дрэнным практыкай.

1
дададзена

Хоць гэта і не ў тэхнічным апісанні, то правіла заключаецца ў тым, што ўнутраныя ахоўныя дыёды ESD можа мець 1мА для 8-бітавага чыпа AVR. Дыёды дазваляюць больш току, але 1мА рэкамендуемы максімум.
Калі дзельнік напругі выкананы з двума рэзістарамі, гэта 1мО можна выкарыстоўваць для разліку максімальна дапушчальнага напружання для дзельніка напругі.

Прымяненню AVR182 Atmel згадвае 1м.

Станоўчы ток у шпільку цячэ да VCC і можа прывесці чып AVR і/або ланцуг. Гэта можа прывесці да непрадказальных паводзінаў, калі чып AVR працуе паблізу свайго ніжняй мяжы напружання.
Пры наяўнасці дастатковай колькасці напружання і току ён можа нават падняць напружанне нашмат вышэй 5.5V, і знішчыць чып AVR. Асабліва, калі чып AVR знаходзіцца ў рэжыме чакання. Гэта для іх небяспечна выкарыстоўваць, але гэта можа быць зроблена.

Заўсёды быць асцярожнымі пры ўжыванні напружання да штыфта. Выкарыстоўвайце ахоўны рэзістар для абмежавання току. Гэта таксама бяспечней для нармальнай працы. Гэта азначае, што, калі два чыпа AVR 5V злучаныя адзін з адным, павінны быць 4K7 рэзістары паміж імі, каб абмежаваць ток каля 1 ма, калі адзін чып AVR не мае ніякай сілы. У залежнасці ад схемы, якія могуць уплываць на 4k7 сігналы.

Там можа быць нават больш наступстваў, я не ўпэўнены, што згадаў пра іх усё.

1
дададзена