Problem med att fatta lite kod...

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
gvs
EF Sponsor
Inlägg: 1688
Blev medlem: 18 oktober 2003, 14:20:34
Ort: Göteborg
Kontakt:

Problem med att fatta lite kod...

Inlägg av gvs »

till en pic 16f84

IFNDEF DEBUG
CALL DELAY_1ms
ENDIF

Fattar inte riktigt vad det är liknar en if-sats men det ska väl inte gå att skriva i asembler?
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Re: Problem med att fatta lite kod...

Inlägg av strombom »

Det är ett makro, det kommer alltså inte köras av enchipdatorn. Det betyder att om DEBUG är definerat så kommer kodraden CALL DELAY_1ms att läggas in i assemblerkoden.

*reserverar mig för eventuella fel* :)
AsmN
Inlägg: 76
Blev medlem: 10 juni 2003, 17:39:16
Ort: Pedersöre, Finland
Kontakt:

Inlägg av AsmN »

Annars bra, men jag tror att det är tvärt om...

IFNDEF skulle jag tolka som IF NOT DEFINED och IFDEF som IF DEFINED

*reserverar mig oxå för eventuella fel* ;)
gvs
EF Sponsor
Inlägg: 1688
Blev medlem: 18 oktober 2003, 14:20:34
Ort: Göteborg
Kontakt:

Inlägg av gvs »

hm knasig har hittat en till som är mystisk

DECF Divisor_500ms,F ; Count 100ms down to give 500 milli second tick
BNZ INTX ; Exit if divider not zeroed
MOVLW .05
MOVWF Divisor_500ms ; Preset the divide by 5

den är ju bra kommenterad så jag ser ju vad som händer men vad tusan är BNZ?
AsmN
Inlägg: 76
Blev medlem: 10 juni 2003, 17:39:16
Ort: Pedersöre, Finland
Kontakt:

Inlägg av AsmN »

Hoppa om INTX inte är 0..
BNZ är också ett macro. Macron borde finnas förklarde i hjälpen i MPLAB.
gvs
EF Sponsor
Inlägg: 1688
Blev medlem: 18 oktober 2003, 14:20:34
Ort: Göteborg
Kontakt:

Inlägg av gvs »

oki.... har inte börjat med mplab än sitter bara och klurar på kod och lär mig den vägen :)
Skriv svar