Založen: Dec 26, 2004 Příspěvky: 1426 Bydliště: Košice - okolie
Zaslal: út únor 06 2007, 23:25 Předmět: PIC16f877A pamäť
Zdravim, napisal som dost dlhy program (cca 4000 riadkov - prikazov) ale neviem ci som uz prekrocil pamat procesora alebo co sa deje. Do urciteho miesta programu vsetko funguje ako ma, ale ak sa splni podmienka program vykoná skok prikazom GOTO skoro na koniec programu, to by mal teorteciky spravit, ale on to nespravi, vlastne nespravi nic a zasekne sa, program je na 100% dobry (mozno treba nieco nastavit aby sa dalo skocit), ak som zmazal zaciatok programu a skratil ho tak tento skok na koniec programu prebehol v poriadku, ako zistim, ze som prekrocil pamat procesora, ze uz do neho nic nevopcham? Pri programovani a overovani nahrateho programu v uP mi vypise ze je vsetko OK, podla tohto by este pamäť mala stacit. Tak ja tomu nechapem ze co s tym je. Treba nieco nastavit alebo je uz naozaj procesor plny a nic viac don nevlezie?
P.S. ak som pri programovani 16f84 prekrocil pamät, tak s tym istym programatorom mi to vyhodilo chybu pri overovani nahrateho programu do uP
Založen: Nov 21, 2005 Příspěvky: 524 Bydliště: Bratislava
Zaslal: st únor 07 2007, 8:51 Předmět:
Predpokladám, že asembler, pretože prekladač by ťa upozornil na preplnenie pamäti.
Ak asembler, tak potom 877 má kapacitu 8000 príkazov, tzn, že si niekde v polovici.
CALL a GOTO je v tvare 10 0kkk kkkk kkkk a 10 1kkk kkkk kkkk, kdek je konkretne číslo určujúce adresu kam skočiť. Je to len 11bitov, preto je možné priamo skočiť len v stránke 0. t.j. 0 - 2048 byt.
Keď chceš skočiť do 1. 2. alebo 3. stránky musíš pred inštrukciou CALL a GOTO pripraviť 12. a 13. bit (je to 3. 4. bit PCLATH).
Pozri Datašit kap. 2.3 je tam aj príklad skok do 1. stránky. _________________ Ako elektrikár sa cítim slobodne.
Môžem hovoriť do vedenia!
Nemůžete odesílat nové téma do tohoto fóra. Nemůž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. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.