16F877A mi již nestačí, s čím pokračovat? Výkonnější model?

Nedostatek pameti, strankovani atd. Jaky procesor by byl vhodny misto uvedeneho aby mel vetsi pamet Ram a pokud mozno uz neresit strankovani pameti a aby byl pinove stejny (to uz neni az takova podminka). Hlavni co vyuzivam nyni je 8xAD, 8xOut, 8xIn, I2C. Vim ze to lze dohledat v datasheetech apod., jde mi ted spise o praktickou stranku tech, co jiz tento krok podnikli a s cim se pripadne setkali pri “upgrade” na vyssi procesor. Co se tyce programovani, tak ted ASM, v budoucnu mozna C.

:arrow_right: administrator: přejmenováno z "Nahrada za 16F877A"

Pak už tě BANKSEL a PAGESEL nemusí zajímat.

Pokud využíváš často A/D převodník, doporučuji třeba 18F4523, který má 12bit A/D převod, stejné pouzdro, zapojení vývodů i napájecí napětí 5V. No a pokud koukáš po nějakém 24F, 30F nebo 33F, tak to ti neporadím.

Ja přešel na 18F4620, hóóódně volného prostoru, neřeší PAGESEL, BANKSEL ti zůstane :open_mouth:, ale je to o “něco” jednodušší než u 16F. Hlavně má 3 FSR, Jediné, co jsem u tohohle procesoru nedomyslel, že nemá USB. Ne že bych USB potřeboval, ale chtěl jsem to zkusit :smiley: :smiley:
Má pár užiečných instrukcí navic oproti 16F.

**Petr: **S tím C mě docela trápíte, asi se do toho zkusím pustit, jestli na to něco seženu. :blush: :blush:

Na 18f je student edition C18 origo…no zeby to bola nejaka slava…

Alle funguje na 60dni podpora optimalizacie.

MPLAB-C18-Student-Edition-doc-v3_00-win32

honza3:
Myslím že 18F46J50 má 1-Full Speed-USB 2.0 a 64 Kbytes Flash.

Na tuto temu som sa rozkecal tu
viewtopic.php?t=1470&start=15

Len by som dodal, ze pre OP je asi najlepsim riesenim prejst na PIC18, kompilator C18.
Nic to nestoji, prinesie to vela.

Z řady 18F je 18F46J50 hodně dobrá volba (hlavně pokud využiješ USB), já se momentálně pouštím do 24FJ64GB004 (taky má USB), je to 16bit, cena je asi o dvacku vyšší, ale možnosti tohoto MPC mnohonásobně převyšují cenový rozdíl (zkus nahlídnout do datasheetu a porovnat s 18F). Důležitý je se nezaleknout, že je to 16bit.

Můj vlastní názor: programovat 16bit v assembleru je o něco jednodušší než 8bit, to je dáno hlavně lepší instrukční sadou, takže bych se toho určitě nebál.

V Cečku je to samozřejmě stejné, ale 16bit bude vždycky mnohem rychlejší, zvláště pokud často něco počítáš . . .

Hlavní výhody 16bit bych viděl ve větším výkonu, větší datový i programový paměti, více periferiích, dalších moderních periferiiích, který v 8bit vůbec nejsou…samozřejmě jsou tam další věci, který třeba momentálně nepotřebuješ, ale občas se hodí, třeba časovač čítající až do 26dnů (u 18F max 132s), možnost vyvést výstup vnitřního oscilátoru přes programovatelnou děličku na pin MPC a další a další…

…za tu 20-ku navíc to prostě stojí:)

trochu odbočim, ale zajímá mě jedna věc,
marzou udává že PIC18F46J50 je 16-bit. nezdálo se mi to a kouknul sem na microchip.com a pišou že je to 8-bit. tak abych v tom neměl zmatek, jakej to tedy je???

microchip.com/wwwproducts/De … e=en539708

PIC18F46J50 je samozřejmě 8bit, proto jsem taky psal, že je z rodiny 18F, o 16bit jsme mluvil až dále…

rodina 18F je samozřejmě celá 8bitová:)

:arrow_right: administrator: příspěvek byl upraven
Předchozí příspěvky se necitují.

jasné jasné :smiley: už to vidim :smiley: sem to prve přečet asi moc narychlo :smiley:

omlovám se za zmatek, příště si to rači několikrát přečtu :slight_smile:

Já osobně se zatím tak trochu bojím 3,3V logiky a vyhýbám se tomu jak čert kříži. Teď mám vše postavený na 5V PIC16F193X. Od Petra jsem dostal dsPIC, tak jsme zvědavý na výsledky. Zatím mi ten brouk stále leží na stole a jen se na mě dívá :smiley:

Ty obavy jsou bezdůvodné, lepší mikrokontrolery se prostě dělaj na nižší napětí, s tím se nedá nic dělat. Ten dsPIC je taky dobrej, hlavně dsPIC33, ale nemá tolik funkcí a periferií jako PIC24, navíc ani jeden typ nemá USB, na druhou stranu je v mnoha věcech rychlejší, hlavně přesunech dat a výpočtech, prostě signálovej kontroler…

