Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

LPC221x ESD проблем!
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=3086
Страница 1 от 1

Автор:  mechanism_8 [ Сря Окт 18, 2006 10:15 am ]
Заглавие:  LPC221x ESD проблем!

Здравейте,
Имам проблем с LPC2212/14 и устойчивостта на му електростатични разряди (ESD). Това което установих е че тези смущения предизвикват спиране на ядрото по ралични причини: prefetch abort, data abort или просто спиране без да предизвика някакъв exception. От това състояние може да го извади watchdog таймера, но за моето приложение е недопустим рестарт, така че ми трябва друго решение. Само като тест, пуснах да мига един светодиод и конфигурирах всички останали I/O пинове като изходи в "0". Това не подобри никак устойчивостта към ESD.
Някой да се е борил с такива проблеми, или поне някакви идеи накъде да се насоча...

Автор:  the_real_maniac [ Сря Окт 18, 2006 11:09 am ]
Заглавие: 

Ми нямам опит с LPC , но ето какво съм забелязал по въпрос въобще устойчивост на големи смущения и подобни.
Както хората ще кажат като 1-во -> опроводяване и свързването на самото lpc и периферия + кварца най-вече и естествено захранването , нотова си е цяла наука.
Общи неща ти казвам знам , спокойно.

Това което исках да кажа най-вече е, че (СПОРЕД МЕН !) при сериозни изделия трябва Watchdog-a да е разрешен и да мислиш винаги така, че все едно във ПОЧТИ всеки (, ако не и всеки) важен момент ще отпадне MCU-то, поради някаквко смущение - каквото и да е.

И въпросът е да направиш добра процуда по възстановяване, но естествено и достатъчно бърза.

Щом имаш отговорна работа -> задължителен е горният подход.

Нямам много опит, колега :-) Но това е моето мнение. Нещо конкретно не мога да ти кажа, но мисля подхождащ просто грешно по проблема, затова ти И пиша !

Чао и успех :-)
Ще ми е интересно да разбера как си се справил със ситуацията :-)

Автор:  Nikola Kirov [ Сря Окт 18, 2006 11:54 am ]
Заглавие: 

От армовете дето съм тествал на ESD Philips се държат най зле. В друга тема съм писал по въпроса.
Другото което съм тествал е STR712, AT91SAM7S.

Пробвай с по смислено опроводяване на платката,но надали ще имаш забележително по добър резултат. Да не би да си пропуснал да сложиш филтриращите кондензатори в количеството което предписват ? :) Трябват и то непосредствено на пимовете ако може. При мен LPC2104 като тествах беше на кит на Olimex a SAM7 на нещо като макетна платка и въпреки това LPC-то можех да го ошашквам срвнително лесно докато SAM7 не можах въобще да го шашна с моята правена електростатика. В общи линии според мен LPC по устоичивост е на нивото на пиковете даже малко по зле ако се съди по платката на Olimex. Но като отчетем че е доста некадърно опроводена би трябвало да са на едно ниво почти.

Автор:  FiTTiLA [ Сря Окт 18, 2006 12:03 pm ]
Заглавие: 

Ако можеш прати някакви снимки на платката. Обикновенно, както каза Ники трябва да започнеш от развързващите кондери, тяхната стойност и тип (керамични или други). Хората слагат 100nF или 10nF мноооого близко до VDD крака. Другото как е екраниран кварца. Колко слойна е платката?

Автор:  Nikola Kirov [ Сря Окт 18, 2006 12:10 pm ]
Заглавие: 

Има отзиви че новите им серии LPC2300 и LPC2400 са вече доста сериозно направени и нямат вече забележки с устойчивоста но лични наблюдения нямам. Но ще се пробват и те някой ден :) Засега има само семпли за богоизбрани :)

Автор:  Цецо [ Сря Окт 18, 2006 1:58 pm ]
Заглавие: 

1. АРМ за който говори човека е с външна шина. Няма никакъв смисъл да го сравнявате с SAM-a на Атмел. Всеки процесор с изведена шина е по сензитивен на външни влияния. Това е известно.
Ако говорим за затворен контролер - знаете каква платка пуснах с LPC2134 и на какво я подлагам - е работи без ядове.

2. Кучето както правилно е казал човека с нищо не може да му помогне, освен да регистрира проблема (това за maniaca, да не си мисли че кучето решава проблеми - то ги регистрира).

