forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
programujete někdo 8051 v Cčku?
Jdi na stránku 1, 2  Další
 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> 8051 / 8052
 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 22 říjen 2008, 10:19    Předmět: programujete někdo 8051 v Cčku? Citovat

a jakej je v tom rozdil od asm? Question
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 22 říjen 2008, 13:55    Předmět: Citovat

Co se tyka pohodli pri psani programu, tak je rozdil asi jako mezi skodou 120 a octavii Smile (ve prospech C samozrejme). Co se tyka rychlosti programu na 8051, je to presne naopak... 8051 nema pro C vubec prizpusobenou architekturu. Pokud nevis, co je C, tak ti to lip asi nevysvetlim Smile Jediny x51, pro ktery je C pouzitelny jsou snad jen od silabs (1-cyklovy jadro a frekvence az 100MHz).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 22 říjen 2008, 19:44    Předmět: Citovat

Jestli chces programovat 89S51 a podobně v Cčku, tak na to rychle zapomeň. to je jako zabíjet vrabce atomovkou.
Jak řikal, x51 neni dělaný pro C. Jestli seš línej se těch 35 instrukcí naučit nazapměť, tak dělej C. Já se ty instrukce naučil během měsíce. TOlik jich zas neni, a navíc se někerý moc často nepoužívaj.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 22 říjen 2008, 22:06    Předmět: RE: Citovat

no tak ja teda zustanu u toho asm kdyz uz ho jaks taks ovladam dle svych potřeb Cool
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 22 říjen 2008, 22:46    Předmět: Citovat

Cse hodí spíš pro AVR, jejichž architektura je na C dělaná. Ale C ani pro AVR neuznávám. C leda pro 32b procesůrky, pro 8bity se to většinou nevyplácí.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 22 říjen 2008, 22:48    Předmět: Citovat

no jo no jo kliid stačilo Very Happy
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 22 říjen 2008, 22:55    Předmět: Citovat

Nezkusil bys někdy AVR? Pokud máš nějaký slušný znaloti z x51, neni problém se přeorientovat na AVR. Doporučuju taky ASM pro ty AVRka. Neni to o moc složitější. Já se AVR momentálně tak nějak učím, když je čas Smile
Hlavně potřebuju koupit mega32, budu dělat ... noo... neprozradim, bude překvápko, jestli se ta blbovina povede Smile Tebe by to moholo zajímat. Z tvého podpisu jsem pochopil, že jsi taky bastlíř "pro zábavu" Smile
Tak ahoj zejtra, já jdu spát Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 22 říjen 2008, 22:59    Předmět: Citovat

no já tu mám kdesi mezi integráči hozenou atitinu2313 no ale porgramovat jsem ji zatim nezkoušel protože nemám programátor a ten co jsem zkoušel nějak nevungoval takže jsem to odložil na jindy. jo bastlim pro zabavu a hlavně protože mě baví robotika a takoe blbosti(viz muj web)..pak se pochlub na čem děláš;-)
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 23 říjen 2008, 4:48    Předmět: Citovat

tiny2313... kdybys chtel prejit na avr a jit rovnou do C, urcite te v tom nenechame Wink (aspon ja ne, ale pro takove potreby bys samo potreboval jiny vlakno Wink ) Ale nemysli, ze kdybys neco psal v C, ze asm vubec nepotrebujes... To zalezi na aplikaci! Kdyz potrebujes neco presne casovat, tak se asm nevyhnes...
Nevim co mas za programator, ale jesli umi ISP, je pravdepodobny, ze ji to bude umet naprogramovat Wink
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 23 říjen 2008, 9:52    Předmět: Citovat

programator mám PROG51-USB ze stránek http://winide51.wz.cz/51/prog.php , manual je zde http://winide51.wz.cz/downloads/51/prog51_usb.pdf no a attiny to neumí jestli jsem to dobře pochopil
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 23 říjen 2008, 14:22    Předmět: Citovat

orgramátor na LPT rulezzz.
Jako AVR pro začátek bych spíš doporučoval mega8, 16 nebo 32. Tu tiny ne.
Programátor používám ten co je u mě na webu, tj tenhle:
http://jan16.czela.net/index.php?id=19&n=jak-naprogramovat-mikrokontroler-rady-89s-isp

