PIC - læs portpins

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Danish to

Threaded View
Hej NG.

Jeg har et problem med at læse et par portpins på en PIC.
Jeg drejer sig såmænd blot om en 12C509, hvor jeg skal læse et par
inputs og tage action på det.

Oversigt over pins:
;    GP    5    4    3    2    1    0
;    pin   2    3    4    5    6    7
;    Func  O1   O2   i2   O3   i1   i0
pins 7, 6 og 4 skal altså være inputs
hvilket jeg regner med at gøre sådan:

movlw    0x0b    ; Enable GP0, GP1 and GP3 (pin 7, 6 and 4) as inputs
tris    06    ; 6 equals the TRIS reg

Når jeg vil læse pins gør jeg sådan:

movf    GPIO,0    ; Hent port status til W register
movwf    PortStat ; gem så W i PortStat


Spørgsmål nr 1: Får jeg hermed "fat i" hvad status er på pins 7, 6 og 4
og gemt i PortStat?

Spørgsmål nr 2: Hvad overser jeg?

Re: PIC - læs portpins

Quoted text here. Click to load it

Se det er et par gode spørgsmål !!
som man umiddelbart ikke kan besvare med den stump kode du vedlæger
det du skriver ser fornuftigt ud,
men det er straks være med det du ikke skriver

min første tanke er om det CONFIGURATION WORD  er rigtigt


                        CONFIGURATION WORD BIT MAP
           Bit    11  10  9  8  7  6  5  4   3   2     1     0
        Number:
       PIC12C5XX  ?   ?  ? ?  ? ? ? MCLRE CP WDTE FOSC1 FOSC0

   bit 11-5: Reserved: Write as ?0? for PIC12C5XX
   bit 4:    MCLRE: Master Clear Enable bit
             1 = MCLR pin enabled
             0 = MCLR internally connected to VDD
   bit 3:    CP: Code Protect Enable bit
             1 = Code memory unprotected
             0 = Code memory protected
   bit 2:    WDTE, WDT Enable bit
             1 = WDT enabled
             0 = WDT disabled
   bit 1-0: FOSC<1:0>, Oscillator Selection Bit
             11 = External RC oscillator
             10 = Internal RC oscillator
             01 = XT oscillator
             00 = LP


håber at dette kan lede dig på sporet at dit problem,
/Carsten

Re: PIC - læs portpins
Quoted text here. Click to load it

Hej Carsten.
Configurations word'et styrer jeg kun ved programmeringen af kredsen.
Men jeg tror det vil være smart at gøre det i koden, som du indikerer
med dit spørgsmål.
Men jeg har faktisk fået hul igennem. Det viste sig at jeg HAR gjort det
rigtigt. Mit problem var når jeg ville simulere det. Jeg troede at jeg
satte mine inputs hi eller lo. Det gjorde jeg bare ikke. Men en
behjertet sjæl på et forum hos Microchip pinpointede mig. Efter et par
mails frem og tilbage fandt vi fejlen, og min kode kører nu som
forventet. (Lad være med at sige det højt: Jeg kunne ikke finde ud af at
betjene simulatoren korrekt...)
VH
Klaus

Re: PIC - læs portpins

Quoted text here. Click to load it

    Uha, det skal du ik være ked af, med de mange ændringer osv. med
simulatoren, siden MPLAB 4, så er vi en del som har støt i problemer med
den, samt debug'eren kan man stadig ik stole helt på :( opdagede jeg i
denne uge, da den sagde mine portben var noget andet end hvad de var...
hmmm, når lysdioden lyser ved høj, så er den nok ikke lav ;) Men det er
jo straffen ved at hver C-compiler laver sine egne COFF filer osv. og
deres egen IDE'er og deres egen debuggere, og derved ikke virker skide
fedt i MPLAB, med ICD-2 og så en tredjeparts C compiler ala CCS-C. Men
det er en hel anden debat, og vil nødig smide brænde på bålet til Lasse ;)

--
VH
Lars Molnit
MZ ETZ 300 CDi ReedValve, MZ TS 250/1 Supra5, CZ 180
We've slightly trimmed the long signature. Click to see the full one.

Site Timeline