mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC16F690 und PortB


Autor: Manuel Möck (hutschafu)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammmen
Ich aber ein Problem bei dem ich fast am verzweifeln bin.
Ich habe einen PIC16F690 an welchem ich von PortB den Pin7 als ganz 
normalen
Ausgang nutzen möchte. Also eine LED einschalten.
PortB wird noch für andere Funktionen genutzt, z.B. Pin7 für die 
Serielle
Schnittstelle.
Ich habe nun meiner Meinung nach alles so Inizialisiert das ich diesen 
Port als normalen Ausgang nutzen kann.
Ich bin schon seit Tagen dran entlich diese LED zum leuchten zu bringen 
und es klappt einfach nicht.
Mein Assmbler Programm Anhang:
Ich hoffe Ihr könnt mir weiterhelfen.

Vielen Dank und einen schönen Sonntag.

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch doch einfach mal

movwf (move w to f) statt movfw (move f to w)
wenn du Register schreiben willst.

Autor: Manuel Möck (hutschafu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Besten Dank Anja für den den aufgedeckten Fehler.
Aber leider funktioniert das mini progrämmchen
immer noch nicht.
Der Port lässt sich einfach nicht setzen.

Hat jemand eine Ahnung warum?

Grüße

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
du redest von einem Fehler. Der Fehler war mindestens zwei mal 
vorhanden.

außerdem: schau mal ins Datenblatt Seite 71.

http://ww1.microchip.com/downloads/en/DeviceDoc/41262C.pdf

The ANSELH register must be initialized
to configure an analog channel as a digital
input. Pins configured as analog inputs will
read ‘0’.

BSF und BCF sind "read modify write" Befehle.
Solange der Port-Pin noch als Analog-Pin Konfiguriert ist
wird das nichts.

Autor: Torsten Schwalm (torstensc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie hast du die LED beschaltet? PORTB kann meines Wissens nach nur
nach LOW ziehen. Deshalb haben die intern einen Schaltbaren Pull-Up
Widerstand. Der dürfte aber für eine LED nicht reichen.

Torsten

Autor: Manuel Möck (hutschafu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen und danke für eure Hilfe.
Hab das Problem gefunden...
RB7 an meinem PIC war wohl defekt hab das Programm an einem anderen PIC 
ausprobiert und alles funktioniert.

@Anja
Das ANSELH Register beeinflusst nur die Pins RB4 RB5 und RB6, da diese 
auch als Analog Input genutzt werden können.
RB7 kann das nicht. (siehe Datenblatt Bockschaltbild auf Seite 76)

Besten Dank

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.