|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 1:36 am
Прекъсване се задейства само
| Автор |
Съобщение |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
 Re: Прекъсване се задейства само
Контролера изобщо не е тъп. Железен е! Той само прави това което ти му зададеш, ако имаш пропуски не ти е виновен той  Наслагай хубави филтри по захранване, ако на осцилоскоп не излизат смущения по входа на прекъсването или по захранването, търси проблема в някое дребно недогледано условие или код в програмата.
|
| Пет Юни 07, 2013 4:24 pm |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
 Re: Прекъсване се задейства само
Аз пък бих му забил ресета като изход, та да съм сигурен че от там не влиза смущението (ако е такова де).
|
| Пет Юни 07, 2013 4:38 pm |
|
 |
|
tgi
Ранг: Форумен бог
Регистриран на: Нед Юни 10, 2007 2:22 pm Мнения: 6492 Местоположение: София
|
 Re: Прекъсване се задейства само
Това има повече смисъл отколкото изглежда на пръв поглед, неотдавна 3 кила се оказаха малко за reset жицата (към 3.3. волта) на моя платка която не беше проявявала такива капризи; веднъж на няколко часа ставаше белята. Един flyback трансформатор в близост (за 5 киловолта) беше почнал да става прекалено качествен и осигуряваше dV/dt колкото да напакости... Та оттогава там е 1 кило (нямам опцията да е изход, това би било още по-желязно но на такъв голям процесор разбираемо не го правят).
_________________------------------- www.tgi-sci.com------------------- http://www.flickr.com/photos/didi_tgi/
|
| Пет Юни 07, 2013 4:57 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Прекъсване се задейства само
При пикчетата и едно добро опроводяване решава проблеми. Примерно един хубав граунд плейн на платката ми е свеждал смущенията от 100% на 0%. Точно в същата ситуация - контакотри дето комутират електромотори наблизо. На входовете на 4081 сложи пулъп и 100н кондензатор - ако не помага, със сигурност няма да пречи - още повече ако тия О1 и О2 ти идват по кабел от реле и от далече. Пулъпа може даже и до под 1к да слезе. И защо избра точно този 4081? гледам сега даташит на някъв - ми той изходите му са по 1-2 ма...
|
| Пет Юни 07, 2013 7:03 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Прекъсване се задейства само
Значи ти твърдиш две различни неща, първо казваш че постоянно имаш прекъсване, което аз го разбирам като постоянно постъпване на прекъсване. Сега казваш че това става на случаен принцип, и най-вече при включване на контактор, тук вече има съвсем ясна закономерност. Я кажи първо как се държи у-вото когато е извън таблото на маста ти, пак ли влиза на случаен принцип в прекъсване или няма такъв проблем. Ако продължава да влиза има нещо което или не си го нарисувал на схемата, или е някъде в кода ти. Ако на масата спира да влиза и работи както трябва проблема е ясен, става въпрос за смущение. Обаче щом имаш същото поведение дори при дадени към маса входове на ЛЕ, т.е. имаш твърда 0 на вход прекъсване, няма да е прекъсване минало през входа. Аз по скоро бих гледал захранване и ресет. По някакъв начин следиш ли дали не минаваш през ресет. освен всичко друго пика има еидн регистър в който пише защо се е ресетнал, дали е BOR, MCLR или нещо друго, аз бих закачил един два светодиода за различните източници на ресет и бих погледнал дали не минавам през ресет и ако минавам от къде е. То е ясно, най-вероятно е захранване. Та ако дадеш пълната схема, вкл. и това как си реализирал захранването ще е по полезно. От там насетне, опроводяването е много важно, ако е пробна платка също е важно кое къде си свързал. На схемата имаш филтриращ кондензатор, май вече те питах къде се намира физически, но не помня да съм видял отговор. проблема ти като цяло изглежда доста тривиален, и е най-често срещания.
п.с. сега като зачетох колегат агоре, ако наистина изхода е 1-2 мА .. ммм трудно но смущение може да го вдигне, обаче е важно да имаш филтриращ и на захранването на чипа, иначе всичко може да идва от него, т.е. да не влиза в процесора а да ебава ЛЕ а той вече съвсем нормално да преебава процесора, и ако е така също е логично че и с 0 на входаовете му пак имаш прекъсване.
|
| Пет Юни 07, 2013 7:16 pm |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Прекъсване се задейства само
Сега се загледах в схемата. Входове А3 и В3 на 4081 висящи ли са както са начертани на нея? Ако да, свържи ги към маса. Оставянето на "висящи" CMOS входове е недопустимо!
|
| Пет Юни 07, 2013 7:26 pm |
|
 |
|
tgi
Ранг: Форумен бог
Регистриран на: Нед Юни 10, 2007 2:22 pm Мнения: 6492 Местоположение: София
|
 Re: Прекъсване се задейства само
