PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wer kennt PIC Microbot "ICSP Programming Socket" genauer ???



oderlachs
19.02.2019, 16:18
Hallo Freunde !
Da mein PIC-Board nur 40 Pinner "verarbeiten" kann, habe ich mir für andere Typen einen ProgrammierSockel besorgt, aber ich komme einfach nicht damit zurecht.
Das Manual (hier einzusehen (https://www.robotsinsearch.com/sites/default/files/literature/ICSP%20Programming%20Socket%20/mr004-001_datasheet.pdf)) ist nicht das "Gelbe vom Ei". Mit meinen PIC-Kit 3 kann ich da egal welchen Chip ich nehm, nicht flashen.
Zu dem Jumper JP3 finde ich gar keine richtige Erklärung, auch muss ja irgendwie Betriebsspannung an das Teil ??

Ich weiss , man kann sich das leicht selber basteln , aber mit meinen Augen und Fingergelenken ist es nicht mehr weit her, so das ich gern auf industriell Gefertigtes zugreife.

Kann mir bitte wer ein wenig weiterhelfen


Gerhard

Nachtrag das bekomme ich als Meldung:



Connecting to MPLAB PICkit 3...

Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.50.04
Firmware type..............Midrange

Target device was not found (could not detect target voltage VDD).
You must connect to a target device to use PICkit 3.

Siro
19.02.2019, 18:24
Ich habe auch den PicKit3 und ich programmiere damit meine 8 Beinigen PICs

34017

34018

Entscheidend ist bei mir, der 10K Widerstand zwischen VDD und MCLR
also zwischen Pin 1und 2 auf meiner rückseitigen Ansicht.

vielleicht hilft es Dir weiter.

In der MBLABX-IDE muss Du noch die Versorgungsspannung einstellen.
"Power Target Circuit from PicKit3"
Da ich meine Chips in diesem Schnellspannsockel programmiere,
34019

Den Pin PGM/LVPP benötige ich übrigens nicht.

So muss ich meine PICs verkabeln zum Programmieren:

34020

Siro

Klebwax
19.02.2019, 18:58
ch weiss , man kann sich das leicht selber basteln , aber mit meinen Augen und Fingergelenken ist es nicht mehr weit her, so das ich gern auf industriell Gefertigtes zugreife.

Kann ich verstehen. Aber, wozu ist dieses Teil gut? Den µC aus der Zielhardware hinauspopeln.im Nullkraftsockel programmieren, und dann wieder in die Zielhardware stecken? Dann sehen, daß das Programm (natürlich) wieder nicht funktioniert und zurück auf Los.

Ich nehme ICSP wörtlich: In Circuit Serial Programming. Wenn ich eine PIC Hardware baue, und da ist es egal ob auf dem Steckbrett, einer Lochrasterplatte oder (bei mir meist) einer Platine, sehe ich 5 Anschlüsse für den PICKit vor. Von den 6 Leitungen seines Steckers werden nur 5 wirklich gebraucht. Die Leitungen sind GND, Vcc, MCLR#, PGC und PGD. Zwischen MCLR# und Vcc kommt noch ein 10k Widerstand. Und das bleibt fest zusammen, bis alles fertig ist. Ich verliere dabei zwar 2 bzw 3 Portpins, das nehme ich aber in Kauf. Auf selbstgemachen Platinen mache ich einen passenden Stecker an den Rand. Bei vielen Evalboards, besonders bei denen von Microchip, ist der mit drauf.

Ich kann also gut ohne eine Programmierhardware leben. Dafür kann ich mein Programm im Debugger laufen lassen. Der PICKit ist ja immer angeschlossen. Kleine Programmänderung, neu Compilieren, weitermachen. Und das ohne die Hardware anfassen zu müssen.

Deine Fehlermeldung sagt, daß der PICKit keine Versorgung sieht. Da dein Adapter keine eigene Versorgung hat, muß der PICKit sie liefern. Das kann man in MPLABX und ich denke auch in IPE einstellen.

MfG Klebwax

oderlachs
19.02.2019, 19:01
Danke Siro !!!
Werde ich morgen bei Tageslicht probieren....
Ich habe ja noch aus uralt Zeiten PIC progger mit ser. Eingang..nie zum Einsatz gekommen weil ich dann ganz zum AVR Chip überging. Nun bin ich ja auf den PIC etwas umgestiegen, da muss ich erst die nötigsten Hilfsmittel zusammen haben.
Das schon mal gekaufte TS-8900 K150 ist ja auch sowas, wie weit ab vom Standart ist und darum nutzlos in der Kiste liegt...
Aber mit dem PIC-Kit3 Progger hat man schon was anständiges in der Hand denke ich , daran möcht ich mich auch schon halten.

Gruss
Gerhard

Edit: Nach Anschalten von 10K
Connecting to MPLAB PICkit 3...

Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.50.04
Firmware type..............Midrange

PICkit 3 is trying to supply 5,000000 volts from the USB port, but the target VDD is measured to be 4,750000 volts. This could be due to the USB port power capabilities or the target circuitry affecting the measured VDD.

The target circuit may require more power than the debug tool can provide. An external power supply might be necessary.
Connection Failed.

Siro
20.02.2019, 14:18
Diese Meldung hatte ich weil ich an einem USB 8 fach Hub arbeite und vergessen hatte das zugehörige Netzteil einzuschalten.
Der USB Port kann evtl. nicht den nötigen Strom liefern.

Du kannst die Programmierspannung auch etwas runtersetzen auf 4,75 Volt oder 4,5V in den PicKit3 Optionen
und es nochmal versuchen.

Ansonsten einen anderen USB Port probieren.

Wenn alle Stricke reissen, (gibts keinen Sinn sich aufzuhängen:))
must den PIC selbst mit 5Volt versorgen und in den Optionen das Kreuz rausnehmen bei "Power Traget circuit from PicKit3

Mit welchen PIC bist Du denn momentan an werkeln ?

Siro

oderlachs
20.02.2019, 15:55
Danke Siro !

Nachdem mir Google die Fehlermeldung übersetzt hat, bin nicht so englishfest, eigentlich gar nicht, habe ich das auch gedacht, so zu verfahren. Hatte aber mal vorher einen 18pinner 16F627A auf ein Steckbrett getestet, selber "Fehler".
Dann muss ich bestimmt die Vdd Ltg weg lassen , wenn ich separat mit 5 oder 3,3V versorge?
Ooder genügt die Option schon den Haken nicht zu setzen bei "Power Target Circuit from PicKit3" ?
Ich möchte keinen Rauchzeichengeber produzieren...also 5V ran und siehe da:



Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.50.04
Firmware type..............Midrange

Target voltage detected
Target device PIC16F627A found.
Device ID Revision = 8


Gruss Gerhard

Siro
20.02.2019, 17:01
Das sieht gut aus,
dann scheint es ja zu funktionieren. Gratulation

Ich habe grad mal die Spannung geändert in den PicKit3 Optionen.
Das interessiert den überhaupt nicht. Habe mit dem Ossi mir
den Spannungsverlauf auf MCLR und VDD angesehen.
Ist bei mir immer 5 Volt, egal was ich bei Power Voltage Level einstelle.
Wozu soll das denn gut sein ?

Siro

oderlachs
20.02.2019, 17:18
Ja nun werde ich mal das ZIFF Sockel-Bord(lein) ein wenig umstricken. Ich hatte mal eine Ausarbeitung darüber von einen deutschen User, aber beim Umzug ist auch was auf der Strecke geblieben, bzw noch nicht wieder aufgetaucht von der umfangreichen Fachbibliothek/Nottizen/PDF Ausdrucke ....
Möchte den gern benutzen das Gefummel auf dem Steckbrett ist schon nicht mehr so mein Ding , aber immer noch als Notreserve machbar.
Muss mir auch was einfallen wegen der 5V- Stromversorgung. Mein MultiNetzteil bring 8 A am 5 Voltausgang, da gibts schon Rauchzeichen wenn was auf der Leiterbahn liegt.

Ja mit der Spannung weiss ich auch nicht was da so mit gemeint ist, man kann ja fast in 100mV Schritten einstellen... 5V, 3,3V...2,5V würde mir ja noch einleuchten....

Nochmals Dir vielen Dank Siro für die unermüdliche Hilfe !

Gerhard

Achso, ich bin mit dem PIC16F877A und PIC18F452 am werkeln , na ja ein paar andere Chips liegen noch in der Schachtel die probier ich mal durch.
Für die 40Pinner habe ich auch Entwickler und PCB Boards(Olimex). Auf letzter kannst was eigenes noch drauflöten. Leiterplatten selbst kann ich nicht fertigen.
Leider, denn Roh-Leiterplattenmaterial habe ich noch genug zu liegen, ansonsten verwende ich Uniplatten.

Siro
20.02.2019, 18:31
Mit den Augen klappt es bei mir auch leider nicht mehr so gut.
trotzdem versuche ich immer kleiner zu werden,
also nicht ich, sondern die PICs.:)

