S jakým PIC začít? Jak je to se vzájemnou kompatibilitou?

Zdravim vas pani, hlavne profesionalov. Bohuzial dal som sa smerom PIC procesorov (ucil som sa z knihy PIC16F84) a teraz zistujem ze Microchip ma velku skalu procesorov. To by nevadilo pokial pokial by boli programy “komptabilne”. Chcem si postavit nejaky “demo kit” a neviem na ktorom procesore ho mam zalozit. Ktory prpcesor je vlastne nejaky “standart”? Poznam procesory xxF84, xxF628, xxF690 a neviem vlastne s ktorym mam zacat, lebo programy jeden na druhy nefunguju a to ma teda velmi stve a rozculuje. Atmelaci zavraj taky problem nemaju (to som iba pocul). Prosim touto cestou tych skusenejsich aby poradili a vysvetlili preco tie programy navzajom nefunguju, alebo ako to vlastne je, lebo ja mam taky pocit ze napr. xxF84 je uz zastarala, xxF628 je zase upne ina, no a xxF690 mam v skusobnom PicKite2… a neviem co s tym…
Dakujem Vladimir.

:arrow_right: administrator: přejmenováno z "Prosim o pomoc pri vybere PICu…"

Cau, na vyber jich mas docela dost, treba 16f88x, nebo z 18nactkovy rady, urcite aby to melo interni oscilator,A/D, I2C,ECCP/CCP,EUSART,komparatory, 24-25 I/O,
osobne bych volil uz tu 18, je rychla , ma USB, docela velka podpora v knihovnach (nepsal si v com delas ?ASM/C),
proc je F84 zastarala ? no nema nic, za tu cenu se da koupit neco s lepsim vybavenim, treba ta 628,ma INTOSC,komparatory,
a programy sou a nejsou prenosny, nebo s upravama , kdyz si vemes treba program z F84 tak ti na F628 nebo na F88x nepojede kdyz budes chtit viuzit piny na kterych je A/D ci komparatory tak je musis vypnout, coz i F84 nic takovyho nemas , ale zalezi na konkretnich typech ,

jak nevis co s tim ? rozvet to

dakujem moc za odpoved, len na doplnenie , pracujem v ASM, no s 18 rady nemam vobec skusenosti , ale myslim ze by mi to nerobilo problem prejst nanu. A ktory typ presnejsie mas na mysli??.. chcel by som aby mala urcite int. oscilator. Aky je rozdiel medzi 18 a 88 radou?? A prosim ta nie som az taky zdatny, co je to “I2C”; “ECCP/CP”; “EUSART”??
Dalsi problem je te ze u nas sa nic okrem 84 neda kupit, som z Pov. Bystrice…
Dakujem…

tak ja taky s 18 radou nema skusenosti krome toho ze ji mam v PICKITu2 :smiley: ,interni osc ma treba ta F628 (s ty bych to ale nedelal) nebo 16F887 ( nebo jakakotiv 16F88x), rozdily mezi 16 a 18, zakladni ma vic instrukci (75) sou trochu jinaci, lepsi podpora v C (rek bych), ma USB,sou novejsi,
I2C nebo MSSP = seriova linka pro komunikaci treba s pameti , LCD , jinym PICem,EUSART = synchroni/asynchroni primac vysilac, komunikace treba s PC, PICem, nebo se zarizenim tim vybavenym (Bluetooth modul),ECCP/CCP = treba pro rizeni motoru PWM, ja sem z Kynzvartu tady se neda koupit nic , jedine pres postu

chod do 18F tych par instrukci navyse sa doucis…a ked prejdes na Cko cu budes nakoniec aj tak musiet :smiley: tak ho vyuziješ

no nevidim problem s tou 18 tkovou radou, ale ta cena teda 40 EUR rozdiel medzi 16 a 18 radou je teda velky…

40EUR? :laughing:
microchip.com/ParamChartSear … &pageId=74
Je vcelku běžné, že ceny v $ pro nás platí v €, ovšem o řád vyšší skutečně nejsou :wink:

caa okolo 10Euro stoja ale ATMELY su lacnejsie s porovnatelnou vybavou :smiley:

No ja neviem pani, kde to kupujete za tak nehorazne peniaze.
Novsie PIC18F stoja bezne 2-5EUR, napriklad 16F67J11 - 128K FLASH, 4K RAM, kopa periferii za 4,62E v TME, ceny platia samozrejme pri odbere jedneho kusu.

Co sa tyka povodnej otazky, urcite by som nezacinal s PIC16, pretoze je to v zasade dost stare jadro.
K PIC18 je zadarmo C-kompilator od Microchipu, tony aplikacnych poznamok, ich vykon je porovnatelny s AVR, voci ktorym su PIC tolko zatracovane.

