mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Pic12F615 ärgert mich


Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Irgendwie will das ganze Programm nicht so wie ich es will aber ich sehe 
den Fehler nicht und bekomme von euch vieleicht Hilfe..

Ich möchte eigentlich nur ein PWM-Signal erzeugen was mann einfach 
ändern kann an port 0 und 1 deshalb entschuldige ich mich schon mal für 
dei vielen nop's

        #include <P12f615.INC>

        ERRORLEVEL      -302

    __CONFIG    3DD5h

    BANKSEL   GPIO          ;
    CLRF     GPIO           ;Init GPIO

    BANKSEL   ANSEL         ;
    CLRF     ANSEL          ;alle digital acd aus

    MOVLW     b'00000000'   ;alles Ausgänge
    MOVWF     TRISIO        ;übernehmen

zwei
    bcf   GPIO,1
    bsf   GPIO,0
    nop    ;1
    nop    ;2
    nop    ;3
    nop    ;4
    nop    ;5
    nop    ;6
    nop    ;7
    nop    ;8
    nop    ;9
    nop    ;10
    nop    ;11
    nop    ;12
    nop    ;13
    nop    ;14
    nop    ;15
    nop    ;16
    bcf   GPIO,0
    bsf   GPIO,1
    nop    ;1
    nop    ;2
    nop    ;3
    nop    ;4
    nop    ;5
    nop    ;6
    nop    ;7
    nop    ;8
    nop    ;9
    nop    ;10
    nop    ;11
    nop    ;12
    nop    ;13
    nop    ;14
    goto   zwei

Autor: Uwe Nagel (ulegan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schreib mal vor deine Schleife noch ein:
    BANKSEL   GPIO          ;

sonst greifst du in der Schleife mit den GPIO-Zugriffen auf das 
TRISIO-Register zu. Das hat die gleiche Adresse wie GPIO, liegt aber in 
einer anderen Bank, nämlich in der gleichen wie ANSEL, die du zuletzt 
angewählt hast.

Uwe

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke hatte heute früh auch mich gefragt auf welcher Bank ich zum 
Schluss eigentlich war hatte dann
  bcf       STATUS, RP0
eingefügt und siehe da da passiert was :o)
Hab dein Methode auch ausprobiert und siehe sie geht auch

Danke

Autor: Uwe Nagel (ulegan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
BANKSEL ist ein Makro und erzeugt in diesem Fall auch nur ein:
  bcf       STATUS, RP0

Uwe

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.