mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC16F877A - teilweise fehlerhaft?


Autor: Josef K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe derzeit mehrere Wählgeräte (GSM) mit jeweils einem PIC 16F877A
I/PT (TFTP-Typ) im Einsatz. Dazu ist zu sagen, dass ich den Speicher
ziemlich "randvoll" programmiert habe.

Nun hatte ich schon zweimal (2 von 10 - bis jetzt..) einen PIC, der
teilweise Programmcode falsch ausführte. Sämtliche Versuche - auch
absichtliche NOP Befehle, um eventuell fehlerhaftem Speicher
auszuweichen - scheiterten.
Als ich einen Ersatz-PIC einlötete waren die Probleme verschwunden!

Hat vielleicht jemand eine Idee, ob ich vielleicht etwas falsch gemacht
haben könnte?

Vielen Dank im Voraus Josef

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fehlerhaften Speicher kann ich mir nicht vorstellen, der sollte doch
bereits beim Verify erkannt werden, oder machen dies die
Programmiergeräte für PICs nicht?
Es könnte an vielem liegen. Vielleicht hast Du irgendwo ein Timing, das
extrem knapp bemessen ist, oder eine kalte Lötstelle, oder beim Löten zu
warm geworden, oder....

Wie hälst Du es eigentlich mit statischer Aufladung? Wenn ICs durch
eine statische Entladung "angeknackst" sind, müssen sie nicht
unbedingt kaputt sein - können aber sehr seltsam reagieren.

Autor: Josef K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun, wegen Timing und so weiß ich nicht, was zB zu einem Fehler führen
kann - dies müsste dann aber an einzelnen Toleranzen gelegen sein (8
Geräte funzten ja einwandfrei).

Bezüglich statischer Aufladung muss ich wohl zugeben, etwas nachlässig
zu agieren... Werde das aber zukünftig doch in Betracht ziehen!

Kalte Lötstelle kann fast nicht sein, weil ich das IC vor dem Tausch
nachlötete - ohne Erfolg. Zu heiß geworden - möglich, kann man schwer
sagen. Diesbezüglich gebe ich mir stets Mühe, um Überhitzungen zu
vermeiden.

Gruß Josef

Autor: Josef K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach - noch etwas zu den NOP-Befehlen:

Ich habe mich anfänglich gewundert, warum ein anderer Teil des
Programmes plötzlich nicht mehr funktionierte, wenn ich einen Teil
veränderte.
Bis mir eben die Idee kam, einmal den Speicherbereich, in welchem meine
fehlerhafte Routine lag, etwas zu verschieben und siehe da...

die Routine lief plötzlich normal, jedoch eine andere Routine nicht
mehr!!!

Deshalb glaube ich an ein Problem im Speicher.

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.