Já mám dsPIC30F4013. Hlavně od dsPIC očekávám, že to poletí na 100MHz případně méně abych mohl tvořit pomocí HW PWM na 50-100kHz při alespoň 8b rozlišení. K tomu A/D s 1MSps.

No tak dsPIC33 běhá na 40MHz, dsPIC30 na 30MHz, když si vemeš čistě obecně 30MHz/8bit tak to dělá přibližně 120kHz, takže to s tou rychlostí a rozlišením PWM bude asi na hraně…

sPIC33 nebeha na 40MHz a dsPIC30 nebeha na 30MHz, ale na dsPIC33 beha na 80Mhz a z toho vyplyvajucich 40MIPS, dsPIC30 beha na 120MHz a z toho vyplyva 30MIPS. Chapem, co chcel autor povedat, ale takto je to korektne.

Druha vec, PIC24F, PIC24H a dsPIC30, resp. dsPIC33 sa od seba az tak velmi nelisia.
Rozdiel medzi dsPIC a PIC24x je ten, ze PIC24 nema DSP jadro, teda adekvate upravene akumulatory, DSP instrukcie atd… Na presune dat a podobnych veciah to az tak vela nemeni - osobna skusenost. Jedine, co ma vplyv, je vykon, pre PIC24F je to 16MIPS, ale pre PIC24H je to 40MIPS, teda to iste ako dPIC33.

Po tretie. Kto chce PWM a rychly ADC, mal by pouzivat obvody, ktore su na to urcene. Napriklad dsPIC30F2020 je priamo urceny do napajacich zdrojov, ma rychle PWM, da sa prevadzkovat napriklad na 3,75MHz s rozlisenim 8 bitov. Moze bezat vo viacfazovom rezime, alebo len v obycajnom komplementarnom pre budenie FET polomosta, s nastavitelnym dead-time. Ma to 2MSpS ADC.
ww1.microchip.com/downloads/en/D … 70178C.pdf
Samozrejme, existuju aj novsie PIC pre napajacie zdroje, napriklad dsPIC33xxxGSxxx, ale s tymi nemam osobnu skusenost, iba s dsPIC30F2020.

dsPIC30F2020 jsem vcera večer objednal. Uvidím jak mi to dá na prdel a jak dlouho budu C odolavat.

Zas s tym C opatrne :slight_smile:

Konkretne s dsPIC30F2020 som robil 250W zdroj, ale vzhladom k potrebe rychlej regulacie som to cele robil v asm. Aj to bolo velmi optimalizovane, s drobnymi “trikmi”, napriklad fixnym rozlozenim adries koeficientov P,I,D regulacie v pamati tak, aby sa dali co najjednoduchsie adresovat atd…

Toto je konrektne priklad, kedy sa to v C robi valmi tazko, resp. da sa to urobit aj v C, ale regulacna slucka by bola podstatne pomalsia ako v pripade cisteho, rucne optimalizovaneho asm.

Ked uz sme to doviedli na telesnu temu, davajte si skor pozor na prsty. dsPIC30F2020, ked sa rozparadi na 30MIPS, tak dokaze zrat neuveritelnych cca 200mA z 5V, to je asi 1W strateneho tepla. Ja osobne som to mal v SDIP, tam sa na tom dal popalit prst, predpokladam ze SOIC by hrialo este viac.
Tato neuveritelna a konska spotreba (je to vela na CMOS, ti ktori pamataju na NMOS, sa iba pousmeju) je danou za hodne rychle PWM, ADC atd.

  1. Máš pravdu, v tý rychlosti jsem si to neuvědomil, takže ta “obecná” max rychlost PWM, by se měla počítat právě z “frekvence oscilátoru”, protože časovače pro PWM jsou napojeny právě na ní.

  2. Nevím jak je to u PIC24H, nikdy jsem s ním nedělal, ale PIC24F nemá narozdíl od dsPIC33 dvojí sběrnici pro datovou paměť, která umožňuje rychlejší přesun dat (po každé sběrnici běhají data do jedné části paměti), dále neumožňuje modulo adresování (z části datové paměti je možné prakticky vytvořit FIFO paměť), opět urychlení přesunu dat, dále nemá instrukce jako DO nebo REPEAT, které opět umožňují rychlejší přesun dat, nebo obecně urychlení opakujících se operací nad paměťovým prostorem…a bude toho určitě více… doufám, že jsem něco nepoplet, s dsPIC33 jsem už rok nedělal:)…další věc co mě napadla - DMA…to určitě nebude věc na zpomalení přenosů:)

  3. Pokud je na tom PIC24H jinak, rád se nechám poučit:)

Mužeš posoudit náročnost psaní v asm pro 8bit a pro 16bit od Microchipu?..jak jsem již psal v tomto vláknu, asm pro 16bit mi přijde jednodušší…

Jinak mám pocit, že dsPIC30 má už nejlepší léta zasebou, proto je tu dsPIC33, je nějaký důvod šahat ještě po dsPIC30?

Byl zadarmo… :smiley: