Forum: Mikrocontroller und Digitale Elektronik PIC16F876 - Probleme!


von Jens N. (jens-n)


Lesenswert?

Hallo Experten!

Habe jetzt schon einiges versucht, aber noch immer nichts gefunden!
Immer noch das gleiche:
Pickik 2 + MPLAB v8.46 + PIC16F876

PKWarn0003: Unexpected device ID:  Please verify that a PIC16F876 is 
correctly installed in the application.  (Expected ID = 0x9E0, ID Read = 
0x0)

Was kann/könnendes es noch sein?

Bitte helft mir!

J.

: Bearbeitet durch User
von Motopick (motopick)


Lesenswert?

Laeuft der mit externen Quarz/Oszillator?

Entweder mal den Quarz oder den Oszillator ziehen.
Oder OSCIN auf GND legen.
Fuer ICSP braucht der kleine Kerl keinen externen Takt.

Wenns dann immer noch nicht geht, hast du wohl irgendwo
$c...sse gebaut.

von Jens N. (jens-n)


Lesenswert?

Nein! Er läuft ja absolut direkt am Pickit 2!
Also keinen VCC oder VSS oder ...

von H. H. (Gast)


Lesenswert?

Funktioniert es denn mit anderen PICs?

von Motopick (motopick)


Lesenswert?

> Er läuft ja absolut direkt am Pickit 2!

Tja,
> hast du wohl irgendwo $c...sse gebaut.
Oder der 876 ist karp0tt.

Wie geht eigentlich
> direkt am Pickit 2  ?¿?

Mein Original(NB) hat da nur eine 100 mil Buchsenleiste...

von Erni (pudding)


Lesenswert?

Hallo,
ich hatte einmal das Problem, dass sich ein PIC nicht mit dem Pickit2 HV 
programmieren ließ, da der PGM-Pin floatete.
Ein neuer PIC ist für den Low-Voltage-Mode programmiert (LVP-Bit 
enabled). Abhilfe schaffte ein 10k Widerstand vom PGM-Pin (RB3) gegen 
GND.

von Jens N. (jens-n)


Lesenswert?

Ja, ist richtig völlig super dein Top! Aber erst morgen.

von Jens N. (jens-n)


Lesenswert?

Nein! Auch mit allen andere geht’s nicht. 10F... , 12F... , 16F... , ….

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Jens N. schrieb:
> Hallo Experten!
>
> Habe jetzt schon einiges versucht, aber noch immer nichts gefunden!
> Immer noch das gleiche:
> Pickik 2 + MPLAB v8.46 + PIC16F876
>
> PKWarn0003: Unexpected device ID:  Please verify that a PIC16F876 is
> correctly installed in the application.  (Expected ID = 0x9E0, ID Read =
> 0x0)
>
> Was kann/könnendes es noch sein?
>
> Bitte helft mir!
>
> J.

Hallo Jens,

Achte darauf, daß der RESET Pin schaltungstechnisch auf 13V gezogen 
werden kann. Wenn es aus irgendeinen Grund verhindert wird, kann das 
Programmiergerät nicht diesen Modus aktivieren. (Also aufpassen, daß am 
RESET Pin keine Diode nach Vdd hängt. Ich verbinde Reset meist über 10K 
mit vdd. Das Programmiergerät kann das ohne weiteres auf 13V ziehen. Zur 
Not geht das, obwohl man es auch komplizierter verschalten kann).

Auch aufpassen, dass externe Beschaltung der PGC/PGD pins das 
Programmiergerät nicht behindert.

Dann auch aufpassen ob die Fuses für HV Programmieren nicht 
versehentlich auf LV gesetzt wurden. In diesen Fall muß ein weiterer Pin 
RB3 mit angeschlossen werden. Aber so genau kann ich mich jetzt daran 
auch nicht mehr erinnern. (Seit Arduino bin ich den PICs untreu geworden 
und verwende AVRs).

Sonst Verdrahtung und Programmiergerät prüfen. Der gutmütige 876er 
machte mir sonst nie Schwierigkeiten. Ich habe den und den 877 früher 
viel verwendet.

Auch aufpassen, daß man die SW auf 876 und nicht 876A einstellt.

Notfalls, falls Du einen alten Picstart hast, kannst Du ihn auch 
parallel programmieren.

Mit PICKIT2-4 oder ICD2-4 sollte es auf alle Fälle funktionieren.

Ich hoffe ich kaue hiermit Dir nicht zu viel altbekanntes durch.

Sind nur ein paar Gedanken zu Deinen Problem.

