Zdravím, potřeboval bych pomoct s jedním programem do školy. Program je téměř hotový, stačí najít chybu, kterou se mi po delším bádání, nepodařilo najít. Věřím, že někdo krapet zkušenější než já tu chybu najde do 5 minut.
Zadání: Vytvořte program, který bude počítat počet zapnutí napájecího napětí pro vývojovou desku s jednočipovým mikropočítačem PIC16F88. Počet zapnutí bude uložen v BCD kódu na adrese 10H v paměti EEPROM. Po uložení nové hodnoty se rozsvítí desetinná tečka na zobrazovači. Po stisknutí tlačítka TL1 se na 1 sekundu zobrazí na sedmisegmentovém zobrazovači jednotky počtu zapnutí napájení.
Jediné co mi program zatim dělá je to, že po prvním zapnutí zobrazí 0, což je OK, ale po vypnutí a zapnutí zdroje je tam stále jen 0 ovšem už by se tam měla zobrazit 1. Osobně si myslím, že chyba bude v zápisu nebo ve čtení.
V příloze najdete zjednodušené schéma, vývojové diagramy a samotný program. Budu vám velice vděčný a mé vysvědčení taktéž za jakoukoliv pomoc či připomínku. Děkuji.
administrator: přejmenováno z "Assembler- oprava kódu. PIC16F88 ."
Zdravím, asembler tohoto brouka jsem nedělal už několik roků, tak detailní radu nevím. Podle tvého popisu jsem, ale pochopil, že Ty ani nevíš co se uvnitř děje, Proto bych si v Mplabu spustil simulaci a vytáhl si na diagnostiku všechny proměnné včetně všech pamětí, potom budeš rychle vědět co a jak. Jedině tak se dopracuješ požadovaného cíle, zvláště u takového jednoduchoučkého prográmku. Otestovat si všechny rutiny, třeba samostatně, abys měl jistotu chodu.
Asi by ses mel kouknout do datasheetu na stranku 18 do tabulky co je nastaveno po resetu na EECON1 EEPGD.
(18Ch EECON1 ||EEPGD||—||—||FREE||WRERR||WREN||WR||RD|| x–x x000)
Pak jeste na str.: 31 -> tam je to i s priklady.
Kod jsem moc nestudoval ale myslim, ze navrat z preruseni je RETFIE … Doufam, ze jsem aspon trosku pomohl.