Ten software co je u toho, je výhradně určený pro programování x51. Mám jinou verzi toho samého prográmku, která je ale pro AVR.
Na AVR ale spíš používám PonyProg. Je to jak kdy. Je to spolehlivý, a naprogramuje se s tim opravdu lecos. Jen to chce mít LPT port.

SAmozřejmě je pravda, že v C se bez ASM neobejdeš, ale lepší je naučit se njeprve ASM, a pak C, abys pochopil (lépe) jak to Cčko n ASM běhá. Potom totiž když tam budeš chtít dávat vkládaný asm, tak třeba ani nebudeš vědět, čím a jak nahradit prostou smyčku (do)while, for a podobně.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
Martin
ATmega pouzivatel
ATmega pouzivatel


Založen: 5.1.2008
Příspěvky: 1495

PříspěvekZaslal: 23 říjen 2008, 15:27    Předmět: Citovat

Programujem ATmega8/168/32/644P cca 3 roky. Rozne aplikacie do priemyslu, plno casovani, komunikacii SPI, I2C, hw UART, sw UART, obsluha klavesnic, displayov aj dost rychle veci, meranie teplot, regulacne slucky, archivy do velkokapacitnych zariadeni.
O asembler som ani nahodou nezavadil - nebolo preco. Vsetko v GCC (WINAVR). Vravel som si , ze raz mozno, ale fakt nie je najmensi dovod nieco robit na AVR v asm. Na tie casovania co sa tu tak casto spominaju ako ze je na ne skvely ASM, treba pouzit casovace a udalosti spracovavat pod prerusenim. Sebelepsie casovanie v ASM rychlo rozhodi komunikacia cez prerusenie, alebo presne casove spracovanie AD vstupu pre odfiltrovanie 50/100Hz brumu. RAMky kopec(1/2/4kB), pri dobrom rozvrhnuti aplikacie som nenarazil na problem s pamatou.

Mam kolegov, ktori z historickych dovodov stale pracuju na x51, ako napr 89C4051, 89C52, 89C55, nejaky DALLAS a tak podobne. Na asm nesiahli zhruba od roku 1996. A to komunikuju s citackami kariet, casuju 1-wire komunikaciu, displaye, tlacitka, archivy, skratka vsetko mozne do priemyslu a komercnej sfery. Podla ich slov, jedine C - a to robia na nejakom Kiely z roku 1-2-3. K absolutnej spokojnosti.

Casto sa tu vyzdvihuje znalost ASM - komunita PIC (16Fxxx) tazko moze mat s niecim inym dobre skusenosti - ako nevyhnutna pre dobre pochopenie cinnosti procesora. Tuto dogmu povazujem za podobnu ako tu, ze zem je placata. To absolutne nie je pravda. Pre dobre poznanie procesora treba vediet, ako a kedy nastavit pracovne registre a kedy co ktory bit v registry znamena. To je od instrukcneho suboru uplne nezavisle. Nemusim poznam ako sa mnemotechnicky nazyva ASM instrukcia, ktora nastavi bit v registri pre obzivenie WDT. O to sa postara prekladac. Znalost ASM urcite nie je na skodu, ale ani nahodou nie je nevyhnutna pre plne vyuzitie procesora.

Prave pre ten postrach z predlzenia trvania programu ak je tento pisany v C miesto v ASM ma viedol k tomu, ze v kazdej mojej aplikacii mam kod venovany meraniu dlzky trvania jednotlivych usekov s presnostou na cca 4,34us (u mna cca 64 instrukcne kvantum). Okrem toho si meriam "cas vrtania sa v nose" procesora, ked nema do coho pichnut. Meriam plavajuci priemer a maximum tohto casu. Prakticke vysledky ukazuju vyuzitie procesora zhruba na 8-40%(velmi husta komunikacia 115200Bd,archivacia vyuzivajuca SPI 1MbPS a zber udajov z I2C AD 25kbPS). Nemam preto dovod skusat nieco v ASM. Netvrdim, ze ASM je zly, mozno pre niekoho ako konicek... Smile

Ale videl som aj nie dobre napisane programy, ked sa pri komunikacii cakalo v slucke na ukoncenie odvysielania/prijatia dalsieho bajtu v komunikacnom protokole. Ale takej prasarni ani 100 ASM nepomoze. Aplikacia musi byt co najviac "vzdusna", aby jednotlive celky necakali na mieste na vysledky inych celkov a nebrzdili tak cely procesor. Je potom jedno, ci su napisane v ASM, alebo v C. Ak nieco trva 120us a ma sa spustit kazdych 500us, nebudem to davat do slucky s kodom, ktory trva 4.2ms, ale aplikaciu rozvrhnem inym sposobom. Tu principialny rozdiel medzi C a ASM nieje, lebo ak by aj tie casy boli v ASM tretinove, potom mam situaciu 40us a 1.4ms a to takisto do 500us nevmestim.

