-         
Ergebnis 1 bis 3 von 3

Thema: Problem mit GPIO 4 und 5 als Outputs bei 12F683: Bits werden nicht ausgegeben

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2009
    Beiträge
    11

    Problem mit GPIO 4 und 5 als Outputs bei 12F683: Bits werden nicht ausgegeben

    Anzeige

    Hallo allerseits,

    ich bräuchte mal Eure Hilfe. Ich bastle an einem Projekt, bei dem ich 3 unabhängig voneinander blinkende LEDs und einen PWM-Ausgang benötige. Da wenig Platz vorhanden ist und ein 12F683 eigentlich 6 I/O-Pins (darunter einen PWM) hat, habe ich mich für den entschieden.

    Ich bin so weit, dass die ersten beiden GPIOs (0 und 1) schon wie gewünscht arbeiten, auch GPIO 2 (wo am Ende das PWM-Signal rauskommen soll) bekomme ich angesprochen. Aber GPIO 4 und 5 ums Verrecken nicht... Merkwürdig ist, dass beim Start der Schaltung sowohl GPIO 4 als auch 5 ganz kurz mal auf 5V gehen (geschätzt 1/10 s), dann aber beharrlich bei 0V stehen. Ich habe schon alles Mögliche in der Konfiguration des Chips ausprobiert, auch habe ich sowohl den gesamten Port in einem Rutsch beschrieben als auch die Ports einzeln. Kein Erfolg, GPIO 4 und 5 bleiben "stumm".

    GPIO 3 habe ich über einen 10k-Widerstand nach Vdd verbunden, so dass ich hier einen unerwünschen Effekt ausschließen kann. Ich weiß, dass der nicht als Ausgang konfiguriert werden kann.

    Ich benutze MPASM v5.84 und als Brenner den DIAMEX PIC-PROG (der einzige, der damals mit Win10 kompatibel war) in Verbindung mit dem PICkit 2 Programmer.

    Ein wenig Erfahrung habe ich mit den PICs schon, aber so etwas ist mir noch nicht untergekommen. Die ebenfalls sehr kleinen 12f629 waren jedenfalls nie derart zickig.

    Hat einer von Euch eine Idee, was da los sein könnte? Bin für jeden Hinweis dankbar. Hab da bestimmt was ganz Blödes übersehen. ASM und HEX im Anhang.

    Gruß PICBeginner
    Angehängte Dateien Angehängte Dateien

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Ort
    Berlin
    Beiträge
    937
    Hallo PICBeginner,

    die erste gültige RAM Adresse in deinem Chip ist 0x20.

    ich habe nie mit CBLOCK gearbeitet, aber vielleicht liegt es daran.

    "clrf Ansel" muss sein, wenn Du den ADU nicht benutzt

    und den Komparator ausschalten mit

    MOVLW 07h
    MOVWF CMCON0

    Siro

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2009
    Beiträge
    11
    Hallo Siro,

    aaaarrrrgggghhhh... Ich hab's gewusst! Ganz blöder Fehler - hab mich mit der RAM-Adresse verhauen und es ist mir nicht aufgefallen! Natürlich 0x20!

    Herzlichen Dank, jetzt läuft's!

Ähnliche Themen

  1. Bascom-variable wird nicht richtig ausgegeben
    Von Wsk8 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 9
    Letzter Beitrag: 02.03.2009, 22:22
  2. Kleines Target Problem GND/VSS werden beim L297 nicht angeze
    Von Thomsonxx im Forum Konstruktion/CAD/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 2
    Letzter Beitrag: 25.12.2008, 13:07
  3. Welche Bits müssen bei einem LFSR rückgekoppelt werden?
    Von Ohm-Mega im Forum Software, Algorithmen und KI
    Antworten: 3
    Letzter Beitrag: 09.06.2008, 17:59
  4. bits werden nicht vollständig in struct eingelesen
    Von cesupa im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 20.05.2008, 20:08
  5. Antworten: 1
    Letzter Beitrag: 27.12.2005, 17:39

Stichworte

Berechtigungen

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