
Assembler PIC
dravím, potřebuji pomoct s programem a uz nevim si rady.
Ukol je ten: ukolek-pdf
ma to jet na tomhle: valpic-pdf
A tohle mám udělany: rocnikovy-projekt-asm
Prosím o rady, děkuji.
Zmena predmetu, pôvodne: Assembler (MM..)
Ze sa jedna o Assembler PIC si mal pisat uz v titulku, ono to totiz je dost zasadna informacia.
Rady chces s cim, co to robi a nerobi, uz si si to odkrokoval v nejakom simulatore? V ktorej casti simulacie vidis problem a jaky? Mne sa to fakt lustit nechce bez snahy z tvojej strany.
V čem je konkrétně problém? U assembleru bych nejdřív očekával nějakej náčrtek algoritmu na papíře. Pokud bys to dělal v ANSI C, tak tam se to ještě nějak dá dělat bez toho, ale u ASM je podrobné komentování a náčrt algoritmu na papíře téměř nutností. Dělám s PICama poměrně hodně, ale mám IDE, ve kterým to programuju v ANSI C, naposled jsem dělal v čistým assembleru, když jsem potřeboval u jedné fce ušetřit co nejvíc instrukcí. Bez podrobného popisu problému se dál nehneme.
u tak trivialnych veci jak byvaju v skolskych zadaniach staci mat "nacrtok" v hlave, pripadne aj v asm sa da robit program prehladne (procedury, makra, atd). Ale tiez mi chyba z jeho strany informacia ze jaky ma problem.
Jasný, z hlediska studenta mi ale i tak přijde vhodnější ty náčrtky si dělat, pro nováčka v oboru to vůbec není triviální věc a navíc se ty vývojové diagramy naučí dělat - po pár letech praxe už je IMHO trochu pozdě (můj případ
). Začátečníkům v programování libovolných mikrokontrolerů obvykle dělá hlavní problém vůbec pochopit tu práci na nejnižším levelu, že nic není zadarmo, že vykreslení čáry na nějakém displeji není Line(x0,x1,y0,y1), ale "bolestivé" čtení datasheetu řadiče, stovky až tisíce řádků v asm a hodiny ladění.
Diky za odpovědi. No když jsem to zkoušel na tom VALPICU, tak mě to prostě nejelo. Žadna ledka nic. Ani na tlacitka to nereagovalo..a jaksi v tom krokovaní treba v MPLABU to delam, tak nevim jak najit chybu v simulaci.
No dělame v tom cca dva roky. Ale jen fakt takovy veci jako je sedmisegmentovka ledky a tlacitka. Potom time delaye apod. A ucitel mě na to řekl že je tam nejaka chyba. A ja ji nemužu najít.
Pokud to nic nedělá, tak je chyba obvykle v nastavení konfiguračních registrů. Mrkni, jestli máš správně nastaven oscilátor a další věci s tím související. Dále předpokládám, že víš, že bys měl hned po spuštění správně nastavit registr CMCON a ANSEL (popř. ADCON1 u PIC18) - ANSEL v případě, že má mikrokontroler AD převodník. Chyba se hledá tak, že se program na nějakém místě zastaví (z nějakého důvodu) nebo se zacyklí nebo vrací nesmyslné hodnoty.
No seš hodnej že mě tohle říkaš. Ale s CMCON a ANSEL apod. jsem se nikdy nesetkal.
Dělame to na tomhle PICu PIC16F84A a kdyz koukam do přiručky tak tu neni nic o tom.
Aha, to je PIC16F84A, ten nemá ani AD vstupy ani komparátory. Díval ses na nastavení oscilátoru? Sleduj, v jaké chvíli se ti program při simulaci zastaví.