Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

probleem

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    probleem

    Kirjutasin väikese koodijupi, hex failiks tegemisel tekib probleem:

    Message[302] C:\... 17 : Register in operand not in bank 0. Ensure that bank bits are correct.
    Message[302] C:\... 17 : Register in operand not in bank 0. Ensure that bank bits are correct.

    need peaks olema siis TRISA ja TRISB

    koodiosa ise selline

    bsf STATUS, RP0 ; see peaks lülitama bank1-te?
    movlw 0x0F
    movwf TRISA ; RB0-RB3 sisendid
    movlw 0x00
    movwf TRISB ; PORTB kõik pinnid väljundid
    bcf STATUS, RP0 ; bank0

    Ei leia küll kuskilt viga

    kiviks on PIC16F84A

    Veel üks küsimus PIC16F628A kohta, sellel on RB6 ja RB7 OSC sisendid, kas selle peab ka programmis ära määrama, minu koodi järgi oleks need nagu väljundid, või piisab sellest kui panen
    __CONFIG _XT_OSC ... ?
    ...

    #2
    see message on lihtsalt teade, ta ei takista kompileerimist. Kuna kompilaator su koodi läbi ei vaata (ja tegelikult natukegi raskema koodi puhul ei saakski sellega hakkama), siis hoiatatakse alati, kui register ei ole pangas 0. Ka siis, kui su kood on korras ja sul ongi lülitatud pank1 peale ümber.

    Comment


      #3
      Tervitus!

      Kui sa oled juba kindel, et sa oled alati õigetes pankades, siis võid lisada koodi päisesse rea:
      errorlevel -302
      mis kaotab ka vastavad hoiatused!

      __CONFIG _XT_OSC määrab ära selle, et sa kasutad välimist kvartsi, et kasutada neid koibasid I/O-na , tuleb sul valida sisemine RC ossillaator(__CONFIG _INT_RC).

      Aq

      Comment

      Working...
      X