| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| LPC - някой впечатления http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=2048 |
Страница 1 от 3 |
| Автор: | Цецо [ Вто Мар 21, 2006 12:55 pm ] |
| Заглавие: | LPC - някой впечатления |
Всички стигнахме до извода че ARM архитектурата напредва. Понеже вече имам един работещ прототип с LPC2134 реших да постна няколко впечатления. Дано помогнат и на други за в бъдеще. Няма да е само за ARM-a. Проекта вече придоби слава. За тези които не са го виждали: http://www.mcu-bg.com/mcu_site/viewtopic.php?t=1972 Представлява J-метър - т.е трябва да измери отделената върху него енергия. Ще се използва за тест на дефибрилатори. Импулса се получава от един 40 до 100uF кондензатор зареден до максимум 5kV. Самия импулс е биполярен, като освен това е накъсан на парченца по 50/100 uS. Общо трае до 10ms. Енергията достига 360J. Пациента е един 50 ома 55 вата резистор, на платката е демонтиран, но за да добирете представа - заема около 80% от ширината на платката - изводите му се виждат на снимката. Мисля, че такъв шамар е сериозен тест за всяка нисковолтова електроника, а? Платката я виждате, двуслойка, постарал съм се да има доста земя, но не претендирам да е върха на опроводяването. Та: 1. LPC - то работи на 20Мхз (2х10), 3,3волта. Не съм регистирал нито един срив в работата. Честно казахно, надявах се да е така, но треперех от страх. За първи път пускам в подобни условия нещо на 3 волта. Досега винаги в тези условия е работил Микрочип (никога не съм имал проблеми с него, породени от смущения). Но Philips не бях пробвал. Е според мен се справя повече от добре. Като процесор - не съм имал проблем с писането на софтуера, документацията е прилична, ползвах IAR. Не съм дебъгвал много, защото да закачиш компютър по време на шока не е много благоразумно. Като архитектура - бавничка му е работата с I/О тата (сравнено с PIC), но след това на калкулациите си показа силата. Тъй като данните ми са 12 битови, 32 битовта архитектура даде значителен тласък спрямо PIC-a. Консумира колкото го дават по дейта шиит. Не съм имал проблеми като пипам с осицлоскопа по краката (чат пат ги окъсявам). Малко тъпо са му разположени портовете и периферията. Особенно пина за стартиране на боотлоадера при мен пречи много - раздробява ми порта, а на мен ми трябва емулация на 12 битова шина данни. Но го заобиколих софтуерно. Досега съм ползвал един таймер, DAC-a, UART (много е близък до 16550 стандарта). Предстои да пусна I2C и боотлоадера. Нещата откъм периферия изглеждат нормално. 2. Алтерата (MAX3064) - предпочетох я пред Xilinx , по препоръка на Кольо (по-стабилна на външни смущения била). Никакви проблеми засега нямам с нея. Идеята е да върти тактува едно АЦП с 1 МХз и да записва данните в една памет. Получава се кръгов буфер с размер 32ms. Така имам предисторията на шока и малко след него, помага ми при анализа. Вътре има едни броячи, буфери и малко логика, нищо специално. Оценката за средата за развой е средна до слаба. Докато я източи човек остава с впечатление, че се опитва да докопа ядрена технология. Не ми беше комфортно с нея (стила е много различен от Протел или Оркад). За справка - не съм ползвал език, директно напрасках схемата с броячите и логиката. Компилатора я компилира. При разполагането на изводите съм се интересувал да ми е удобно за платката (ще го видите ако се вгледате в снимката). Затова и вътре предполагам, че е станала голяма каша. Оптимайзера ме наплю с поне 20 warning-а че скоростта на прохождане ще спадне драстчно. Ама на мен ми трябва 1Мхз така, че го оставих да си кряка. Но пък от алтерата към процесора, АЦП-то и паметта почти всички писти си вървят директно без проходни отвори и плетеници. Голям кеф. Иначе тия 100 крака на двуслойна платката щяха да ме уморят да ги развържа. Програмирал съм я със самоделен програматор. Та работи стабилно, не се рисетва, не се самотрие. 3. АЦП-то - ще напиша няколко думи и за него, защото преди време тука се разгоря една дискусия за аналоговата и цифровата земя. Няколко човека твърдяха че аналоговата земя не трябва да е на полигон. Аз обаче не им се доверих и направих както си знам. Цифровата земя - полигон. Аналоговата - полигон. И от двете страни на платката. Аналоговата част си е в отделен сектор - вижда се на снимката. Полигоните от долната страна заемат почти цялата повърхност, ама нямам апарат сега да ги снимам. Аналоговата земя и цифровата са свързани в една точка. Апропо точно това бяха и препоръките на Linear (LTC1405 e АЦП-то) - полигони и връзване в една точка. Захранванията на АЦП-то (3 на брой) са през филтри (300uH / 10uF). Отделно има още 6 кондензатора по 10uF закачени по чипа (според препоръките). Резултата - стабилни 11 бита при 1Мхз честота на семплиране, биполярен сигнал. Последния бит - играе. Малък офсет се наблюдава (3-4 дискрета) ама не ми е проблем. Определено АЦП-то работи както искам от него. Понаписах доста, дано на някой да му е полезно. |
|
| Автор: | Сашо [ Вто Мар 21, 2006 2:19 pm ] | |||||||||
| Заглавие: | Re: LPC - някой впечатления | |||||||||
Иска ли питане! От хора дето знаят какво правят всяка информация е полезна. Ама като не стига време за толкова писане!? |
||||||||||
| Автор: | Реконструктор [ Вто Мар 21, 2006 4:19 pm ] |
| Заглавие: | |
За мен, както може би се досещаш, ще е изключително интересно да науча някои неща за програмирането. Щото при мен наближава момента да го захапвам този ARM7. |
|
| Автор: | asp [ Вто Мар 21, 2006 6:39 pm ] |
| Заглавие: | |
Аз също се занимавам с тестове на медицинска апаратура и ми е интересно да разбера че не съм единствен в българия. Каза че пациента ти е резистор 50 ома. В IEC601-1 е определено активното съпротивление на пациента да е 1 килоом AAMI load се нарча и всъщност е честотнозависим товар. Схема лесно ще намериш в гоогала. Какво смяташ по този въпрос? |
|
| Автор: | TheWizard [ Вто Мар 21, 2006 7:05 pm ] |
| Заглавие: | |
Заради ADC-то ли си го направил толкова сложна реализация и със PC ли работи този тестер... |
|
| Автор: | ДедоБоре [ Вто Мар 21, 2006 9:55 pm ] |
| Заглавие: | |
10х цецо браво за изчерпателното инфо |
|
| Автор: | Цецо [ Сря Мар 22, 2006 12:47 pm ] | |||||||||||||||||||||||||||
| Заглавие: | ||||||||||||||||||||||||||||
Дебъгер - от Balkana. Среда - IAR. С това работих, ако решиш да си с същото - ще помагам. Мисля за в бъдеще да мина на GCC и Eclipse, но все още не мога да разбера дебъгването как ще да става.
Ами 1 килоом е съпротивлението при ниски токове. Наистина е честотно зависимо. Но при високи токове настъпва поляризация на клетките, може би някакви пробиви в стените(определено не съм наясно с медицинския аспект на проблема), клетките стават проводими и съпротивлението при един дефибрилационен импулс рязко спада до около 50 ома, като интересното е, че характера му е "почти" активен. Мисля че според статистиката варира от 25 до 180 ома (варира от възраст, килограми - масни наслоявания, тип кожа). Като преобладаващо при повечето хора е около 80 ома. Но по стандарт дефибрилаторите се нормират за 50 ома.
Ами ADC-то е 12 бита 1 Mhz. Епохата на шока е около 20 мс. Но както казах ми трябва и малко от времето около шока. Затова и го направих с независим кръгов буфер, а процесора когато получи сигнал че е дошъл шока, изчаква да минат 30 мс и после изчита буфера и смята енергията. Мислех дали не мога да реализирам управлението на буфера директно с процесора, но ми се видя тежичка задача - трябваше да сложа процесор с изведена шина за данни (вътрешната памет няма да стигне) и да го пусна на висока честота. А това значи повече проблеми с EMI. А и все си мисля че процесор на който шината му е изведена отвън е по неустойчив на смущения и вероятноста за фалове расте. Идеята е да работи без PC. Но има връзка за да може да се ъпдейтва фирмуера и да може данните за шока да се пращат на компютъра ако се наложи. |
||||||||||||||||||||||||||||
| Автор: | TheWizard [ Сря Мар 22, 2006 2:14 pm ] |
| Заглавие: | |
1M семпъли (1М, 12 битови семпли) или 1Мhz / ~12 bit = по малко от 83к семпъла/sec ??? |
|
| Автор: | Цецо [ Сря Мар 22, 2006 3:41 pm ] |
| Заглавие: | |
Де да беше 83к. На 12bita*1МHz |
|
| Автор: | TheWizard [ Сря Мар 22, 2006 3:50 pm ] |
| Заглавие: | |
ааа ясно, усложни го още малко и си добави супорт към РС - опция сенд RAM - за рисуване на графиката... |
|
| Автор: | Цецо [ Сря Мар 22, 2006 3:52 pm ] |
| Заглавие: | |
Има го. Но само на тестовия вариант. На крайния ще е изключена. Така казаха шефовете - клиента не му трябвало да гледа графика. |
|
| Автор: | asp [ Вто Юни 20, 2006 1:10 pm ] |
| Заглавие: | |
Яко |
|
| Автор: | Balkana [ Вто Юни 20, 2006 1:33 pm ] |
| Заглавие: | |
Много гот |
|
| Автор: | bateAz [ Вто Юни 20, 2006 1:40 pm ] |
| Заглавие: | |
Хареса ми идеята за това тенекенце върху платката. Като гръмнат чиповете, няма да хвърчат осколки. |
|
| Страница 1 от 3 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|