Aby moj prispevok nevyznel ako zatracovanie ASM. Vobec nie. Su aplikacie, kde ten ASM zmysel ma, ako napr. v realnom case realizovana FFT pri nejakom filtrovani, vektorovom riadeni strojov atd. kde ide o kazdu us. No mp3 prehravac asi na x51 (a ani PIC, ci AVR 8bit) zmysel robit nema. Na 95% beznych aplikacii je C s rychlostou uplne s prehladom.

Jan16 pisal, ze C na 8bit podla neho velky zmysel nema. Musim mu oponovat, C-cko na 8bit velky zmysel ma. Len sa netreba sustredit na procesory s 2kB kodovou pamatou, 36-128B RAM, 2 urovnovym zasobnikom a neskutocne napaditym strankovanim programovej pamate. Tam nema pomaly zmysel ani ten ASM Smile

Programy v C su v textovej forme kratsie a prehladnejsie. C-cko umoznuje abstraktnejsie (niekedy az kubisticky) nahliadat na problem a venovat sa jemu a nie tomu, ako porovnam tento word s tamtym floatom, na ktory mi ukazuje ukazatel do pola ukazatelov v ASM.
C-cko uz pri preklade strazi kopec veci o ktore sa programator nemusi starat, iba je upozorneny, ze toto alebo tamto je bud uplna blbost, alebo je to minimlane podozrive. C-ckove zdrojaky algoritmov (nie ovladanie periferii) su lahko prenositelne medzi roznymi platformami, atd. atd. A to vysledny program nemusi mat 1.5MB kodu. Aj tych 10-20kB je v C pre zaciatocnika napisanych omnoho rychlejsie a prehladnejsie ako v ASM.

Stari bardi maju samozrejme svoje makra a include subory a vsetky tie nastroje, ktore si za mnoho rokov prace spravili, upravili a odladili. Preto sa im v ASM bude programovat urcite rychlejsie, ako uplnemu zaciatocnikovi v C. Ale tento ich svojou produktivitou dobehne a predbehne omnoho rychlejsie ako sa nazdaju.

A na zaver. Aj v C sa clovek moze dobre zamotat a zaprasit a chce to vela studia a prebdenych noci. Tak ako i v ASM. Nic nie je samospasitelne. fifty-fifty.

P.S. Nechcel som apriori hanit 16Fxx, je to dieta svojej doby a volakedy v roku 1993 znamenal velky prielom v technologii, co sme i my vo firme vo velkom uspesne vyuzivali. No co bolo, bolo a dnes by som kazdeho noveho adepta pre pracu s jednocipmi od tejto vetvy urcite odhovaral, lebo su to objekttivne horsie a drahsie procesory ako ine 8bity na trhu. Ak sa mylim, opravte ma, ale na konkretnych prikladoch prosim. Ja len uvediem

16F74 [8kB Flash, 192B RAM, 8b AD, 5MIPS] 157,-Czk
AT89C51RD2 [64kB Flash, 2kB RAM, bez AD, 3.33MIPS] 99,-Czk
ATmega32 [32kB,2kB RAM, 10b AD, 8-16MIPS] 82,-Czk
]To uz radsej ta x51. Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 23 říjen 2008, 21:21    Předmět: Citovat

"z historickych dovodov stale pracuju na x51, ako napr 89C4051, 89C52, 89C55"
To uz si zasel daleko. Znám člověka, kterej pracuje na x51, a hradlových polích - do mobilních telefonů, a bere za to neskutečný peníze. Bydlí kus od Prahy, a do práce jezdí do Německa. Doma je akorát nna víkendy.
Nevim co je na x51 historického, možná to, že byly "vymyšleny" před mnoha lety. Dnešní x51 jsou o mnoho vylepšené, a nedávno (no, možná to je už dýl - řešilo se to na elwebu) se mi dostal do ruky kousek, který má instrukci na takt, a do 80MHz. Měl 1MB FLASH, 256kB SRAM. Víc si nepamatuju. Jen to že byl v pouzdru TQFP Smile