Dalej, kazdemu odporucam kupit si normalny programator ako napriklad PicKit2. Okrem toho, ze je to programator, je to aj debugger - naozaj neocenitelna pomocka. PK2 je integrovany do MPLAB-u, vyborne sa s nim pracuje a je lacny (26EUR v TME). Dalej v sebe obsahuje jednoduchy logicky analyzator do 1MHz a RS232/USB most.
Dorazne neodporucam zahadzovat sa s programatormi typu ponyprog, lebo funguju nespolahlivo, maju obmedzeny sortiment podporovanych typov MCU, neumoznuju in-circuit debugging, co je feature sama o sebe hodna tych 26EUR. Ja sam som kedysi zacinal s takymi “jednoduchymi” programatormi a mnohokrat som to olutoval.

Samozrejme, ze nefunguju, lebo jednotlive MCU su rozdielne. Nemozete predsa ocakavat, ze HEX subor skompilovany pre 16F690, vyuzivajuci napriklad AD prevodnik, bude fungovat v 16F628. Napriklad uz len preto, ze ta 628-ka nema AD prevodnik, ze ano.

Ale maju, a to som aj zazil.

Mimochodom, absolutne nechapem vyznam “kompatibility” jedneho binarneho suboru medzi dvomi odlisnymi MCU. Ved predsa ak bol ten subor skompilovany pre jeden typ MCU s danymi vlastnostami, tak sa ma pouzivat s tym konkretnym MCU a nie s inym, pretoze ma tie vlastnosti, ktore treba - tak potom naco ho napalovat do ineho MCU?

Druha vec je kompatibilita na zdrojovej urovni, tam to riesi kompilator, resp. assembler a tam su zdrojaky samozrejme velmi lahko prenosne. Okrem ineho, 95% dobre napisanych asm zdrojakov pre PIC16 sa da velmi lahko preniest na PIC18, vratane velkej casti podprogramov, ktore su typicky silno platformne zavisle, napriklad ovladanie periferii.

No tak som sa rozhodol ze s 16 roady by to mohla byt 16F884 , no ale z tej 18 rady naozaj neviem, prosim poradte mi konkretny typ. Ved na len na stranke Mikrochipu som ich naratal asi 170 druhov… preboha ktory si mam vybrat?? Dakujem…

Ten, ktory Vam vyhovuje :smiley:
Ja viem, to nebolo prilis napomocne, ale tak to naozaj je. Treba si vybrat, ake puzdro chcete, kolko pamate, periferii atd…

Pre zaciatocnika by som volil trebars 18F25K20, je to pomerne lacny MCU, ma dost pamate, vsetky mozne periferie dostupne v tejto triede MCU, dostupny v 28-pinovom DIP. Napajanie maximalne 3,6V, teda realne 3V alebo 3,3V.

Z řady PIC18F jsem si vybral 18F4523 DIP40, 2 - 5.5V. O výběru rozhodl 12bit A/D převodník.

To Peter, no ta 18F4523 by aj mohla byt, ale je akosi nedostupna ani SOS a ani v GM neni v ponuke, kde ju zohnat??

Koupil jsem ji tady:
tme.eu/cz/katalog/index.phtm … szukaj%3D+

Tak ze dakujem panove za vsetky raday, rozhodol som sa ze sa dam cestou 16F884 (887), totiz predsa uz len mam 55 rokov a dalsie instrukcie sa mi uz ucit nechce, i ked mi to nerobi problem ucil som sa asembler na Z80 uz pred 20 timi rokmi, a dokonca som ho tak pochopil ze som aj nejake hry vytvori na Sincleri Spektrum tak si myslim ze na to moje domace kutilstvo a rozne pokusy a skusky mi ta 884 postaci, alebo nie?? Co myslis “MiloPS3” a dalsi?? … dakujem…Vladimir…

Ja když jsem začínal, začal jsem s 16F877A a 16F887, zatím :open_mouth: jsem neměl potřebu je měnit, ale asi budu muset, protože mi v konstrukci dochází místo. Vybral jsem si 18F4620. Sice má jen 10bit AD, ale má až moc místa v sobě.

Akorát mám otázku, u 18F se nepřepíná PAGE jako u 16F?

ta 884 je plne vybavena takze by ti mela urcite stacit , periferii ma dost , pameti taky (4k), kdyby ne tak 887 ma 8k, :wink:

Ja mam zakupeny PicKit2 a so startovacim kitom s 16F690, no u tej 690 ma najviac stve to prepinanie bank , tak ze tak mam stale nejake chyby a zaberie to vela zbytocneho casu pri ladeni. Napriklad ked som chcel transformovoat uz moje hotove programy zo 16F84 na 16F690. Prpsim vas a ako to je u tej 887?? tiez sa to tak tam robi??..

U 887 je to taky, právě že 16F84 má 47 registrů v bance 0 a 47 v bance1, ale uživatelskcých 0, tedy přesně, taky 36 uživatelských, ale jsou to kopie s banky 0. A má jen jednu page. Takže žádné přepínání, kromě TRISu a práce s EEPROM.
Ale pokud je program tak krátký, tak pokud upravíš inicializaci procesoru na ten daný typ, tak by v tom zas takovej problém být neměl. A adresu volné RAM, na to se většinou zapomíná. U 16F84 je to 0x0C ale třeba u 16F887 je to 0x20.