MPLAB, call/return og interrupts

Når nu man kun har en stackstørrelse på 8, OG man gerne vil anvende subrutiner BÅDE i hovedprogrammet OG i interruptrutinerne er konklusionen så, at man IKKE anvender call/return ?

Hvis NEJ: Hvordan F..... holder man så styr på stackens størrelse ? Findes der så en smart måde at gemme stacken på ved et interrupt ? Hvad gør man ellers ?

Hvis JA: Det bliver da noget værre rodet kode ! Hvad gør man ellers ?

Mvh KS

Reply to
KS
Loading thread data ...

Nej, man skriver programmet så hovedprogrammet max. anveder 6 niveauer og intr 2 niveauer.

Det er sjoverer når man kun har 3 niveauer og skal bruge subrutiner i både hovedprogram og intr.

Reply to
HKJ

"HKJ" skrev i en meddelelse news:41ac89f2$0$174$ snipped-for-privacy@dtext01.news.tele.dk...

Jeg har nu nøje kontrolleret programmet, og der anvendes max 3 niveauer i hovedprogram og max 2 niveauer i interruptet.

Og vil så verificere dette med følgende:

1) sætte interruptet hhv. hovedprogrammet ud af drift 2) køre programmet 'et stykke tid' - længe nok til alt har været kørt 3) stoppe 4) se hvor mange røde adresser, der er i stack'en

Er det rigtigt opfattet, at disse røde tal viser det maximale antal niveauer, der er 'brugt' ?

HVIS dette er rigtigt - er der noget galt i interruptet, idet dette viser 4 "røde" - og vel dermed 4 niveauer !!! (er det noget med interrupt'et bliver interrupt'et ?) - Der BURDE dog stadig være plads i stack'en.

Sættes hovedprogram og interrupt i drift samtidig får jeg alligevel stackoverflow.

Hvad er det typisk begyndere laver galt her - nogen ideer ?

Mvh KS

Reply to
KS

Hvor mange stack niveauer bruger du på at starte din interrupt ? Både selve intr call'et og gemmer du nogle registre på stakken?

Jeg kan ikke hjælpe dig med MPLAB da jeg ikke bruger den.

Reply to
HKJ

HEJ - Er der ikke en som kender MPLAB der liiiige kan hjælpe med denne her ?

"HKJ" skrev i en meddelelse news:coktdn$ms8$ snipped-for-privacy@news.cybercity.dk...

Hvor mange ????

Jeg mener ikke jeg gemme noget på stack'en - ud over (automatisk) return adresserne

Mvh KS

Reply to
KS

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.