mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik einschaltprobleme beim pic 16f84


Autor: malte (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich habe folgendes Problem. Meine Schaltung läuft eigentlich ohne 
Probleme, allerdings funktioniert der Einschaltvorgang nicht so richtig. 
Beim Einschalten der Betriebsspannung läuft der Pic eigentlich nie an. 
Ich muss erst einmal schnell wieder aus und dann ein schalten. (warum 
auch immer?!?)
Ausserdem kann ich den Pic zum laufen bringen, wenn ich "reset" 
betätige. (Ich will aber einfach einschalten, dann soll das Gerät 
funktionieren)
Zuerst dachte ich, der Quarz schwingt sich nicht richtig ein, da die 
Kondensatoren falsch gewählt worden sind, ich habe aber jetzt diverse 
Werte von 18pF bis 33pF gewählt, mit dem selben Ergebnis.
Dann habe ich über einen Kondensator den Reset-Pin beim Einschaltvorgang 
längere Zeit auf low gehalten, funktioniert aber auch nicht.
Ausserdem habe ich noch mit verschiednen Kondensatoren ausprobiert, die 
Spannungschwankungen beim Einschaltvorgang zu unterdrücken, mit dem 
Ergebnis dass ich das Gerät wieder ohne Probleme einschalten kann, wenn 
die Elkos noch geladen sind. Im entladenen Zustand tritt wieder das 
selbe Problem auf.

Wer weiß, was ich falsch gemacht haben könnte?

Autor: Pfistu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es liegt an der Software die du programmiert hast. Wenn du die Spannung 
einschaltest, dann wird sofort ein Interrupt ausgelöst, dort sollte eine 
Sprungmarke an den Anfang deines Programms stehen, damit es anläuft. 
Schau im Tutorial dieser Page mal nach, ist sicher beschriben bei den 
Interrupts.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Pfistu: Im Tutorial geht es nur um AVR, nicht um den PIC. Außerdem 
liegt der Reset-Vektor meistens ganz am Anfang des Programmspeichers, so 
dass das Programm einfach laufen sollte. Und das tut es ja auch, wenn 
Reset betätigt wird.

@ malte: Wie sieht deine Spannungsversorgung und die Reset-Beschaltung 
aus?

Autor: Florian S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der PIC16F84 verfügt über eine POR(Power-On-Reset)-Schaltung, das den 
Controller beim anlegen der Betriebsspannung zurücksetzen.
Zu dem schalte ich immer einen 22kOhm Widerstand von +Ub nach /MCLR und 
einen 2,2µF Elko von /MCLR nach Masse.
Ich hatte bis jetzt noch keine dieser Probleme werder mit noch ohne 
externer Beschaltung an /MCLR.

Beachte auch noch folgende Adressen:(Hex)
000  Reset-Vektor
004  Interrupt-Vektor
100  Hier fängt normal das Hauptprogramm an.


Das Programm sieht also folgendermaßen aus:
        org     000
        goto    haupt

        org     004
isr     ....
        retfie

        org     100
haupt   ....

Gruß Flo

Autor: malte (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die zügige Hilfe.
Mein Problem war in der Tat ein Software-Problem. Beim Einschalten wurde 
ein Timer-Interrupt ausgeführt, bevor ich eine Kontrollvariable erst 
gesetzt habe. Dadurch dachte das Programm, es sei schon zu ende. Jetzt 
habe ich die Aktivierung der Interrups ein wenig später gesetzt und 
alles funktioniert!!!
Nochmals vielen Dank und viele Grüße
Malte

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.