SO-8 ist noch relativ gut zu handeln. Dafür bekommt man auch recht preiswerte Adaptersockel
Die DFN Bauform ist jedoch eine Katastrophe.

Ich programmiere die Chips oft auch direkt im System wie Klebwax das schon oben beschrieb.
Die Programmierpins haben dann sogar nach der Programmierung eine Funktion.
Unter anderem eine RS232 und/oder auch Kalibrierjumper sind bei mir an ICSP-DAT und ICSP-CLK nutzbar.
Das funktioniert wirklich sehr gut.
Man muss also auf keinen Pin verzichten, obwohl man ICSP (im System) programmiert.

Der PicKit3 leistet wirklich hervorragende Dienste,
den bekommt man ja schon für um die 15 Euro. Bei Farnell aber auch für 43 Euro.

Hier 2 kleine Miniprojekte mit In System Programmierung und dem PicKit3
An der Platinenkante wird eine Stiftleiste im Raster 1mm aufgelötet und dann der 5 polige Stecker drauf gesteckt.
Die kann dann im Endgerät auch wieder abgelötet werden.
Ich hab noch keinen Idee mit welchem Stecker man das besser lösen könnte.
5 Pins die direkt aufgesteckt werden könnten, hab da nichts brauchbares gefunden.

34021

