Hallo Zusammen, ich habe mir gerade das aktuelle MPLB X 2.10 auf einem Windows 8.1 64 Bit System installiert und möchte einen PIC 16F616 programmieren. Da mein letztes PIC Projekt schon einige Jahre zurückliegt und ich normlerweise Atmel programmiere stolpere ich hier direkt über den Verbindungsaufbau... Der PICkit wird mit der Seriennummer sowohl in der IDE als auch in der IPE angezeigt. Die Status LED ist allerdings rot und beim Verbindungsversuch bekomme ich immer die Fehlermeldung Connection failed. Ich würde nun gerne wissen, ob der Fehler in der Verbindung PC -> PICkit oder PICkit -> Target zu suchen ist. Müsste die IDE oder IPE nicht zumindest eine Verbindung zum PICkit aufbauen und dann eine Fehlermeldung erzeugen, falls das Target nicht korrekt angeschlossen ist oder funktioniert das Ganze nur wenn der komplette Verbindungsweg steht? Ist es normal, dass der PICkit im Gerätemanager als HID konformes Gerät angezeigt wird? Vielen Dank im voraus. Gruß, Ernie
Pickit - PC. Veruch mal das Pk3 anzuschließen bevor du X IDE öffnest. Ich hatte das Problem auch mal und bin deshalb bei der IDE ohne X geblieben. Als ich es ca. ein Monat später erneut versucht habe war das Problem weg...
Nein liegt an Windows 8. Ist ein bekanntes Problem. Da der Treiber des Pickit nicht von Microsoft zertifiziert ist... Musst ma bissel googlen... Das Blöde ist die Treiber Zertifizierung lässt sich soweit ich weiß nur abschalten indem man in Windows 8 bootet. Dann da bissel zaubert und neustartet. Dann ist die deaktiviert nach dem neu start. Beim nächsten Start aber wieder an. Also jedesmal starten neustarten... Ging mir zu doll aufn Sack und bin zurück zu Windows 7 bzw. Mach das meiste eh unter Linux mittlerweile..
Hast du 64bit? Max? Ich hatte es damals. Vielleicht ist da noch ein unterschied... Ich hatte jedenfalls das selbe Problem und das, was ich dazu gefunden habe war diese Treiber Zertifizierung ausschalten..
An dem Treiber glaub ich lag's nicht. Mit MPLAB IDE ohne X hat das PK3 seit ich den Win8 PC gekauft habe problemlos funktioniert... Vllt. war es auch nur ein Bedienungsfehler der X IDE.
Max H. schrieb: > An dem Treiber glaub ich lag's nicht. Mit MPLAB IDE ohne X hat das PK3 > seit ich den Win8 PC gekauft habe problemlos funktioniert... Vllt. war > es auch nur ein Bedienungsfehler der X IDE. MPLABX verwendet andere Treiber als MPLAB. Ich kann mich daran erinnern, dass es einen Driver Switcher gibts bzw gab, mit dem man die Treiber wechselseitig aktivieren kann. Vielleicht kommen sich bei Dir die Treiber in die Quere. Putze mal das gesamte MPLAB sauber vom System inkl aller Treiber. Eventuell hilft es, MPLAB und MPLABX in getrennten VMs unter VirtualBox zu betreiben. fchk
Vielen Dank schonmal für die Hinweise. Ich hatte bisher nur MPLAB X auf dem System installiert. Zuerst die Version 2.05, wo ich dann von Problemen mit dem PICkit gelesen habe und dann die Version 2.10, bei welcher ich auch nach dem Start einmalig eine Verbindung hatte und dann nie wieder. Kann ich den Treiber denn manuell installieren, wenn ich die Treibersignaturerkennung deaktiviert habe und falls ja wo finde ich den Treiber? Wie wird das PICkit denn bei Euch im Geräte Manager angezeigt?
:
Bearbeitet durch User
Gestern habe ich mir noch den PICkit 2 bestellt. Der ist gerade angekommen -> angeschlossen -> programmiert -> fertig. Ist ja auch 'ne Lösung! Die PICkit 3 landen dann erstmal im Schrank. Vielen Dank für die Unterstützung!
Ich hatte heute auch wieder mal das Problem :-( Meine Lösung: PICkit 3 Stand Alone Programmer App v1.0 http://www.microchip.com/pagehandler/en-us/devtools/dev-tools-parts.html Man kann im Programm die HEX importieren, und sie wird jedes man automatische geflasht, wenn sie sich ändert...
:
Bearbeitet durch User
Sascha T. schrieb: > Kann ich den Treiber denn manuell installieren, wenn ich die > Treibersignaturerkennung deaktiviert habe und falls ja wo finde ich den > Treiber? > Wie wird das PICkit denn bei Euch im Geräte Manager angezeigt? PICKIT2 und PICKIT3 benötigen keinen eigenen Treiber, das ist der Standardtreiber hidusb.sys. Dein Problem kommt also von woanders her. Auch der "Driver switcher" hilft da nicht weiter da dieser für den ICD3 ist.
Ich melde mich, weil ich das Problem heute gestern habe: Ich habe die Treiber Signatur deaktiviert [1] und MPLAB X IDE 2.10 neu Installiert. Seit dem habe ich keine Probleme mehr, auch nicht nach einem Neustart. [1] http://code-bude.net/2012/11/17/windows-8-unsignierte-treiber-installieren/
Hallo, hatte heute das selbe Problem, und bin über die Google Suche hierher gekommen. Und auch wenn der Forumeintrag schon etwas älter ist will ich meine Erfahrung mitteilen, vielleicht hilft es jemandem. Habe Win 8.1 Pro 64bit; Mplab x 2.35; PcKit3 bisher lief eigentlich alles bestens, nur seit gestern hatte ich das Problem das nach dem Compilieren das Programmieren nicht mehr ging. Fehler: connection failed Das Problem, wieso auch immer, war ein neues Programm das ich installiert hatte. BlueStacks (virtuelles Android System). Wenn dies aktiv war konnte ich nicht programmieren, nur beenden half auch nix. Windows neu gestartet und Finger von BlueStacks gelassen und ich konnte wieder programmieren. Also wird es ggf. bei anderen Usern ein ähnliches Problem sein? Hatte dabei aber auch einen Eintrag im Internet gefunden, dass es helfen soll Mplab X als Administrator auszuführen. Hierbei hat sich bei mir jedoch ein anderes Problem aufgetan. Mein Projekt liegt auf einem Netzlaufwerk. Über den normalen Windows Explorer kann ich auch drauf zugreifen. MPlab X hat mir die Laufwerke jedoch nicht angezeigt. Hatte diese Problem schon jemand??
Das Problem liegt meiner Erfahrung nach an einer für neuere Win Versionen nicht kompatiblen Firmware des PK3 (die älter als die Win Version ist). Da wurde wohl unter Win etwas am Zugriff auf HID geändert... Nach Update auf neuere Firmware (zB. an einem Rechner mit Linux oder an einem älteren Win mit aktuellem MPLABX) läuft es bei mir immer. Andreas F. schrieb: > Mein > Projekt liegt auf einem Netzlaufwerk. Über den normalen Windows Explorer > kann ich auch drauf zugreifen. MPlab X hat mir die Laufwerke jedoch > nicht angezeigt. Sind die Laufwerke gemappt? (haben einen Laufwerksbuchstaben zugeordnet) Sind die das auch noch unter dem Admin Account? Wenn nicht, dann lass das besser sein! PS: du meinst sicher MPLABX 3.15, oder?
:
Bearbeitet durch User
Volker S. schrieb: > Sind die Laufwerke gemappt? (haben einen Laufwerksbuchstaben zugeordnet) > Sind die das auch noch unter dem Admin Account? > Wenn nicht, dann lass das besser sein! > > PS: du meinst sicher MPLABX 3.15, oder? öhm .. ne habe MPLABX 2.35 intalliert, frag mich jetzt aber bitte nicht warum die alte Version ... werde bei Gelegenheit mal die neue installieren. Ja Laufwerke sind gemappt (also haben einen Laufwerksbuchstaben) bin auch mit meinem normalen Benutzerkonto angemeldet, welches eigentlich sowieso Admin Rechte hat. Aber man kann ja auch dem Shortcut mit der rechten Maustaste "ausführen als Administrator" wählen. Dann startet MPLABX ohne geladene Projekte und zeigt mir eben die Netzlaufwerke nicht an. Wenn ich dann MPLABX wieder normal starte sind meine Projekte vorhanden. Ohne Win neustart oder Benutzwechsel. Aber an sich egal ... läuft ja ohne BlueStacks normal ... Dachte vielleicht hat jemand eine Idee, dann hätte ich mal probiert ob ich MPLABX als Admin parallel zu BlueStacks laufen lassen kann. Wenn nicht dann eben nicht ;-)
Hallo MPLAB X und PicKit3 User, ich habe das gleiche Problem! Ich nutze ansonsten den PICkit 3 v3.10 Programmer. Der einwandfrei mit meinem Projekt funktioniert. Ich nutze Windows 7 x64 Ultimate. Heute habe ich mir die MPLAB X IDE V3.20 (vorher V3.15) und das dazugehörige IPE V3.20 installiert. Beim Verbindungsversuch mit IPE konnte dieses keine Verbindung aufbauen. Auch die Möglichkeit mit dem PK3 Programmer die Firmware für die MPLAB Funktionalität aufzuspielen habe ich probiert - ohne Erfolg. Also trotz des MPLAB OSses für das PK3 ist es mir nicht gelungen eine Verbindung über IPE zum PK3 aufzubauen. Als ich dann im Internet div. Foren durchstöbert hatte, habe ich versucht direkt in MPLAB X eine Programmierung bzw. erst einmal das Auslesen des PICs durchzuführen. Hierbei hat MPLAB X dann gemeint er würde eine neue Firmwareversion (V1.40.13 für PIC18F) aufspielen (diese Version habe ich übrigens nirgendwo zum direkten Download auf der Microchip Homepage gefunden, um nicht immer MPLAB X bemühen zu müssen!!). Und siehe da, das PK3 wurde plötzlich von MPLAB X sowie auch von IPE erkannt. Tja, die Freude währte nur kurz, da es mir nicht gelang (und nicht gelingt) weder den PIC zu löschen noch ein HEX-File auf mein PIC zu transferieren. Er versucht es zwar erkennt aber den PIC-Type nicht. Eine Ursache könnte sein, dass man unter IPE den High Voltage Modus an MCLR nicht aktivieren kann (zumindest nicht bei mir - siehe Bild). Keine Ahnung warum - dies ging aber schon von Anfang an nicht (in jeder IPE Version die ich getestet habe). Vielleicht hat jemand von Euch eine Idee ... . Gruß Jürgen
Waren IPE und IDE gleichzeitig gestartet? Programmierst du immer wieder Controller mit einem schon fertigen hex-File, oder wofür brauchst du IPE?
Halte mal die reset taste beim anstecken gedrückt, damit das pickit im bootloader mode startet - dann sollte mplab x wieder damit reden können
Jürgen S. schrieb: > Eine > Ursache könnte sein, dass man unter IPE den High Voltage Modus an MCLR > nicht aktivieren kann (zumindest nicht bei mir - siehe Bild). Keine > Ahnung warum - dies ging aber schon von Anfang an nicht (in jeder IPE > Version die ich getestet habe). Ja das is ne lustige Sache. Das lässt sich alles nur im MPLAB einstellen :( zB: Auch die Stromversorgung über den PicKit.
Teo D. schrieb: > Das lässt sich alles nur im MPLAB einstellen :( > zB: Auch die Stromversorgung über den PicKit. Settings -> Advanced Mode http://microchip.wikidot.com/ipe:advanced-mode-options
Jan L. schrieb: > ..siehe auch > http://www.eevblog.com/2016/01/19/eevblog-841-micr... Sieht irgendwie so aus, als würde die Möglichkeit, dass das PICKIT eine nicht kompatible Firmware haben könnte (die spezielle für PK3 programmer) von der neuen Version der IDE nicht mehr berücksichtigt/detektiert ... Wenn es so wäre, dann wäre das irgendwie schon verständlich. Man kann ja nicht ewig die alten Kamellen mitschleifen.
:
Bearbeitet durch User
Danke für die schnelle Antwort! @Volker SK: IPE und IDE waren gleichzeitig gestartet. Wenn ich IPE alleine betreibe funktionierts aber auch nicht - Du scheinst aber schon recht zu haben mit der Vermutung das man beide nicht parallel laufen lassen kann. Das Programmieren aus der IDE heraus funktioniert mit MPLAB X bei mir überhaupt nicht (und ging auch noch nie mit dem PK3!). Daher auch das PK3 Tool und jetzt versuche ich es eben über IPE. Zudem wird IPE weiterentwickelt und das PK3 Programmertool anscheinend nicht mehr großartig ... . Und ab und an kommt das schon vor, dass ich auch nur HEX-Files flashen will. Advanced Mode -> http://microchip.wikidot.com/ipe:advanced-mode-options <- habe ich mnir angeschaut, konnte aber nichts verwertbares finden. Ich habe ja nichts gegen diese Firmware Update Prozedur. Nur funktionieren sollte es doch, oder nicht? Es ist doch auch so, dass das PK3 doch offiziell von MPLAB X unterstützt wird. Wieso funktioniert es dann nicht? Klar, man kann auch ~200.-€ für ein ICD 3 ausgeben, aber ob das dann wirklich besser läuft wenn es mit dem PK3 schon soviel Probleme gibt? Ich weiß nicht ... . Die Probleme sind doch von Microchip selbst gemacht, dann sollten die diese erstmal aus der Welt schaffen. @silent: Wie geschrieben, die Kommunikation mit dem PK3 über MPLAB X funktioniert ja(nach deiner Prozedur und anschließendem neuen Aufspielen der FW über MPLAB oder auch IPE). Das Programmieren und Auslesen "nur" nicht. Ich nutze übrigens die Spannungsversorung(5V) von meiner Platine und natürlich auch HV an MCLR! @Teo Derix: Das stimmt so nicht. Unter IPE und auch dem PK3 Tool hat man sehr wohl die Möglichkeit einzustellen welche Spannung man nutzen möchte(sofern man die Schaltung über das PK3 versorgen will), auch kann man wählen ob diese vom Programmer oder dem Board bereitgestellt wird. In IPE muss man dazu allerdings unter "Settings" den "Advanced Modus" aktivieren. @ Jan L.: Ich habe mir das Video angeschaut. Die ganze Prozedur habe ich auch schon hinter mir. Am Ende hat er das Problem welches ich jetzt noch habe: "Target Device ID (0x0)does not match ...". Er schreibt, dass das Problem an der Spannungsversorgung gelegen hat und das es jetzt einwandfrei funktioniert - ein Beweis dafür gibt er allerdings nicht! Denn wenn man den 0x0 Hinweis bestätigt liest er auch ein (beim Beispiel "Read"), allerdings liest er keine Daten ein. Programmieren funktioniert nicht. Beim Löschen sagt er auch, dass alles ok ist. Ein Blanktest zeigt jedoch, dass dem nicht so ist. Gruß Jürgen
@Jürgen Sch. Der Link zum Wiki war für TeoDerix, weil der, wie du ja auch geschrieben hast, meinte dass man die Spannung nicht wählen kann... Mit dem Programmieren aus MPLAB-X hatte ich noch nie Probleme. Ich habe hier an der Hochschule so ca. 60-70 PICKIT3 und eigentlich funktionieren die ganz gut. Meistens werden sie natürlich aus MPLAB-X als Debugger benutzt und nur selten als Programmer (obwohl die Studierenden ...). IPE benutze ich eher selten. Soweit aber keine großen Probleme. Das "alte" stand-alone Programmiertool habe ich ehrlich gesagt noch nie benutzt. (nur das für das PK2) Wenn bei einem PK3 wirklich mal gar nichts mehr geht dann lese ich mit IPE ein funktionsfähiges PK3 aus und schreibe das "spinnende" neu. Das hat bisher immer (also ~ zwei mal) geholfen. Möglicherweise ist ja etwas schief gelaufen weil du ein PK3 mit der Firmware für die Programmer App an MPLAB-X betreiben wolltest. (In den Release Notes steht ja was davon, dass man das zuerst wieder in den richtigen Mode zurückversetzen muss) <edit> Was meinst du eigentlich mit "vorher v3.15"? Hat es damit etwa noch funktioniert?
:
Bearbeitet durch User
Welche Controller programmierst Du denn mit dem PK3? Nutzt Du HV an MCLR oder LVP? Ich programmiere ein 18F4431 über HV. Über das PK3 Programmiertool funktionierts ja auch tadellos. Und das PK3 wird ja auch erkannt (aus MPLAB X und IPE). Aber das Programmieren geht halt nicht (wie programmiert Ihr denn die Chips wenn Ihr das PK3 nur zum Debuggen braucht?). Ich habe ja nur ein PK3 hier somit kann ich Deine Methode nicht anwenden. Aber spinnen tut das Teil ja aus meiner Sicht nicht. Ich bin mir sicher es liegt an der Firmware oder warum geht es im PK3-OS-Modus und im MPLAB Modus nicht? Ich habe doch auch das PK3 über den Taster beim Einstecken wieder in den "normalen" Modus gesetzt. Danach hat IPE und MPLAB X ja auch die zu der MCU passenden FW geflasht. Soweit doch alles gut. Nur funktionieren tuts nicht ... . Flashe ich nun das PK3-OS kann ich auch ganz normal das PK3-Programmiertool nutzen und das funktioniert dann auch. Ich wollte mit "vorher 3.15" nur sagen, dass ich MPLAB X vorher in der Version 3.15 installiert hatte(falls jemand diese Info benötigt). Damit hat es aber, wie ich bereits geschrieben habe, auch nicht funktioniert. Ich kann mir schon gut vorstellen, dass es an der High Voltage Einstellung liegt, obwohl man ja LVP extra aktivieren muss. Ist LVP deaktiviert müsste doch HV an MCLR Standard sein? Wo kann ich diese HV Einstellung denn in MPLAB X vornehmen (da gibts ja auch nur LVP)? Ich habe da nix gefunden. Ich habe keine Ahnung! Gruß Jürgen
Hallo Wutzefrickel, der Thread bringt mich leider auch nicht weiter! Gruß Jürgen
Jürgen S. schrieb: > Welche Controller programmierst Du denn mit dem PK3? Nutzt Du HV an MCLR > oder LVP? Ich programmiere ein 18F4431 über HV. Über das PK3 > Programmiertool funktionierts ja auch tadellos. Und das PK3 wird ja auch > erkannt (aus MPLAB X und IPE). Aber das Programmieren geht halt nicht > (wie programmiert Ihr denn die Chips wenn Ihr das PK3 nur zum Debuggen > braucht?). Es ist ja nur sinnvoll in den Programmiermodus zu wechseln, wenn das Programm fertig ist. In der Ausbildung aber nicht mal dann, weil ja sofort die nächste Aufgabe ansteht ;-) Bei Semesterprojekten und Abschlussarbeiten wird am Ende natürlich schon "programmiert", aber dann natürlich aus MPLAB heraus und nicht extra ein anderes Tool gestartet. Über den Modus macht sich da dann gar keiner Gedanken. Es wird einfach auf den anderen Knopf gedrückt... Wir verwenden hauptsächlich PIC1825K22 für die Labore, aber auch schon mal 4431 wegen der simultanen Samplingfähigkeit für 2AD Kanäle. Sonst noch 18FxxK80 für CAN, alle 18F mit USB, die 16F145x für USB, 10F322 und noch einige andere. > Ich habe doch auch das PK3 über den Taster beim Einstecken wieder in den > "normalen" Modus gesetzt. Danach hat IPE und MPLAB X ja auch die zu der > MCU passenden FW geflasht. Das habe ich rein aus Interesse auch mal probiert. Dann wurde gar nichts am Bus erkannt :-( > Flashe ich nun das PK3-OS kann ich auch ganz normal das > PK3-Programmiertool nutzen und das funktioniert dann auch. Das mit dem Rückstellen im PK3-Programmiertool wie in den Releasse Notes dazu beschrieben funktioniert dann wohl nicht? > Wo kann ich diese HV Einstellung denn in MPLAB X vornehmen (da gibts ja > auch nur LVP)? Ich habe da nix gefunden. So wie es aussieht (am Oszi) wird da immer HV Modus benutzt.
Na, anscheinend habe ich das PK3 Tool doch schon mal verwendet. Es ist zumindest auf meinem Rechner ;-) Neugierig wie ich bin, musste ich das jetzt gleich mal ausprobieren. Also gestartet, die "Spezialsoftware" runter geladen und irgend einen PIC gelesen. Dann nicht zurückgestellt und mit MPLAB-X probiert. Sah zuerst ganz gut aus, aber das Programmieren war nicht möglich. Egal was ich für eine Spannung eingestellt habe, es kam immer die Meldung: ***************************************************** The target circuit may require more power than the debug tool can provide. An external power supply might be necessary. Connection Failed. ***************************************************** Das gleiche Problem hatte ich letztens bei einem PK3 von einem Studenten, welches ich dann in meiner Verzweiflung einfach mit einem anderen PK neu programmiert habe. Jetzt weiß ich wie er das abgeschossen haben könnte ;-) Das zurückstellen in den MPLAB-Mode hat jetzt bei mir aber auch ohne Probleme mit dem PK3 Tool funktioniert!
:
Bearbeitet durch User
Also nutzt Ihr auch die HV und nicht die LVP Programmiermethode? Oder beides? Volker S. schrieb: > Neugierig wie ich bin, musste ich das jetzt gleich mal ausprobieren. > Also gestartet, die "Spezialsoftware" runter geladen und irgend einen > PIC gelesen. Ihr testet das also gar nicht alles am lebenden PIC aus? Wie öde ^^ ... Du hast mich jetzt auch neugierig gemacht - und so habe ich das dann auch nochmal getestet. Das Rücksetzen über den Taster am PK3 funktioniert. Allerdings musst Du danach die USB-Verbindung zum PK3 nochmal trennen und neu anstecken! Erst dann reagiert das PK3 wieder (zumindest bei mir) und ist dann im MPLAB Mode. Das ganze funktioniert - sofern das PK3 im Programmer-Mode ist(also das OS(V2.00.05)=PK3OSV020005.hex aufgespielt ist) auch über das PK3-Programmiertool(V3.10). Hier ist kein Ab- und Anstecken des USB-Kabels nötig. Man kann direkt in MPLAB oder IPE damit weiterarbeiten. Volker S. schrieb: > Das mit dem Rückstellen im PK3-Programmiertool wie in den Release Notes > dazu beschrieben funktioniert dann wohl nicht? Doch - wie oben beschrieben. Hast Du ja auch später festgestellt. In IPE lädt er dann auch direkt im MBPLAB Mode die benötigte Firmware auf das PK3. Für PIC18F ist das bei mir die Version 01.40.13. Danach bekomme ich den gleichen Fehler beim Programmieren angezeigt wie Du.
1 | PICkit 3 is trying to supply 5,000000 volts from the USB port, but |
2 | the target VDD is measured to be 4,500000 volts. This could be due to the |
3 | USB port power capabilities or the target circuitry affecting the measured VDD. |
4 | |
5 | The target circuit may require more power than the debug tool can provide. |
6 | An external power supply might be necessary. Connection Failed. |
Auch MPLAB X zeigt mir den gleichen Fehler! In beiden Fällen versorge ich meine Platine vom PK3(liegt also nicht an meiner Platine respektive dessen Spannungsversorgung). Mit dem PK3 Programmer funktionierts einwandfrei!!! Volker S. schrieb: > Das gleiche Problem hatte ich letztens bei einem PK3 von einem > Studenten, welches ich dann in meiner Verzweiflung einfach mit einem > anderen PK neu programmiert habe. Jetzt weiß ich wie er das abgeschossen > haben könnte ;-) Wie machst Du das denn? Und vor allem, welche HEX-Datei nutzt Du denn dafür? Ich habe zwar kein anderes PK3 hier, ein anderen ICSP-Programmer aber schon ;-)
Jürgen S. schrieb: > Also nutzt Ihr auch die HV und nicht die LVP Programmiermethode? Oder > beides? Eigentlich nur HV > Ihr testet das also gar nicht alles am lebenden PIC aus? Wie öde ^^ ... Wie kommst du jetzt darauf? Natürlich nur am lebenden, aber eben im Debug-Mode -> http://www.hs-ulm.de/nocache/wir/Personal/PersonalSaSchr/vschilli/Mikrocontroller/ > Das ganze funktioniert - > sofern das PK3 im Programmer-Mode ist > (also das OS(V2.00.05)=PK3OSV020005.hex aufgespielt ist) ... Ja ist mir dann auch klar geworden, dass ich ja gar nicht das PK§-OS habe. > [pre]PICkit 3 is trying to supply 5,000000 volts from the USB port, but > the target VDD is measured to be 4,500000 volts. This could be due to > the USB port power capabilities or the target circuitry affecting the > measured VDD... Das scheint normal zu sein. Das PICKIT packt es dann eben nicht ganz. Einfach eine geringere Spannung (4.5V) einstellen. > Mit dem PK3 Programmer funktionierts einwandfrei!!! Der toleriert vermutlich einfach nur mehr Abweichung oder fragt die Spannung gar nicht erst ab > Wie machst Du das denn? Und vor allem, welche HEX-Datei nutzt Du denn > dafür? Ich habe zwar kein anderes PK3 hier, ein anderen ICSP-Programmer > aber schon ;-) Wenn man es genau nimmt, dann brauche ich natürlich zwei funktionsfähige PK3 (also insgesamt 3). Mit dem einen funktionsfähigen lese ich das andere funktionsfähige aus. (Flachbandkabeladapter von den 2,54mm auf die 1,27mm Programmier-schnittstelle im PK3. Habe ich eh rum liegen. Bin ja nicht so ein Looser wie Dave vom eevblog ;-) Dann habe ich eine HEX-Datei. Die übertrage ich dann auf das defekte. (In Zukunft werde ich natürlich erst mal mit dem PK3 Programmer Tool...)
:
Bearbeitet durch User
Volker S. schrieb: > Wie kommst du jetzt darauf? Natürlich nur am lebenden, aber eben im > Debug-Mode -> > http://www.hs-ulm.de/nocache/wir/Personal/PersonalSaSchr/vschilli/Mikrocontroller/ Ok! Aber dafür muss man das Hexfile doch auch in den PIC flashen, der? (ich nutze den Debug Modus nicht). Volker S. schrieb: >> Das ganze funktioniert - > sofern das PK3 im Programmer-Mode ist >> (also das OS(V2.00.05)=PK3OSV020005.hex aufgespielt ist) ... > Ja ist mir dann auch klar geworden, dass ich ja gar nicht das PK3-OS > habe. Doch! Die HEX Files liegen im PICkit 3 Ordner (unter Microchip\PICkit 3 v3). Volker S. schrieb: >> [pre]PICkit 3 is trying to supply 5,000000 volts from the USB port, but >> the target VDD is measured to be 4,500000 volts. This could be due to >> the USB port power capabilities or the target circuitry affecting the >> measured VDD... > Das scheint normal zu sein. Das PICKIT packt es dann eben nicht ganz. > Einfach eine geringere Spannung (4.5V) einstellen. Das ist nicht normal. Ich habe mal nachgemessen - mein PK3 gibt bei 5V nur ~4,8V aus(ohne Chip gemessen). Die Programmierspannung schafft es nur auf 12V(mit Chip gemessen). Was bis jetzt aber immer gereicht hat - zumindest fürs Programmertool. Wo soll denn der Sinn sein die Spannung auf 4,5V zu reduzieren(dann sind es real nur 4,4V)? Dennoch hab ichs getestet - klappt aber nicht. Volker S. schrieb: >> Mit dem PK3 Programmer funktionierts einwandfrei!!! > Der toleriert vermutlich einfach nur mehr Abweichung oder fragt die > Spannung gar nicht erst ab. Ja, vermutlich hast Du damit Recht. Abfragen tut er die Spannung wohl, wertet sie aber nicht aus wenn sie zu gering ist. Es wäre gut zu wissen ob und wie man das PK3 kalibrieren kann(ohne Hardwareseitig eingreifen zu müssen). Was aber das eigentliche Problem sicher nicht behebt, da ich den PIC ja normalerweise von meiner Schaltung raus versorge. Und hier schreibt MPLAB X und IPE nur das sie den Chip nicht detektieren können. Ich habe das auch gerade nochmal mit einem PICkit 2 Demoboard getestet. Hier meckert MPLAB X / IPE auch wegen zu geringer Spannung. Ich werde wohl doch mal die HW ändern und melde mich dann nochmal.
Jürgen S. schrieb: > Volker S. schrieb: >> Wie kommst du jetzt darauf? Natürlich nur am lebenden, aber eben im >> Debug-Mode -> >> > http://www.hs-ulm.de/nocache/wir/Personal/PersonalSaSchr/vschilli/Mikrocontroller/ > Ok! Aber dafür muss man das Hexfile doch auch in den PIC flashen, der? > (ich nutze den Debug Modus nicht). Verstehe ich nicht ;-) Ok, funktioniert ja bisher nicht bei dir. Natürlich wird im Debug Mode auch der PIC programmiert. Es kommt sogar noch ein Programmteil hinzu der für die Kommunikation mit der IDE zum Debuggen zuständig ist. Im Debug Modus kann man dne PIC dann aber ganz einfach anhalten, alle Register IM PIC anschauen ... Das Programm läuft dabei immer noch RealTime bis zum Anhalten. Das Anhalten kann man einfach so auf Tastendruck (Pause), beim Erreichen einer bestimmten Zeile im Code oder beim Lesen/Schreiben eines bestimmten Registers zum (xten Male) konfigurieren. Das musst du unbedingt lernen. Ist ungefähr so, wie wenn ein Blinder plötzlich sehen kann ;-)
(Mist, wieso werde ich heute eigentlich ständig abgemeldet?) Jürgen S. schrieb: > Wo soll denn der Sinn sein die Spannung > auf 4,5V zu reduzieren(dann sind es real nur 4,4V)? Dennoch hab ichs > getestet - klappt aber nicht. Also bei dieser Fehlermeldung hilft das bei uns immer. Was passiert bei externer Versorgung des ZielPICs (nicht über PK3)? Jürgen S. schrieb: > Die Programmierspannung schafft es > nur auf 12V(mit Chip gemessen). Was bis jetzt aber immer gereicht hat - > zumindest fürs Programmertool Ich sehe da oft nur 9V und es funktioniert trotzdem (MPLABX PICKIT3) Jürgen S. schrieb: > Volker S. schrieb: >>> Das ganze funktioniert - > sofern das PK3 im Programmer-Mode ist >>> (also das OS(V2.00.05)=PK3OSV020005.hex aufgespielt ist) ... >> Ja ist mir dann auch klar geworden, dass ich ja gar nicht das PK3-OS >> habe. > Doch! Die HEX Files liegen im PICkit 3 Ordner (unter Microchip\PICkit 3 > v3). Schon klar, ich meinte damit eigentlich, dass ich die Taste gedrückt hatte, ohne vorher das PK3 mit dem Programmer Tool verhunzt zu haben.
:
Bearbeitet durch User
Jürgen S. schrieb: > Wo soll denn der Sinn sein die Spannung > auf 4,5V zu reduzieren(dann sind es real nur 4,4V)? Dennoch hab ichs > getestet - klappt aber nicht. ES mag VIELLEICHT in deinem Fall nicht zutreffen, aber wenn man deine Frage ganz allgemein beantworten will ist es im Grunde ganz einfach: Gibt zwei mögliche Gründe: 1. Es ist ja so, das die 5V am USB Port nicht genau 5V sind. Tatsächlich darf nach Norm die SPannung direkt an der PC-Buchse bis auf 4,75V sinken. (Und wenn dann noch Alterserscheinungen dazukommen kann es noch weiter runtergehen.) DAzu kommen noch die Verluste auf dem Kabel. Somit kann die Spannung zu weit absinken als das der PK noch stabile 5V bereitstellen kann. Eine geringere Spannung funktioniert aber. Ich habe z.b. einen PC bei dem das mit der 5V Programmierung und Versorgung durch PK3 nie klapt, nicht einmal wenn nur der PIC alleine angeschlossen ist. Daher programmiere ich an diesem PC immer mit 3,75V (bei 5V Typen natürlich nur). DAs funktioniert dann bestens. Selbe Schaltung, selbes PK3 an einem anderen PC funktioniert auch mit Einstellung 5V Tadellos! 2. Wenn man mit dem PK3 die Schaltung versorgt, so wird ja nicht nur der PIC alleine, sondern meist auch der REst der Schaltung bestromt. Wenn die Schaltung dabei eine gewisse Stromaufnahme überschreitet sinkt die Spannung einfach ab. Der PK3 kann ja nicht beliebig viel Strom zur Verfügung stellen. Mit einer geringeren Sollspannung funktioniert es aber oftmals dann doch! Gruß Carsten
Volker S. schrieb: > Also bei dieser Fehlermeldung hilft das bei uns immer. > Was passiert bei externer Versorgung des ZielPICs (nicht über PK3)? Hatte ich bereits geschrieben:
1 | Target Device ID (0x0) does not match expected Device ID (0x1200). |
> Schon klar, ich meinte damit eigentlich, dass ich die Taste gedrückt > hatte, ohne vorher das PK3 mit dem Programmer Tool verhunzt zu haben. Was heisst verhunzt? Es gibt ja nunmal die Möglichkeit - Gott sei Dank! Sonst hätte ich das PK3 schon längst verschrottet ... . > Ich sehe da oft nur 9V und es funktioniert trotzdem (MPLABX PICKIT3) Gut, dann ist in dem Bereich ja alles bestens ;-) vloki schrieb: > Natürlich wird im Debug Mode auch der PIC programmiert. > Es kommt sogar noch ein Programmteil hinzu der für die Kommunikation mit > der IDE zum Debuggen zuständig ist. > Im Debug Modus kann man dne PIC dann aber ganz einfach anhalten, alle > Register IM PIC anschauen ... > Das Programm läuft dabei immer noch RealTime bis zum Anhalten. Das > Anhalten kann man einfach so auf Tastendruck (Pause), beim Erreichen > einer bestimmten Zeile im Code oder beim Lesen/Schreiben eines > bestimmten Registers zum (xten Male) konfigurieren. > Das musst du unbedingt lernen. Ist ungefähr so, wie wenn ein Blinder > plötzlich sehen kann ;-) Weiß ich doch alles! Ist ja nicht mein erster PIC. Ich habe es halt noch nie wirklich gebraucht, da ich bis jetzt alle Fehler so ausbügeln konnte. Werde mich natürlich damit beschäftigen wenn ich es brauche ^^. @Carsten Sch.: Danke für die Erklärung. Trifft aber bei mir nicht zu, a) denn ich bin in der Lage die USB Spannung zu messen. Die in meinem Fall ziemlich genau 5V beträgt. b) da auch die USB Spannung vom PK3 überwacht wird. Somit müsste eigentlich IPE/MPLAB X Dir hier auch ein Hinweis geben, dass die Spannung vom USB Port zu gering ist. c) MPLAB X und IPE durchaus Recht haben mit der Behauptung, dass es nur 4,75V sind. Stelle ich die Spannung geringer ein wird die Tolleranz zum Sollwert zwar geringer, aber richtig ist das nicht. Über die ganze Diskussion über den USB-Port ist mir aufgefallen, dass ich das PK3 an einem USB3-Hub betreibe. Also schnell in ein USB2 Port gesteckt und .... gleicher Fehler grrr. Ich habe jetzt einfach D1 vom PK3 gebrückt. Nun stimmen auch meine Werte am Ausgang und die Fehlermeldung von MBLAB X und IPE kommt nicht mehr. Womit ich wieder bei der Ausgangsproblematik bin:
1 | Target Device ID (0x0) does not match expected Device ID (0x1200). |
@Volker S.: Könntest Du mir denn mal Die Hex-Datei eines funktionierenden PK3 im MPLAB Modus zumailen? Dann könnte ich es einfach mal testen und auch mal vergleichen ob es jetzt ein Firmwarefehler ist oder ob es woanders dran liegt.
Hallo @all, ich habe mich der Sache nun nochmal angenommen. Da es mit den 2 mir vorhandenen ICSP-Programmern nicht möglich war den PIC24 des PK3 auszulesen bzw. zu beschreiben (die unterstützen nur PIC16/18) habe ich mir ein neues (originales) PK3 besorgt. Dieses funktionierte auf Anhieb auch ohne Probleme direkt mit IPE/MPLAB X zusammen. Nach dem Basteln eines 1,27mm auf 2,54mm ICSP-Adapters konnte ich auch das alte PK3 auslesen bzw. auch beschreiben. Dies hat allerdings nichts gebracht. Mit dem alten -fehlerhaften- PK3 war es mir leider auch nicht möglich über das Programmiertool das neue PK3 auszulesen! Also habe ich mir noch ein neues PK3 gekauft und damit versucht das andere PK3 auszulesen. Dies gelang ohne Probleme. Ich gehe also davon aus, dass mein fehlerhaftes PK3 einfach defekt ist :-( Natürlich habe ich auch darüber nachgedacht dieses zu reparieren. Ich habe auch div. Versuche unternommen das PK3 wieder zur "richtigen" Arbeit zu bewegen(PTCs gebrückt, Versorgungsspannung kontrolliert usw.). Gedanklich bin ich zuweilen schon ein Schritt weitergegangen um evtl. den vorhandenen Flash-Chip und die Levelkonverter zu erneuern. Bin dann aber wieder davon abgekommen, da die Kosten für die Teile und der Aufwand den Kaufpreis von ca. 55.-€ brutto bei weitem übersteigt! Ich habe es bisher noch nicht versucht das PK3 in den Programmiermodus zu versetzen und wieder zurück in den MPLAB Modus zu bringen. Derzeit ist diese Prozedur "eigentlich" auch nicht nötig, da das IPE-Tool soweit einwandfrei funktioniert. Sollte sich hier ein Problem ergeben werde ich dies hier posten. Bzgl. der Spannungsversorgung des PICkits habe ich mich nochmal schlau gemacht. Das PK3 kann etwas mehr als 100mA vom USB Bus ziehen, stellt aber nur ca. 30mA für das Ziel zur Verfügung(PK3 Application User's Guide). Wer das PK3 zum Programmieren in der Schaltung ohne externe Spannungsversorgung nutzen möchte sollte also seine Schaltung überarbeiten. Danke an alle Beteiligten und besonders an Volker S.! Gruß Jürgen
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.