tst i ATMega128

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Harald
Inlägg: 42
Blev medlem: 7 november 2003, 15:50:50
Ort: Östersund

tst i ATMega128

Inlägg av Harald »

I bif. subrutin vill jag testa om r11 är noll och om så ej är fallet vill jag hoppa ur.
Det spelar ingen roll vad r11 har för värde. Inget hopp sker. Varför?
Jag kör i debuggern i AVR Studio.
/Harald

r11_Is_Down:
tst r11
brne SLUT_r11_Down ;Hoppa till slut om r11 <> 0
ldi Sekvens_Flag,4
SLUT_r11_Down:
ret
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Är osäker på hur tst fungerar, men cpi borde väl fungera, eller?
Harald
Inlägg: 42
Blev medlem: 7 november 2003, 15:50:50
Ort: Östersund

Inlägg av Harald »

testade med
cpi r11,0
men det gav följande felbesked:
(519) Illegal argument type or count.

Testade med andra värden än noll och provade även med att lägga ett värde i variabeln Temp men det gav samma felmeddelande.
tst har jag använt tidigare för att testa om noll eller negativt och det har funkat. Är det problem för att det finns i en subrutin?

/Harald
Harald
Inlägg: 42
Blev medlem: 7 november 2003, 15:50:50
Ort: Östersund

Inlägg av Harald »

Det är fel i debuggern! Det funkar ibland och ibland inte. Om jag programmerar kretsen så funkar det alltid!
/Harald
Användarvisningsbild
Melker
Inlägg: 410
Blev medlem: 26 maj 2003, 22:17:34
Ort: Umeå

Inlägg av Melker »

Testade tst nu i AVR-studio, tycker det verkar fungera som det ska.

Föresten så är det nog möjligt att cpi inte fungerar med dom nedre 16registerna, men det är ju bara att flytta över till ett av de högre registerna och sedan jämföra.
Skriv svar