Mit der 18F Serie hab ich sehr viel programmiert.
eltliche Tausend Zeilen Assembler in einem Projekt...

Dann wünsche ich Dir weiterhin gutes Gelingen.

Siro

Klebwax
21.02.2019, 09:34
Ich programmiere die Chips oft auch direkt im System wie Klebwax das schon oben beschrieb.
Die Programmierpins haben dann sogar nach der Programmierung eine Funktion. Unter anderem eine RS232 und/oder auch Kalibrierjumper sind bei mir an ICSP-DAT und ICSP-CLK nutzbar. Das funktioniert wirklich sehr gut.

Wie debuggst du, wenn im Betrieb ICSP-DAT und ICSP-CLK für etwas anderes benutzt werden? Ohne Breakpoints, Singlestep etc will ich eigentlich nichts programmieren. Und wenn ich, um die ICSP Pins frei zu haben einen größeren µC nehmen muß, ist das so. Mit dem 12F1840 hab ich dann halt nur 3 I/Os. Das reicht für einen Servotester, 1 mal analog mit Poti und ein Ausgang. Oder schnell mal eine Pulsform erzeugen, eine PWM mit einstellbarer Frequenz und Dutycycle, oder um WS2812 zu testen. Da bleibt dann der PICKit gleich dran. Wenn ich nicht wirklich löten will, stell ich die Parameter nur im Debugger ein und kneif mir das Poti. Reichen die I/Os nicht, nehm ich den PIC16F1825. Der hat auch nur 14 Pins. Da kann man ein Layout machen, in den beide passen.

Wirds etwas größer, steige ich auf PIC24 um. TQFP44 bekomme ich auch noch glötet. Da gibts für CSP-DAT und ICSP-CLK auch noch mehrere alternative Belegungen und man kann sich etwas passendes aussuchen.

