-         

Ergebnis 1 bis 4 von 4

Thema: MPLAB IDE - Simulationsproblem

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    14.10.2009
    Beiträge
    19

    MPLAB IDE - Simulationsproblem

    Anzeige

    Hallo Leute!
    Habe ein Problem bei der Simulation eines einfachen Programms mit MPLAB. Programm funktioniert an sich, auch die entsprechenden Register enthalten die vorgesehenen Werte. Allerding nicht so beim GPIO - Register.
    Es lässt sich irgendwie nicht verändern. (Ich arbeite mit einem PIC 12F675)
    Hier mein kleines Bsp.-Programm:


    list P=12F675
    #include "P12F675.inc"
    nolist
    errorlevel -302

    __config _CP_OFF & _WDT_OFF & _PWRTE_ON & _MCLRE_OFF & _INTRC_OSC_NOCLKOUT



    org 0x00
    call Init


    main
    movlw B'000001' ; GPIO - Test
    movwf GPIO

    bsf GPIO,1

    end


    ;-------------------------------------------------------------------------------------------



    Init
    clrf GPIO
    bsf STATUS,RP0
    call 0x3FF
    movwf OSCCAL
    bcf OPTION_REG,7
    movlw B'11111100'
    movwf TRISIO
    bcf STATUS,RP0
    movlw 7
    movwf CMCON
    clrf ANSEL
    clrf INTCON

    return
    end
    Würde mich freuen, wenn jemand eine Idee hat, woran das liegen könnte.

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    14.10.2009
    Beiträge
    19
    Ok, hab den Fehler selbst gefunden.
    Der Fehler liegt im Programmteil "Init" und zwar befinden sich die Register "ANSEL" und "INTCON" in Bank 1 und nicht in Bank 0, wie im Programmcode steht. Somit ist es auch logisch, dass vorher das Reg. GPIO nicht beschrieben werden konnte, da beim PIC 12F675 das ANSEL-Reg. für die Zuweisung digitaler IOs gesetzt werden muss.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2007
    Ort
    Berlin
    Beiträge
    526
    Deinen Fehler hast Du richtig erkannt, aber der Richtigkeit halber:
    Das INTCON Register ist gespiegelt und in beiden Banken verfügbar. Hier kannst Du ohne das Umschalten des RP0 Bits zu jederzeit zugreifen. Beim ANSEL Register must Du jedoch, wie Du richtig geschrieben hast,
    zunächst die BANK 1 auswählen.

    zur Beruhigung: 90 Prozent von unerklärlichem Fehlverhalten meiner Software war ein BANKSELECT Problem.


    mfg. Siro

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    14.10.2009
    Beiträge
    19
    Es ist zum verzweifeln! Jetzt wo ich den Fehler gefunden habe, lässt sich der PIC irgendwie nicht mehr beschreiben. Ich arbeite mit einem Velleman PIC Programmer Board von Conrad und bis Gestern ging es noch. Jetzt kommt währends des Beschreibens (Write all data) immer eine Fehlermeldung und der Programmcode ässt sich alleine gar nicht mehr übertragen. Ist das Ding jetzt kaputt?

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •