Názory ke článku Assembler - 4. lekce
Nerad bych vypadal jako hnidopich, ale kdybych o uP nevedel nic, bylo by mi dost zahadou, proc trva naplneni 16bit registru prave 65,536 ms. Bylo by dobre upresnit, jaky krystal/zdroj hodinoveho taktu je pouzit a ze si muzeme vybirat. Krome toho bych byl taky rad vedel neco o moznostech preruseni, atd.
A protoze zastavam spravnou terminologii, tak <b>mikroprocesor</b> zahrnuje ALU,pracovni registry a pod. a <b>mikropocitac</b> obsahuje krome mikroprocesoru jeste napr. RAM, ROM, DMA,casovace/citace, vstupy a vystupy.
Tj. Rodina x51 neni rodinou mikroprocesoru, ale mikropocitacu s jadrem x51 (nekdy se pojem mikropocitac nahrazuje slovem mikrokontroler)
To je sice fakt, ale kdesi na začátku jsem se zmíňoval že budeme hovořit o univerzálním mikroprocesoru a to už je stejný termín jako miropočítač a dále pak už používám pouze "mikroprocesor" abych to pořád nemusel nypisovat.
Zase již ze začátku jsem se zmíňoval, že jde o 24MHz procesor, pokud víte že čítač počítá impulzy a ve článku je řečno že maximální počet impulzů může být 65536, pak asi bude uvnitř mikroprocesoru dělička 2X a na čítač poté 12X, to jsem sice nenapsal, ale z pohledu programátora to nemá význam vědět, stejně nebudete vyměňovat krystal za nějaký jiný nez udává výrobce (nedělejte si z toho 2GHz :-) ), tyto mikropočítače nejsou chlazené a jsou celkem drahé a náchylné.
Ohledně přerušení viz. příští lekce, doufám že jsem nějak nepolekal zprávou že kurz pomalu končí...
Pozn1: U některých procesorů je dělička vstupního kmitočtu programovatelná
Pozn2: S rostoucí pracovní frekvencí roste i konzumace energie. Na stole s laboratorním (nebo PC) zdrojem se to nepozná, ale třeba u blikače na kolo se s frekvencí pod 1MHz (někde i řádově v kHz - RC oscilátory) lze dostat na zajímavé hodnoty spotřeby, které jsou prakticky na úrovni samovybíjení baterií.
Pozn k pozn: Netvrdím, že to v článku být musí, ale když už se sem někdo podívá a je možnost komentářů, proč by si nepřečetl i komentáře, kde se dozví pár postřehů "odjinud"
Jistě je dobré se odívat do komentáře, pokud tam tyto postřehy od jinud jsou...
Mým záměrem bylo umožnit ostatním porozumět jazyku Assembler tak aby (prošli) na některých školách kde se to vyučuje, z vlastní zkušenosti vím že asi 90% žáků toto nepochopí a proto se to snažím podat jednoduše a nezacházím moc do hloubky.
Kdo chce umět vše ať si koupí knihu!
I s tím minimem co tady píšu se dají udělat velké projekty, jediné co asi nebudete vědět je jak se dají mikroprocesory optimalizovat ať už módem snížené spotřeby, nebo zálohou registrů - ale to ještě možná popíšu, aj.
Tady nezískáte všechny finty programování ať už jakéhokoliv jazyka, když jsem začínal tak to byl web programuje.com česky, bylo mi řečeno, že to je ten "rozjezdový portál" kde získáte ty velmi vzácné základy "domácí" fotmou a jsem rád že takovýto web existuje.
Jestli chcete doplňovat kažé slovo vysvětlením, nebo zacházet opravdu do hloubky a rozumíte tomu, tak vám v tom nebráním, ale co se týče mého kurzu, je dobré to dát přímo do kurzu a ne jen naznačit v komentáři. Tak že jestli máte zájem, kontakt je uveden pod mým nickem v sekci Redakce
Nechcu rypat, mám chabé znalosti asm, ale z textu mi připadá, že autor trochu (vědomky, či nevědomky) bere pojmy čítač a časovač jako jednu a tu samou věc, i když jde technicky vzato o to samé. V podstatě jde o prvek mikroprocesoru, který podle nastavení pracuje, buď jako čítač (čítá impulsy z vnějšího zdroje), nebo jako časovač (čítá impulsy strojového cyklu, tedy 12 impulsů generátoru hodin).
Jistě beru to trochu jako stejnou věc, protože zde probírám časovač, prakticky se používá čítač, ale jeho perioda je stále stejná, protože jsme ji nastavili na jeden takt. Můžeme mít vnější hodinový signál a pak měnit jeho periodu né mikroprocesorem, ale vnějším hodinovým signálem, nebo mě taky napadá, pokud jsou děje které mají vždy stejný počet taktů, ale vždy jiný čas například, když dělníci sestavují díly do auta, tak jim to nikdy netrvá stejně dlouho a třeba program pro balení kliky po 30 kusech si pouští mikroprocesor teprve až je v zásobníku skutečně 30 kusů a né co 2 minuty, že se spustí, nebylo by to efektivní.
skusil som si spustit toto:
ORG 0
MOV TMOD, #1 ;nastaveni modu
MOV TL0, #0D0H ;nastaveni nizsiho citace
MOV TH0, #8AH ;nastaveni vyssiho citace
STEB TR0 ;privedeni clocku na citac
ZPET: JBC TF0, SKOK ;pokud se citac naplni, pak skok
JMP ZPET ;nenaplnil - zkontroluj znova
SKOK: NOP ;prazdna instrukce
END
a neide mi. pod STEB TR0 mi pise ze syntax error. cim to je?
som zaciatocnik, tak ma prosim hned neukamenujte
3. 7. 2008
Nemohli by ste niekto vlozit ten program na blikanie led chcel by som si ho pozriet.
Reagoval na komentář od uživatele Anonymní uživatel :
Když se přihlásíte, máte odkaz na úkoly hned pod Můj profil.
25. 2. 2012
Úplně jsem se do toho zamotal. V článku píšete:
"MOD 1 – čítač je tvořen 16 bity a tedy bude mu trvat 65,536 ms, než se naplní
vezmeme si třeba MOD 1 a chceme zpoždění 30 ms, tak doplníme čítače o ten zbytek"
ms jsou milisekundy, zatím co v jiném článku jsem četl, že:
"Maximální zpoždění, které může čítač odměřit je 65535 impulzů. 1 impulz je 1 mikrosekunda, to je
0,0655s.
Mohl byste mi to vysvětlit jak to teda funguje? úplně v tom plavu
27. 3. 2012
#14 saknip
Jak jsem si to ted přečetl tak si říkám jaký jsem v ů l
65535 mikrosekund je 65,535 milisekund
bóže ty mě vidíš!