"Casto sa tu vyzdvihuje znalost ASM" - picátory sem nepleť, ty totiž v ničem jinym dělat nemůžou, protože by musely platit za C kompiler, my buĎme rádi, a oslavujme ATMEL!

Netvrdím, že C je horší než ASM, s programování mám již nějakých těch pár let zkušeností, a vím dobře co to obnáší. Pro mě by nebyl problém dělat v C, ale nebude z toho takovej zážitek, jako při programování v ASM. PRogramy dokážu navrhovat tak, že ve většině případů je v hlavní smyčce akorát nekonečný cyklus, všecko se dělá v přerušení. Není to problém, jen používat hlavu.
Asi takto: Prase, které neumí moc v ASM, ta mu Cčko nepomůže, naopak, bude to daleko horší.
Občas ty zdrojáky k procíkům, co vidím (ASM i C; x51, AVR občas i pic), je mi z nich na blití. Téměř nikomu neřikají nic zpožĎoací cykly přes djnz/brne a podobně. Místo toho tam dají nesmyslně do cyklu cosi, a "odhadem" odhadnou dobu trvání smyčky Rolling Eyes
TO saméé v C. Jako čekací smyčka je použito for od 0 do 100000 a pdobně. Kdy ve smyčce není vůbec nic. Jen to běhá dokola na místě. Rolling Eyes
Pokud někdo neumí programovat, tak je opravdu jedno jestli C, nebo ASM.
ZAčátečníkovi bych al e doporučoval začít s ASM, pochopit základy, a pak přejít výš. Opačně, to jde dost těžko. Ono jde také o to, že programátor, musí umět dobře myslet "programátorsky", tj dobře umět používat matematiku, logiku, a podobné velice důležité věci.

>>To jsou ty picy opravdu tak drahé?
ten 16F74.. omg. To i 89S51, která stojí asi 40CZK, je o mnoho lepší.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
kyberbob
Profesionál
Profesionál


Založen: 16.10.2008
Příspěvky: 83
Bydliště: Brno

PříspěvekZaslal: 23 říjen 2008, 21:46    Předmět: Citovat

Jan16: na stránkách máš sem tam něco zajimaveho ale ten LPT led efekt už je ohraný to má snad každej druhej:-D jinak ten propgramator na lpt jsem myslím nějaky takový dělal ale nefrčelo to ale mužu to zkusit znovu, canon25 konektrou doma pár mám a draty s odporama nebudou problem;-) o vikendu zkusim něco spáchat když bude nalada
_________________
HOME B@STL - domaci tvorba robotika a různé elektro... 8051 AVR Arduino ... senzory ... převodníky ... LOGO!8 ... FESTO
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

 
Jan16
moderátor
moderátor


Založen: 10.3.2008
Příspěvky: 547

PříspěvekZaslal: 23 říjen 2008, 22:40    Předmět: Citovat

sem tam něco... tos mi to teda pochválil. Víš, kolik je s tim sraní? Když sem na všecko sám, a nikdo s ničim nepomůže? Navc web běží cca rok, s tim že před rokem byl spuštěn, a před 6ti měsíci bylo započato pravidelné aktualizování, takže občas je co číst.
Je mi jedno, co na ten LPT LED efekt říkáš, nemám ho rád, a proto jsem ho zrecenzoval po svém. Dobrá ptákovina, připojovat LED přímo, a bez odporu.

V anketě vítězí kontroléry, že bych tam měl spíš přidávat něco o AVR x51 a podobně? (Takovýh hračiček s kontroléry jsem vymyslel hodně... měřič postřehu, stopky, hodiny, čítač průchodů dveřmi, kodový zámek, LCD reklamní panel, hrátky s HDD a CDROM, a další blboviny. Taky už jeden 89S52 seděl na robotovi z lega Smile

btw ty jsi hlasoval v anketě pro zesilovače?? Nejmenuješ se náhodou "JOlle" ??

Diskuzi o aurelech jsem přesunul sem: http://forum.mcontrollers.com/viewtopic.php?t=703


Naposledy upravil Jan16 dne 24 říjen 2008, 22:01, celkově upraveno 3 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> 8051 / 8052 Časy uváděny v GMT + 2 hodiny
Jdi na stránku 1, 2  Další
 
Strana 1 z 2
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2018 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)