А бе ако контактор го ошашавява като щрака има мноого опроводяване и разбиране на това, което става докато се справи с проблема  .
_________________------------------- www.tgi-sci.com------------------- http://www.flickr.com/photos/didi_tgi/
|
| Пет Юни 07, 2013 7:54 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Прекъсване се задейства само
Ами това което аз съм срещал най-често като проблем е не прекъсване или сигнал на пин а ресет на процесора, сега зависи как е написано и доколко си запознат с джелезото защото може да изглежда и като влизане в прекъсване. Оправията е лесна ама трябва да занеш аккво да оправяш, опроводяване задължително, слагане на липсващи кондензатори задължително, оправяне на захранването, най-често от там тръгват много проблеми, ако се наложи ферити и филтри на входните сигнали, кутийче което да екранира ...
|
| Пет Юни 07, 2013 8:29 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Прекъсване се задейства само
Тука се превърнахме на клуб Екстрасенс. Гадем по картинка, без да сме я видели. Нека си покаже точната схема, снимка на устройството и кода. Нека да каже кой компилатор ползва и под коя ОС го пуска и чак тогава, ще можете да го насочите къде може да проблема. Иначе има 1 000 000 причини, които може да ошашкват процесора.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Пет Юни 07, 2013 8:42 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Прекъсване се задейства само
Да така е, но очевидно не иска да показва цяла схема/сорс и платка, а ние пък тренираме въображението си и си раздвижваме мозъците, да занеш цял ден съм връзвал един АВР и освен че се борих с дебелички кабели .. трябваше да се правя и на шлосер а накрая и да ремонтирам боркорона ... тва щото в цял склад само една с изядени зъби на тоя размер а магазина далеч ... та подобно упражнение ми е ОК п.с. кабелите всъщност не бяха никак дебелички, до преди месец се борех с по 200 кв а ти я някакви смешни жички по 10 ама ...
|
| Пет Юни 07, 2013 8:52 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Прекъсване се задейства само
Аве то зависи от кабела, щото аз и на 4х4 съм псувал цял ден. Разчетох си всичко за 4кв. ама за това дето често се среща по нашите географски ширини. Да де ама пустите англчани да вземат да опънат един със стоманена броня а жилата някви нито едножилни нито много жилни - с няколко дебели жила - няма сгъване, не влиза в щуцери - абе въобще екшън. Външно на дебелина е колко СВТ 4х16.
|
| Съб Юни 08, 2013 9:20 am |
|
 |
|
sthx
Ранг: Форумен бог
Регистриран на: Съб Юни 24, 2006 8:25 pm Мнения: 2292
|
 Re: Прекъсване се задейства само
Защо входът трябва да работи на прекъсване? Може да се чете през 1 mS и като се преброят 100 последователни вярни сигнала, значи действително копчалъкът е натиснат и тогава тръгва да работи. Иначе проблемът със смущенията е трябвало да се бори още с проектирането на схемата и платката.
_________________ Две плюс две е приблизително равно на четири. Факт!
|
| Съб Юни 08, 2013 12:23 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Прекъсване се задейства само
Еееееее едва ли е тук мястото да даваме отговор на този въпрос, добре го е решил да е на прекъсване, в това лошо няма, в повечето случаи това е читав начин. Не е проблем ако програмата е добре написана да е някъде в основния цикъл, в подобни случаи може да има предимства, ако наистина идват много грешни сигнали и целта е да се отфилтроват цифрово, с проверка в тялото ще е по-лесно и бързо като код, тъй като няма да има постоянни влизания и излизания от прекъсването. От друга страна полирането на входа не е надеждно, той може да е минал от 1 в 0 и после пак в 1, но да е станало докато си бил другаде, т.е. смущение е но ти го изтърваш. Разбира се може да е комбинирано, входа да си е на прекъсване, но прекъсването да не е активно а ти да полираш флага на прекъсването ... варианти различни, но като цяло прекъсването си е най стандартният начин, бърз и ефективен, а при 18-ките където имаш и вектор не яде много код и не губи време.
|
| Съб Юни 08, 2013 1:27 pm |
|
 |
|
sthx
Ранг: Форумен бог
Регистриран на: Съб Юни 24, 2006 8:25 pm Мнения: 2292
|
 Re: Прекъсване се задейства само
"Читаво" решение е това, което най-малкото работи. Да обработваш по фронт бавни сигнали, които освен това вероятно съдържат множество "подскачания" при включване и изключване не е "читаво" решение.
_________________ Две плюс две е приблизително равно на четири. Факт!
|
| Нед Юни 09, 2013 8:54 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Прекъсване се задейства само
Абе да ти кажа намен последните 15-на години не ми се е случвало да не работи. Преди доста време автоматизирах един агрегат за цилиндрични заварки,та тогава имах разни проблеми от подобно естетсво които си бяха чисто хардуерни и се решиха сравнително лесно. Най-голям проблем по спомен правеше линейното захранване което не успяваше да подтисне смущенията по захранването. Подобен проблем имах и в табло с доста контактори, и в двата случая се реши лесно. Та подскачащия сигнал не му е мястото да се решава със софтуер, ако е бутон дам но в другите случаи се решава проблема а не се заобикаля със софтуер. Полирането не ти позволява реализиране на надежно и в същото време ефективно решение, или губиш много CPU време или винаги има шанса да пропуснеш. Както ти дадох и примера за тия 50 или 100 полирания на сигнала, или са в тялото на основния цикъл, т.е. се изпълняват през сравнително дълъг период и е възможно да имаш невалидни състояния които да не засечеш, или пък го правиш в един цикъл, което пък ти забива процесора за N периода и не правиш нищо друго. Фронта е единственото решение което ти позволява да откриваш промените, а дали ще го изпълниш в прекъсване или просто е ползваш механизма на прекъсването и ще го полираш е съвсем друг въпрос.
|
| Нед Юни 09, 2013 10:56 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 4 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|