Това което мога да ти дам като съвет е:

- Кварца задължително с заземен корпус, като земята задължително е същата като на процесора (най-добре двете да лежат на общ земен полигон).

- Всички захранвания на процесора с по 100n, към земя. Освен това самото захранване се подвежда през 100uH/10uF(тантал) филтър.

- Ако не ползваш външната шина (в което се съмнявам, за чии ти е иначе тоя корпус) - дръпни я към земя с 10к. Въобще всички неизползвани пинове - или направо на земя (ако си сигурен че никога няма да ги ползваш) или през резистори към нещо твърдо. Висящ CMOS вход.... знаеш какво е. И да позлваш външната шина, пак я дръпни колкото можеш повече към земя или захранване с резистори.

- Ако имаш възможност за 4 и повече слоя - 1 захранване и 1 земя power plane помагат много. Ако не, максимално запълваш всяка възможна дупчица по платката с земя. Голямо количество проходни отвори в земните полигони. Абе няма нещо което да помага в случая повече от земята.

- Захранването филтрирай, където и колкото можеш повече. На входни/изходни кабели EMI suppresion ферити.

- Рисета - аз лично ползвам външен чип, и освен това имам винаги 10к/100n филтър директно на пина.

- Къси писти. Колкото се може по къси. И пак - мнооого земя.

Друго сега не се сещам, но платката е най-важното нещо за борба с ESD. Другото е метални екрани, но там говорим вече за други химии.

А бе я дай лейаута на платката да видим какво може да се направи. А и кажи какъв е характера на смущенията, какво ги провокира?

Автор:  Tanev [ Сря Окт 18, 2006 2:10 pm ]
Заглавие: 

Знам че вапроса е за "Академия" , но го видях тук. Та да попитам какво ще рече
"- Рисета - аз лично ползвам външен чип, и освен това имам винаги 10к/100n филтър директно на пина." ?
:oops:

Автор:  Nikola Kirov [ Сря Окт 18, 2006 2:21 pm ]
Заглавие: 

Цецо написа:
1. АРМ за който говори човека е с външна шина. Няма никакъв смисъл да го сравнявате с SAM-a на Атмел. Всеки процесор с изведена шина е по сензитивен на външни влияния. Това е известно.
Ако говорим за затворен контролер - знаете каква платка пуснах с LPC2134 и на какво я подлагам - е работи без ядове.


Аз съм сравнявал Philips без външна шина с ATmel i STR712 също без външна. Мисля че теста е съвсем коректен. А за външната шина спор няма че влошава положението.

Но за твоя случай трябва да се отбележи че си вкарал всичко в метална екранировка. Това ти решава голяма част от проблемите.

Автор:  FiTTiLA [ Сря Окт 18, 2006 2:35 pm ]
Заглавие: 

Tanev написа:
Знам че вапроса е за "Академия" , но го видях тук. Та да попитам какво ще рече
"- Рисета - аз лично ползвам външен чип, и освен това имам винаги 10к/100n филтър директно на пина." ?
:oops:


Товя ще рече че на повечето MPU ресета е с активно ниво '0', слага се резистор към захранване, след резистора слагаш кондензатор, като свободния карай на кодензатора вързваш на маса. Пример: 3V3 - RES- -||- GND, reseta на MPU-то го вързваш между резистора и конданзатора. Получава се RC група, за да може да мине глатко POR - Power On Reset-а. За външна IC използвам MCP130.

Автор:  Цецо [ Сря Окт 18, 2006 2:38 pm ]
Заглавие: 

Nikola Kirov написа:
Но за твоя случай трябва да се отбележи че си вкарал всичко в метална екранировка. Това ти решава голяма част от проблемите.


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

Екраните в моя случай не са да я пазят от ESD (Защото аз така или иначе имам галванична връзка с източника на смущение), а за да не излъчва тя в ефир. Не че не помагат и за устойчивост, но не разчитам на тях.

Между другото първата версия на платката беше 2 слоя без метални екрани. И си беше стабилна.

Tanev написа:
Знам че вапроса е за "Академия" , но го видях тук. Та да попитам какво ще рече
"- Рисета - аз лично ползвам външен чип, и освен това имам винаги 10к/100n филтър директно на пина." ?
:oops:


Ресет генератор е външния чип. А филтъра е 10к към плюс / 100n към земя вързани директно на пина.

Автор:  sthx [ Сря Окт 18, 2006 9:50 pm ]
Заглавие: 

И според мене опроводяването на платката е най-важно за борба със смущенията. Не ми се е случвало, когато имам проблеми добавянето на допълнителни кондензатори да подобрят ситуацията. Може би от мързел до сега не съм правил повече от двуслойни платки. Работят си и така и то обикновено в среда със много силни смущения. Задължително правя мрежа от пътечки с приблизителна стъпка 4-5 см както на масата, така и на захранването. По книгите пише, че такава мрежа играе ролята на екран при високочестотните смущения. Особено голямо внимание трябва да се отдели на високоомните вериги - в случая това е кварца. На много места из литературата се срещат примерни опроводявания в тази област. Относно екраните - правил съм експерименти и съм установил, че ако няма възможност като екран да се ползва масата, със същата ефективност може да се ползва и захранването - връзката между двете шини по променлив ток е нискоомна. Около проводника на reset-а също правя екранировка. И пак - колкото се може по-къси проводници на чувствителните линии.

Автор:  Zdrav [ Сря Окт 18, 2006 10:27 pm ]
Заглавие:  Re: LPC221x ESD проблем!

mechanism_8 написа:
Имам проблем с LPC2212/14 и устойчивостта на му електростатични разряди (ESD). Това което установих е че тези смущения предизвикват спиране на ядрото по ралични причини: prefetch abort, data abort или просто спиране без да предизвика някакъв exception...

Това което си писал ме навежда на мисълта, че опитите ги правиш със свързан дебъгер към JTAG.(Щом като виждаш в какъв exeption влиза ядрото ...) Ако е така повтори ги като сложиш програмата да се изпълнява от вътрешния FLASH на MCU. Ползвам LPC2214 в едно усройство и когато JTAG дебъгера ми е свързан към платката мога да го ошашкам само като допра сонда до масата. Когато програмата върви от FLASH-а на MCU не съм успявал да го блокна.

Автор:  the_real_maniac [ Сря Окт 18, 2006 11:57 pm ]
Заглавие: 

Една идейка - да изчакате да видите човека какво ще каже дотук , не че темата не е интересна , но все пак автора се поизгуби ;-) :-)

edit: едно извинение за горното, по часовник - един ден е минал (14часа де), а на мен ми се струват поне два, три толквоа неща станаха и днес, че .. такова чувство ми се създаде :-)
8) ;-) :-)

Автор:  miro_atc [ Чет Окт 19, 2006 12:24 am ]
Заглавие:  Re: LPC221x ESD проблем!

мда... първо трябва да се определи дали проблемът идва от външната шина.
Но на тоя процесор при толкова флаш ме съмнява че изпълнява код отвън...

За JTAG-а това май е болно място на всички АРМ-ве. Може да се сложи малък кондензатор на TCK, но не... и в jtag-a не е проблема щото щеше да му забива и дебъгера (освен ако не е някой много убав) а не да вижда абортите...

Ако наистина не е шина и не jtag, остава PLL-a щото той най-лесно се разсейва от малки шумове и вкарва фалшиви тактове. Не знам Филипс но Атмел имат що-годе читав калкулатор и като си избереш честота може да видиш различни вариант за множители/делите като дава разни фактори и таки може да си направиш компромис колко станилен да е спрямо захранването и съответно колко шум самия той прави...

п.с. така без автора е по-интересно - трябва да се отгатне не само решението но и какъв е самия проблем ;-)

Автор:  mechanism_8 [ Чет Окт 19, 2006 9:17 am ]
Заглавие: 

Благодаря за всички мниения и идеи. Пропуснах да уточня че кода се изпълнява отвън. Макар че правих тестове с код
във вътрешния флаш и не се държеше по-добре. Не правя тестовете със закачен JTAG. При всеки exception записвам стойност в една променлива, след като се случи exception и ме рестартира watchdog-а извеждам стойността на променливата, така че да определя причината..
Платката е ужасно наблъскана с много хардуер и няма кой знае каква свобода за промяна на опроводяването, така че като начало ще опитам варианта с 4 слойна платка. Това ще отнеме време, но ще споделя резултатите когато има такива.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/