- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 8 von 8

Thema: PIC 16F628A - PortA zeigt seltsames Verhalten

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Hallo PICTure,
    den gleichen Zweig für das ausschalten der LED's gibt es natürlich auch noch einmal als BCF Routinen.
    Hier geht es aber darum das die LED's zuerst mal alle nacheinander eingeschaltet werden sollen. Im Code sollte das deutlich werden.
    Im Debugger wird es auch genauso dargestellt, wenn der Code aber im Controller läuft, dann geht RA0 an, nächster Schritt RA1 geht an, aber im gleichen Moment geht RA0 aus, ohne das ein BCF für RA0 aufgerfuen wird, dann so weiter?
    Ich hoffe so wird die Erklärung deutlicher.
    Danke und Gruß Reiner

    - - - Aktualisiert - - -

    Hallo witkatz,
    in der Antwort an PICture habe ich noch einmal erklärt was da seltsam ist.
    Ansonsten ist mir bewußt das die Port's mehrfach Funktionen haben können. Die Comperatoren sind zuvor abgeschaltet. Ich habe deshalb auch nicht 0,1,2,3 genommen sondern 0,1,3,6. Da war ich mir sicherer das nicht andere Funktionen auf dem Ausgang stören.
    Danke Gruß Reiner

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von witkatz
    Registriert seit
    24.05.2006
    Ort
    NRW
    Alter
    54
    Beiträge
    553
    Blog-Einträge
    17
    Zitat Zitat von rliebold Beitrag anzeigen
    dann geht RA0 an, nächster Schritt RA1 geht an, aber im gleichen Moment geht RA0 aus, ohne das ein BCF für RA0 aufgerfuen wird, dann so weiter?
    Zitat Zitat von rliebold Beitrag anzeigen
    Die Comperatoren sind zuvor abgeschaltet.
    Poste bitte den betreffenden Ausschnitt deiner Initialisierungssequenz, oder prüfe, ob CMCON wirklich auf 7 gesetzt wird.

    Zitat Zitat von rliebold Beitrag anzeigen
    Ich habe deshalb auch nicht 0,1,2,3 genommen sondern 0,1,3,6. Da war ich mir sicherer das nicht andere Funktionen auf dem Ausgang stören.
    Beim Setzen des Portpins werden die aktuellen Zustände aller(!) Pins des Ports gelesen und erneut gesetzt (read-modify-write). Es scheint, dass beim Setzen von RA1, RA0 als 0 zurückgelesen wird. Entweder sind die Pins RA0, RA1, RA3 immer noch über CMCON als Analogeingang konfiguriert oder so überlastet, dass die Spannung am Ausgangspin in die Knie geht bzw. nicht schnell genug ansteigt und als 0 detektiert wird.
    Geändert von witkatz (23.01.2017 um 11:47 Uhr)

  3. #3
    Hallo witkatz,
    Danke für deine Antwort.
    Ich denke das mit CMCON 7 wird es aber sein.
    Da schau ich heute Abend mal rein.
    Aber weshalb eigentlich 7 ich dachte nur die Pins 2 und 3 also RA3 und RA4 können auch als Comperator geschaltet werden?
    Die habe ich deshalb nicht genutzt.
    Das die Spannung zusammenbricht schließe ich eigentlich aus, weil alle anderen 8 Ausgänge von PortB an bleiben.
    Gruß Reiner

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von witkatz
    Registriert seit
    24.05.2006
    Ort
    NRW
    Alter
    54
    Beiträge
    553
    Blog-Einträge
    17
    Zitat Zitat von rliebold Beitrag anzeigen
    Aber weshalb eigentlich 7 ich dachte nur die Pins 2 und 3 also RA3 und RA4 können auch als Comperator geschaltet werden?
    Teilweise richtig, RA3 und RA4 können über CMCON als Comparatorausgang konfiguriert werden.
    Bei RA0-RA3 ist aber der Analog-Input-Mode, den man für digitale Funktion ebenfalls per CMCON abschalten muss. Wenn die Pins als Comparatoreingänge konfiguriert sind, werden sie bei BSF digital als 0 zurückgelesen. Lese dir vielleicht etwas zu read-modify-write ein, zum Verständnis, wie BCF und BSF funktionieren. In dem Datenblatt findest du auch eine kurze Er
    klärung über die Funktion der Portpins in diesem Zusammenhang.
    -> s. Kap. 5.3 I/O Programming Considerations
    Geändert von witkatz (23.01.2017 um 13:55 Uhr)

  5. #5

    Hallo witkatz,
    vielen Dank für deine Hinweise.
    Ich hatte zwar schon alles korrekt initialisiert
    Code:
        CLRF CCP1CON	;Turn CCP module off CCP1 auschalten, sonst leuchtet RB3 nicht
        ; 16F628 alle Comparatoreingänge auf Digital umschalten
        ; alles in der Bank 0 auf Digital umschalten
        BSF CMCON, CM0
        BSF CMCON, CM1
        BSF CMCON, CM2
    aber an der falschen Stelle, nämlich vor der Main Routine
    Ist eben immer gut wenn man mal drüber spricht (schreibt).
    Danke und Gruß Reiner

Ähnliche Themen

  1. Seltsames Verhalten des AVR NET IO
    Von iBot im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 19.04.2013, 14:04
  2. seltsames Verhalten am I2C
    Von liquidus im Forum Elektronik
    Antworten: 12
    Letzter Beitrag: 06.12.2009, 17:42
  3. Seltsames verhalten
    Von Atmelbeginne im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 6
    Letzter Beitrag: 10.12.2008, 18:37
  4. Seltsames Verhalten vom ADC an RN-Control
    Von MasterFX im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 0
    Letzter Beitrag: 19.04.2008, 17:09
  5. RN Motor seltsames Verhalten
    Von User969 im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 30.10.2005, 10:38

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress