| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Има ли смисъл да се ползват PIC18 вместо PIC16 http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=3599 |
Страница 1 от 2 |
| Автор: | Zeus [ Пет Яну 19, 2007 10:56 am ] |
| Заглавие: | Има ли смисъл да се ползват PIC18 вместо PIC16 |
Та въпросът ми е следния: При условие че ползвам в дадена схема само портовете и таймерите и в момента използвам 16-та серия, има ли смисъл в конкретната схема да използвам 18-ка вместо 16-ка. Не става въпрос за цената, но при условие че не ми трябват допълнителните неща, които дава 18-та серия, заслужава ли си? Дали схемата ще работи по-стабилно и надеждно и т.н. Просто ми е интересно специалистите да си кажат мнението. До сега съм работил само с 16-та серия, но мисля да минавам на 18-та, но все още не съм използвам допълнителните неща от периферията дори на 16-ките, като АДЦ-то и др. |
|
| Автор: | evc [ Пет Яну 19, 2007 12:55 pm ] |
| Заглавие: | |
Вземаш бял лист и пишеш най-отгоре: Въпрос: Има ли смисъл да ползвам вместо скромния си VWголф, Mercedes Benz 300SEL? Отдолу отговаряш, сравнявайки по надеждност, удобство при експлоатация, възможности, без да отчиташ цената като фактор. След това отрязваш горната част на листа, и прикрепяш там листче, на което е написано заглавието на тази тема. Воала! Имаш си отговор на въпроса! |
|
| Автор: | valioman [ Пет Яну 19, 2007 1:10 pm ] |
| Заглавие: | |
Особенно пък както казваш че не си "изцедил" 16 ките докрай Ползвай което ти е на приемлива цена и ти върши работа и най важното С КОЕТО СИ ЗАПОЗНАТ. Поздрави!!!! |
|
| Автор: | Cekins [ Пет Яну 19, 2007 3:05 pm ] |
| Заглавие: | |
Ето няколко неща които лично на мен ми улесниха работата, въпреки че и аз не съм изцедил 16-ките, но минах на 18 : 1. 32 нива на стека за прекъсвания - особено когато пишеш на език от високо ниво, при по-голямо разгръщане на програмата не ти се налага постоянно да следиш на колко прекъсвания си в момента. 2. 3 регистъра за индиректно адресиране - изключително удобство. 3. четене от флаша с една инструкция - също голямо удобство когато имаш много константи (примерно някакво меню) 4. три външни прекъсвания на RB (като RB0) 5. 16 битовите инструкции - кода като цяло става по малко Има и други неща де. |
|
| Автор: | Zeus [ Пет Яну 19, 2007 3:10 pm ] |
| Заглавие: | |
Имах предвид има ли някаква разлика като стабилност на работа и бъгове. За сега не съм открил бъгове в 16-ките но и не съм се ровил кой знае колко надълбоко. Тук във форума виждам много теми, дето здраво се плюят този или онзи контролер, отделни сериии или направо Microchip. Та за това попитах има ли някакви подобрения в 18 серия спрямо 16 като стабилност при работа (освен че флаша може да се презаписва многократно повече пъти |
|
| Автор: | Цецо [ Пет Яну 19, 2007 4:17 pm ] |
| Заглавие: | |
като гледам на какво ниво си (без да се обиждаш), бъговете не са ти проблем - действай смело с каквото ти е кеф. Когато опреш до серийно пройзводство, тестове и сертификати (дано да стигнеш до там) тогава ще мислиш за бъгове. На твойто ниво бъговете няма да ги забележиш, сигурен съм. |
|
| Автор: | Cekins [ Пет Яну 19, 2007 7:12 pm ] |
| Заглавие: | |
А и има чипове, които са по-отдавна на пазара с поизчистени бъгове. Аз ползвам 18Fxx2 серия и съм доволен засега. |
|
| Автор: | trm_only_for_work [ Пет Яну 19, 2007 8:09 pm ] | |||||||||
| Заглавие: | Re: Има ли смисъл да се ползват PIC18 вместо PIC16 | |||||||||
Ами аз искам да Ви обърна внимание на една 18-ка, която е на много приемлива цена. 18F45J10 1. цена 2. възможности - PIC18 + PICxxJxx 3.подръжка - ами след още няколко години сигурно изделия със 16-ки ще започнат да искат смяна и тогава ще видиш как ще се чудиш откъде да я вземеш. преди беше 16 и 18, сега бавно бавно 18 и 24 това е мойта гледна точка иначе и аз работата си я върша засега на 16-ки, но защо да не си го направя удобно. примерно на 16-ката нямаш отрицателният показател (бит) -> ето един елементарен плюс. памет->рам, не flash-a повечко. Виж откъм консумация не съм правил никакви сравнения, винаги съм ползвал захранваня и не ми се е налагало да мисля дали ще съм 100mA отгоре или отдолу |
||||||||||
| Автор: | zaphod [ Пет Яну 19, 2007 11:10 pm ] |
| Заглавие: | |
ами че то хардуера на 18ките и 16ките е един и същ, ако само той ти се струва важен, то никакъв смисъл няма. аз виждам обаче следните предимства: 1. възможност за дебъг 2. възможност за направа на самозареждащи се системи (достъп до програмната памет) 3. разни нови инструкцийки за условен преход, макар че най-важната според мене - сравняване на W с константа, все пак липсва. |
|
| Автор: | Predator_MF [ Пет Яну 19, 2007 11:39 pm ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
Аз ли нещо не разбрах... 1. има го и в 16-ките... 2. от 16F872 до 16F877 го подържат това 3. SUBLW <К> и XORLW <K> ... не става ли сравнение с тези инструкции ?! PS:
|
|||||||||||||||||||
| Автор: | zaphod [ Пет Яну 19, 2007 11:55 pm ] | |||||||||
| Заглавие: | ||||||||||
хм, не съм супер спец по микроконтролерите, но мисля че в 16ките няма възможност за поставяне на точка на прекъсване, нито за следене на клетка за промяна. в 18ките има такава възможност и съм я позлвал за дебъг. за втора точка не настоявам, не съм бачкал с 872, бачкал съм с 871 в който със сигурност няма тая опция. що се отнася до инструкциите - разбира се че човек може да си направи каквото иска с наличните, но sublw/xorlw не е подходяща за организиране на switch-case блок, понеже променя съдържанието на W. не че не става, но на всяка следваща трябва да прибавяш предходната константа, която прави кода гаден, да не говорим че не всеки се сеща да го прави. за добър switch-case блок трябва инструкция, която сравнява с константа W, без обаче да го променя. такава инструкция има в серия 30, нищо не им е струвало да я сложат и на 18, но ми се струва че проектантите не са написали нито една програма със творението си - един често срещан проблем в днешно време, не само в областта на микроконтролерите. имам приятели корабопроектанти, които се оплакват че тези които са проектирали кад системите за корабостроенето, изглежда никога не са бачкали със творенията си, понеже все пак по професия са проектанти на софтуер, а не на кораби.... |
||||||||||
| Автор: | Syrius-B [ Съб Яну 20, 2007 2:04 am ] |
| Заглавие: | |
С пускането на пазара на нови и по-мощни процесори, непрекъснато се прогнозира смъртта на старите, а пък то все не става. Сменят се моделите, и се подобряват качества, като консумация, нови периферии и пр., но нпр. 16-битовите не замениха 8-битовите. Нещо повече, появиха се въшки като PIC10F, има подобни и от други фирми. Има си приложения за дребни MPU, има хляб и за големи. Никога не е било разумно, да стреляш по врабчета с гаубица, нпр. |
|
| Автор: | ¶ [ Съб Яну 20, 2007 2:57 am ] |
| Заглавие: | |
16-ки с които съм работил и се дебъгват(имат по една точка на прекъсване): 913,914,916,917,818,819,870,871,872,873,874,876,877,873А,874А,876А,877А За 87,88 не съм сигурен дали и те не можеха. 870,871,872,873,874,876,877 могат да си презаписват по програмен път програмната памет, т.е. възможност за boot loader. Съвсем наскоро преработих boot loader-а от примерите на CCS за тази серия, нямам забележки, работи хайвана. + на 18-ките е по-големия обем памет(програмна и за данни), линейна програмна памет, банките за данни са по 256 байта и по рядко се налага превключване, т.е. по-висока скорост на програмата, трите индексни регистъра, допълнителни инструкции, по богата периферия, за сметка на това по-бъгава, някои вече имат по 3 debug точки на прекъсване (примерно 2520,2525), повече прекъсвания, както и приоритет на прекъсванията(с много бъгове в някои модели), два вектора на прекъсване(за повече не знам), памет за boot loader ; - на 18-ки - много бъгове в периферията и ядрото, трябва много внимателно да се подхожда при избора на професора, най-вече с четене на errata документите, като цяло са по-скъпи от 16-ките; Интересно е, че инструкциите за сравнение cpfsgt, cpfslt и cpfseq, които не налагат непрекъснато зареждане на WREG, се употребват рядко от CCS C и MCC18. С учебна цел трябва да поработиш и с 18-ки, че след това с dsPIC и PIC24 |
|
| Автор: | trm_only_for_work [ Съб Яну 20, 2007 8:31 am ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
Здрасти ! Ми говоря за STATUS,N (що се правиш на ударен с парен чук Ясно е, че това не е кой знае каква страшна новост Вместо да ползвам отделни asmlib за някои елементарни функции , asm -> за да не е излишно бавно; тук или аз , или ако е С компилатор директно си се възползва от този простичък STATUS,N хихи хахахаха -> "Простото е гениално!" //даже в началото се чудех защо го няма в 16-ките този N бит |
|||||||||||||||||||
| Автор: | zaphod [ Съб Яну 20, 2007 10:27 am ] |
| Заглавие: | |
trm_only_for_work, за кво ти е тоя флаг N, като старшия бит на резултата е точно негово копие? пирев, проверих, наистина и 16ките могат да се самофлашват. е, както казах не ги познавам из основи. |
|
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|