Viel Glück,
Gerhard

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Jens N. schrieb:
> Nein! Er läuft ja absolut direkt am Pickit 2!
> Also keinen VCC oder VSS oder ...

Was meinst Du exakt damit? Wie bekommt der PIC seine Stromversorgung?

Hast Du möglicherweise vergessen Vcc im Programdialog einzuschalten? Da 
ist eine Einstellung dafür. Aber Vdd, Vss müssen dann mit dem Pickit 
verbunden sein. Ausserdem empfiehlt sich ein 10K von Reset auf Vdd und 
der Vollständigkeit halber ein 0.1uF zwischen den Power Pins. Auch RB3 
muß möglicherweise mit angeschlossen werden.

https://ww1.microchip.com/downloads/en/DeviceDoc/52116A.pdf

Siehe Seite 22, Figure 2-4.

Falls ein nackter PIC mit dem PICKIT2 programmiert werden soll, dann 
braucht er eine minimale Beschaltung wie im Datenblatt angegeben.

Der Pickit ist ein "InCircuitProgrammer" im Unterschied zum PICSTART.
Ich habe mit dem Pickit immer nur in der Targetschaltung angeschlossen 
gearbeitet.

Ich kann Dir nur raten die Beschreibung des Pickits genau durchzulesen 
und dich an die Herstellerangaben zu halten. Auch ein Blick ins 
Datenblatt bezüglich ICP ist nützlich. Halte Dich bitte daran.

Wie gesagt, der Pickit2 ist ein "In Circuit Programmer" und setzt 
Randbedingungen voraus die ein nackiger Pic nicht erfüllt.

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Während wir beim Subjekt von Pic programmieren sind, möchte ich noch 
bemerken, daß einige PIC Serien, insbesondere die "K" Typen nur 9.5V 
anstatt 13V vertragen. Dafür verkauft MC einen Adapter, den man sich 
aber mit einem TL431 und ein paar Rs auch selber bauen kann.

Z.B. beim 18F46K80 war es so.

von Motopick (motopick)


Lesenswert?

> Auch mit allen andere geht’s nicht. 10F... , 12F... , 16F... , ….

Na dann ist ja alles klar.

> ... Please verify that a PIC16F876 is
> correctly installed ...

Genau das musst du tun!

Im uebrigen gewinnt bei einem "losen" PIC sowieso immer HV.
Auch wenn er auf LVP steht.

("loser" PIC := nackiger PIC nur mit PICKIT verbunden.)

von Jens N. (jens-n)


Angehängte Dateien:

Lesenswert?

Alles klar!
Jetzt funz es! Aber ganz anders - mit Pin 39 (der war ohne alles). Habe 
dann einfach einen Draht zwischen Pin 39 und PGC gelötet. Das war schon 
alles!

Trotzdem Danke für alles und Eure Bemühungen!

Bis später,
Jens

von Christian M. (christian_m280)


Lesenswert?

Aha, jetzt taucht in Deinem Salami-Thread noch ein Adapter auf. 
Wahrscheinlich ein Jumper nicht gesetzt, sehe ja nicht auf die andere 
Seite.

Gruss Chregu

von Motopick (motopick)


Lesenswert?

> noch ein Adapter auf

Na, war doch klar. :)
Weil:

> Wie geht eigentlich
>> direkt am Pickit 2  ?¿?
>
> Mein Original(NB) hat da nur eine 100 mil Buchsenleiste...

von Stephan S. (uxdx)


Lesenswert?

Christian M. schrieb:
> Aha, jetzt taucht in Deinem Salami-Thread noch ein Adapter auf.
> Wahrscheinlich ein Jumper nicht gesetzt, sehe ja nicht auf die andere
> Seite.

Nein, da fehlt in der Adaterplatine tatsächlich eine Verbindung von 39 
zu PGC.  Da hat einer einen anderen Adapter kopiert und die kleine 
Verbindung vergessen

von Motopick (motopick)


Lesenswert?

> Da hat einer einen anderen Adapter kopiert

Passiert wohl oefter.
Ich habe hier einen SCA-Adapter, bei dem die 12 V Schiene
im Original nicht angeschlossen war.
Auf solchen Murks muss Mann erstmal kommen. :)

Aber trotzdem, haette man die guten Debuggingmoeglichkeiten des
PICKIT2, auf die ICSP-Pins manuell waehlbare Logikpegel
zu legen, nutzen koennen. Das man die dann direkt an den Pins
kontrolliert versteht sich von selbst.
Dann haette man die fehlende Verbindung rasch bemerkt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.