Der 6-Polige Stecker ist zwar sehr einfach zu verwenden, hat mir aber zu viel Platz an der Platinenkante eingenommen. Da drängeln sich oft schon andere Stecker. Ich verwende daher 6 polige Micro Match (http://https://www.te.com/deu-de/products/connectors/pcb-connectors/wire-to-board-connectors/ffc-fpc-ribbon-connectors/intersection/micro-match.html?tab=pgp-story). Der ist nur halb so breit, aber man kann ohne spezielle Werkzeuge Flachkabel anquetschen. Den passenden Anschluß sehe ich auf jeder eigenen Platine vor.

Sollte ich als Bastler mal wirklich was in "Serie" (2 stellige Stückzahl) bauen, würde ich die 6 Pins mit Pogopins (http://https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20190221010823&SearchText=pogo+pin) und einem Adapter kontaktieren.


Leiterplatten selbst kann ich nicht fertigen.

Ich auch nicht. Aber ich kann Layouten. Und für 5€ macht mir ein freundlicher Chinese daraus fünf Leiterplatten, durchkontaktiert mit Lötstoplack und Druck. Und für weitere 6€ steckt sie mir der Brieftrager nach 2-3 Wochen in den Briefkasten. Wenn ich mir vorstelle, ich fädele einen Tag lang einen Prototyp und muß das möglicherweise noch einmal machen, weil ich zwei brauche, mach ich doch gleich ein Layout. Den Schaltplan mach ich sowieso, den brauch ich auch zum fädeln. So hab ich mir Platinen machen lassen, auf denen der µC, Abblock-Cs, Spannungsregler und Programmierstecker drauf sind. Der Rest ist Lochraster. Da kann man schnell mal ein Chinesisches Schrittmotormodul, ein HX711 Modul oder einen anderen Sensor ausprobieren.

MfG Klebwax

oderlachs
21.02.2019, 13:17
Ja ich kenne das Ańgebot vom freundlichen Chinesen ;) . Ich habe da nur mit dem Eagle etwas Probleme, einmal habe ich für ein Modellbahnproj. mal was fertigen lassen....

Da habe ich das wohl spiegelverkehrt abgegeben. Da das mehr oder weniger nur aus normalen Bauelementen bestand konnte ich das noch verwenden....vom Aussehen mal abgesehen.

Siro was Du da auf dem Foto so zeigst, kann ich kaum so erkennen, weniger noch löten ;)

Wenn ich da an meinen ersten Kristall-Detektorempfänger so 1959/60 denke, da konte man fast noch im "Kristall" die elektronen fliegen sehen... ;) Einmal laut husten und weg war die Musik...

Ich programmiere bzw bastel ja nur noch für mich selber...

Gruss Gerhard

Siro
21.02.2019, 13:17
Hallo Klebwax,
den PICKit gleich dran lassen geht natürlich nicht, bzw.eher ungünstig bei meinen 8 Beinigen,
da bleibt dann wirklich kaum noch was an Pins übrig...;)

Bei meinen kleinen Projektchen,
nutze ich aber den Debugger eh nicht, da reicht mir ein Testpin
oder auch mal der TXD Pin der serielle Schnittstelle um mir einen Wert anzusehen.
Viel Software passt da eh nicht rein.

Den PIC16F1825 habe ich mir auch mal angesehen.
Im Prinzip ist es ja der der gleiche Chip wie mien 12F1840 mit mehr Pins.
Auf jeden Fall ein hervorragender Chip zum Testen, grade wegen den Mehrpins.
Wird besorgt...

Mit den PIC24 hab ich auch mal probiert.
Den PIC24HJ256 habe ich in Assembler programmiert und gleich einen Core Fehler gefunden.
Das war damals auch mein erster Beitrag hier im Forum 2007, booh, doch schon so lange her...
https://www.roboternetz.de/community/threads/31661-PIC24H-Repeat-Problem-bei-post-increment?highlight=RCOUNT
34022 Auch hier ist die 5 polige Leiste schon drauf zum programmieren

Die PogoPins (Federstifte) wären evtl. möglich.
Gut, dass Du es angesprochen hast, ich wuste nämlich garnicht wie diese Federpins heissen.
"PogoPins war mir neu. Ich muss da gleich nochmal googlen.

Die MicroMatch erscheint mir noch noch zu groß. Ist natürlich Anwendungsspezifisch.

Anfangs hab ich ja nur mit dem Pic Start Plus programmiert und grad noch die Adapter für meine PICse gefunden.
War schon immer eine 5 polige Pfostenleiste, wobei die Pinbelegung auch heute noch identisch ist zum PicKit3.
34023


Siro was Du da auf dem Foto so zeigst, kann ich kaum so erkennen, weniger noch löten ;)

Ich mache diese Miniteile auch nur privat, das soll in einen Mini Hubschrauber der selber nur 29 Gramm wiegt.
Das ist eine Akkuüberwachung.

Siro

Klebwax
21.02.2019, 17:06
Hallo Klebwax,
den PICKit gleich dran lassen geht natürlich nicht, bzw.eher ungünstig bei meinen 8 Beinigen,
da bleibt dann wirklich kaum noch was an Pins übrig...;)


Na, mal ehrlich. Wieviel aktive Pins braucht deine Akkuüberwachung? Mir fallen dutzende von Anwendungen ein, die mit 3 Pins auskommen. Das fängt mit dem Ersatz der Sachen an, über die man sagt: "das kann doch ein bzw zwei 555" bis zu PWM Generatoren für LED oder Motor. Oder ein Poti sowie Step und Dir um mal schnell einen Schrittmotor zu steuern.


Bei meinen kleinen Projektchen, nutze ich aber den Debugger eh nicht, da reicht mir ein Testpin oder auch mal der TXD Pin der serielle Schnittstelle um mir einen Wert anzusehen. Viel Software passt da eh nicht rein.

So wie für mich das Scope (neben dem Layoutprogram) das wichtigste Werkzeug beim Hardware entwickeln ist, ist für mich der Sourcecode-Debugger (neben dem Compiler) das wichtigste beim Software schreiben. Ich rätsele nicht rum, ob mein Multimeter mir nichts anzeigt, weil nur ein kurzer Puls kommt, sondern nehme gleich das Scope, und mein Debugger sagt mir, warum ich den Pin gleich wieder zurücksetze, obwohl es falsch ist.

Neue HW fertig gelötet, kurze SW


#include <xc.h>
void main(void){
while(1) {
NOP();
}
}


einen Breakpoint auf NOP() und schon sehe ob der Prozessor startet. Das Scope an einen I/O und 2 mal _delay_ms() und ich sehe ob die Clock stimmt. Und alles mit den 5 Anschlüssen, die ich sowieso zum Programmieren brauche. Wie lang darf der Servoimpuls von meinem Servo sein? Einen I/O als Servosignal und mit dem Debugger an der Pulslänge gedreht. Jetzt ist die Software ein Fünfzeiler.

Da das bei den AVR mit den SPI-Programmern wohl nicht so einfach geht, ist das nicht in Mode. Aber ich denke, 2 von 3 oder mehr Softwareproblemen hier und in anderen Foren könnte jeder selbst in fünf Minuten mit einem Debugger lösen. Ein PICKit, den ich als Programmer sowieso brauche kann das und kost deswegen nicht mehr.


Ja ich kenne das Ańgebot vom freundlichen Chinesen ;) . Ich habe da nur mit dem Eagle etwas Probleme, einmal habe ich für ein Modellbahnproj. mal was fertigen lassen....

Da habe ich das wohl spiegelverkehrt abgegeben. Da das mehr oder weniger nur aus normalen Bauelementen bestand konnte ich das noch verwenden....vom Aussehen mal abgesehen.

Einmal ist keinmal. Meine ersten Layouts (und erst recht meine ersten Programme) waren für die Tonne. Da kostete aber eine Prototypenplatine leicht noch 500€ statt 5€ wie heute fünf. Aber egal, was man baut, im Garten, am Haus oder fürs Hobby: beim ersten Mal wirds selten so, wie man es sich vorgestellt hat.

MfG Klebwax