Moin, auf der Suche nach Programmiergeräten für µC habe ich nun 2 Geräte gefunden: AVRISP mkII PICKit 3 Mit dem mitgelieferten Kabel kann man ja mit den Geräten PICs und Atmels programmieren die in einer Schaltung eingebaut sind (ISP) Schön und gut, nur habe ich aber gar keine ISP Anschlüsse, sondern z.B.so etwas: http://www.instructables.com/id/LogicProbePIC/ also ein Hexfile und eine Schaltung zum Aufbau. Sodele, und wie brenne ich nun mit dem AVRISP mkII oder PICKit 3 ein Hexfile in einen Atmel / PIC ?? Irgendwie brauch ich doch noch Hardware dazu wo man dann den µC reinsteckt (kopf kratz) ??
bei deinem PicKit 3 ist ein Poster dabei, auf dem mit vielen Bildern gezeigt wird, wie man einem Pic an den Programmer anschliessen muss. wenn du das schon verlegt hast, hier ist der Download: http://ww1.microchip.com/downloads/en/DeviceDoc/50002010B.pdf Viel Spass. Gruß, dasrotemopped.
Anfänger schrieb: > Mit dem mitgelieferten Kabel kann man ja mit den Geräten PICs und Atmels > programmieren die in einer Schaltung eingebaut sind (ISP) Genau, dafür stellt der PIC 5 Anschlüsse bereit (Vcc, GND, Vpp, Takt und Daten) die mit dem PICkit 3 verbunden werden. Dazu muss man natürlich einen passenden ISP-Anschluss auf der Platine vorsehen (oder nachträglich einbauen). > Schön und gut, nur habe ich aber gar keine ISP Anschlüsse, Vorher programmieren oder ISP mit einbauen. > Sodele, und wie brenne ich nun mit dem AVRISP mkII oder PICKit 3 ein > Hexfile in einen Atmel / PIC ?? Irgendwie brauch ich doch noch Hardware > dazu wo man dann den µC reinsteckt (kopf kratz) ?? Wenn du den PIC unbedingt extern programmieren willst und davon nicht gerade 1000 Stück brauchst kannst du dir aus einer passenden IC-Fassung und ein Stück Lochrasterplatine einen simplen Adapter zusammenlöten. Einfach die passenden Anschlüsse vom PICkit mit der Fassung verbinden, PIC reinstecken und programmieren. Viele Tipps für PIC-Einsteiger gibt es unter www.sprut.de PS: Das ist jetzt nur für PICs geschrieben, aber bei den AVRs ist es quasi das gleiche. Dazu einfach mal die Forensuche benutzen.
Jens P. schrieb: > Dazu muss man natürlich einen passenden ISP-Anschluss auf der Platine > vorsehen (oder nachträglich einbauen). Man soll den Aufwand nicht übertreiben. Was soll man da einbauen müssen. Der µC ist doch nicht ohne Grund so ausgerichtet, wie er ausgerichtet ist. Einen dafür passenden Prüf-Clip gibts (fast) überall.
W.A. schrieb: > Man soll den Aufwand nicht übertreiben. Was soll man da einbauen müssen. > Der µC ist doch nicht ohne Grund so ausgerichtet, wie er ausgerichtet > ist. Keine Ahnung, wo eine 5-polige Stiftleiste, etwas Draht und je nach Schaltung ein Widerstand und zwei Dioden für dich Aufwand sind? Jedenfalls sehe ich in quasi allen meinen Basteleien mit PICs einen ISP vor. Das hat den Vorteil, das man jederzeit an den µC (bzw. dessen Speicher) ran kommt. > Einen dafür passenden Prüf-Clip gibts (fast) überall. Wenn du mit überall Ebay meinst, gebe ich dir Recht. Beim örtlichen C habe ich ihn noch nicht liegen sehen... Außerdem sind mir solche Dinger zu unhandlich. Den muss man mit einer Hand immer festhalten. Das macht sich beim Debuggen immer etwas ungünstig.
:
Bearbeitet durch User
AVR Mikrocontroller (die meisten jedenfalls) haben eine ISP Schnittstelle. Die Pins sind mit MISO, MOSI, SCK und RESET beschriftet. Diese musst du mit dem ISP Programmieradapter verbinden. Natürlich auch VCC und GND nicht vergessen. Du kannst die Pins auch als "normale" I/O Pins verwenden, wenn du deine Schaltung so auslegst, dass der Programmieradapter Vorrang hat. Zum Beispiel:
1 | _____ 1kΩ |
2 | GND |------- ------[===]--------o SCK Pin |
3 | Taster |
So kannst du den Zustand des Tasters am SCK Pin abfragen, aber wenn der ISP Programmieradapter dort angeschlossen ist, dann hat dieser Vorrang. Der 1kΩ Widerstand verhindert einen Kutzschluss durch die Doppel-Belegung. Achtung, jetzt kommt der Fallstrick Nr 1: Wenn du mit dem Programmieradapter die Fuses so änderst, dass der µC eine externe Taktquelle verwendet, dann muss die auch vorhanden sein. Ansonsten hat er nach dem nächsten Strom aus/an Wechsel keine Taktquelle mehr und dann funktioniert auch die ISP Schnittstelle nicht mehr. Weitere häufige Fallstricke: - Wenn der µC mit weniger als 8Mhz getaktet ist (was standardmäßig der Fall ist), kommuniziert der Programmieradapter zu schnell, der µC kommt nicht mit. Du musst die Geschwindigkeit des Programmieradapter herab setzen. Bei avrdude geht das z.B. mit dem Parameter -B20 - ISP benötigt den RESET Pin. Wenn du die Reset-Funktion des Pins (bei kleinen ATtinys) deaktivierst, geht ISP nicht mehr. - Wenn du JTAG oder Debug-Wire aktivierst, geht die ISP Schnittstelle nicht mehr. Dann brauchst du einen ICE-Debugger oder High-Voltage Programmer, um den Fehler wieder rückgängig zu machen. - Da der Reset-Pin Teil des ISP Protokols ist, darf da kein dicker Kondensator direkt dran hängen. 100nF sind Ok, bei mehr kann es zu Fehlfunktionen kommen. Du kannst das Problem so umgehen:
1 | 100µF 1kΩ 100kΩ |
2 | GND |----||----[===]----+----[===]----o VCC |
3 | | |
4 | o |
5 | Reset |
Also im Prinzip genau wie oben mit dem Taster. Bei Mikrocontrollern mit PDI und TPI Protokoll (statt ISP) dürfen gar keine Kondensatoren an den betroffenen Leitungen hängen.
Es reicht ja, auf der Platine, dort wo Platz ist, ein paar Einzelstifte für den ISP hochstehen zu lassen. Darauf kann man dann die female-Enden der billigen Breadbordboardkabel stecken, die mit dem Progger verbunden sind. Dann muss nicht mal Platz für einen Wannenstecker verschwendet werden.
Bei der ICSP Geschichte muss man allerdings auch darauf achten, dass die benötigten Pins nicht durch äußere Beschaltung unbrauchbar werden. Das kann bei kleinen uC mit wenigen Pins dann schonmal zusätzlichen Aufwand bedeuten (Jumper...) Für Pickit3 bei aliexpress suchen. Da gibt es haufenweise Angebote inklusive Programmier-Sockel zu einem Preis, für den man bei einem ordentlichen Distributor noch nicht mal einen nackten Sockel bekommt. Dann hat man für 2€ mehr auch eine einfache Lösung, falls es "In Circuit" mal nicht geht.
:
Bearbeitet durch User
Stefan U. schrieb: > AVR Mikrocontroller (die meisten jedenfalls) haben eine ISP > Schnittstelle. Die Pins sind mit MISO, MOSI, SCK und RESET beschriftet. > Diese musst du mit dem ISP Programmieradapter verbinden. Natürlich auch > VCC und GND nicht vergessen. Bei PIC heißen die Pins PGC/PGD oder ICSPCLK/ICSPDAT und der Reset heißt da MCLR. Das Prinzip ist aber gleich. > Achtung, jetzt kommt der Fallstrick Nr 1: den gibts bei PIC nicht, ICSP funktioniert immer. > - Wenn der µC mit weniger als 8Mhz getaktet ist (was standardmäßig der > Fall ist), kommuniziert der Programmieradapter zu schnell, der µC kommt > nicht mit. Du musst die Geschwindigkeit des Programmieradapter herab > setzen. Bei avrdude geht das z.B. mit dem Parameter -B20 Ist bei PIC auch irrelevant, ICSP ist fast idiotensicher. > - ISP benötigt den RESET Pin. Wenn du die Reset-Funktion des Pins (bei > kleinen ATtinys) deaktivierst, geht ISP nicht mehr. Ist bei PIC auch irrelevant. Da gibts aber eine andere Fallgrube. Der Programmer legt bei den 8 Bittern eine Spannung zwischen 8 und 13.5V (typabhängig) an, um in den Programmiermodus zu wechseln. Die externe Beschaltung muss damit zurecht kommen. > - Wenn du JTAG oder Debug-Wire aktivierst, geht die ISP Schnittstelle > nicht mehr. Dann brauchst du einen ICE-Debugger oder High-Voltage > Programmer, um den Fehler wieder rückgängig zu machen. JTAG und ISP gehen bei AVR gleichzeitig, Debugwire und ISP aber nicht. > - Da der Reset-Pin Teil des ISP Protokols ist, darf da kein dicker > Kondensator direkt dran hängen. 100nF sind Ok, bei mehr kann es zu > Fehlfunktionen kommen. Du kannst das Problem so umgehen: Ist bei PIC genauso. fchk
Jens P. schrieb: > Keine Ahnung, wo eine 5-polige Stiftleiste, etwas Draht und je nach > Schaltung ein Widerstand und zwei Dioden für dich Aufwand sind? Wie lange brauchst du, um das hinzufädeln? Wieviel größer wird die Platine? Reicht das Gehäuse dann noch? Für einmalige Programmierung ist das doch arg übertrieben. Wenn man dann unbedingt eine separate Verbindung braucht, und sei es wegen der Pin-Beschaltung, ist statt einer Stiftleiste bei durchkontaktierten Platinen meist einfacher, in Randnähe eine Reihe Vias vorzusehen, in die man zum Programmieren nur eine Stiftleiste/Wannenstecker reinhält, z.B. einen gewinkelte Wannenstecker (wegen der größeren Elastizität der Beine). Da beim TO schon ein µC im DIP-Gehäuse verwendet wird, besteht doch überhaupt kein Grund für zusätzliche Kontakte und Kabeleien, falls denn die Schaltung so ausgelegt ist, dass sich Programmierung und normale Beschaltung nicht in die Quere kommen.
Anfänger schrieb: > wie brenne ich nun mit dem AVRISP mkII oder PICKit 3 ein > Hexfile in einen Atmel / PIC ?? Irgendwie brauch ich doch noch Hardware Die "Hardware" besteht aus 5 (PIC) bzw. 6 (AVR) Verbindungen (vulgo: Drähten) zwischen dem µC und dem Programmiergerät. Wie du das konkret löst, ist dir überlassen. Am universellsten ist ein entsprechender Steckverbinder auf der Platine, z.B. einreihig 5-polig für PIC und zweireihig 6- oder 10-polig für AVR. Die Steckverbinder und ihre Belegung sind genormt (idR so, daß ein 1:1 Kabel zwischen Programmier- gerät und Platine paßt). Du kannst aber beliebige Steckverbinder nehmen und dir ein Spezialkabel dafür bauen. Für AVR ist Micromatch 6-polig beliebt, weil schön klein. Wenn du den µC nur einmalig programmieren mußt, dann kannst du diese Verbindungen auch einfach einmalig an die entsprechenden Punkte auf der Leiterplatte anlöten und nach dem Programmieren wieder entfernen. Oder du baust/kaufst so einen Adapter mit Nullkraftsockel, wo du den µC zum Programmieren einsetzt.
:
Bearbeitet durch User
Danke erstmal für die Beiträge. Der PICKit ist nun unterwegs, habe das Gerät also noch nicht. Nun habe ich aber noch etwas anderes gefunden: http://www.watterott.com/de/USB-Bit-Whacker-18F2553-Development-Board Meint ihr das ist brauchbar ? Wenn man noch in die Lötstellen an den Seiten so Stiftsockel einlötet und von da die Drähte zu einer Fassung auf einer Lochrasterplatine verbindet müsste doch auch funktionieren ?
Brauchbar für was? Als Programmiergerät für andere PICs würde ich mal sagen NEIN. Der Bootloader darauf ist zumindest zum Entwickeln auch unnütz, wenn du dann demnächst sowieso ein PICkit hast...
> Meint ihr das ist brauchbar ?
Ich meine, dass das Ding vor allem teuer ist, wenn man es mit einem
Arduino Nano aus China vergleicht.
Brauchbar meinte ich um lediglich ein vorhandenes Hexfile in den PIC zu programmieren und ob das Teil dazu taugt. Sicher ist es doppelt so teuer wie ein PICKit, aber wenn man nur diese eine Funktion braucht. War aber sowieso mehr eine theoretische Frage.
Anfänger schrieb: > Danke erstmal für die Beiträge. > Der PICKit ist nun unterwegs, habe das Gerät also noch nicht. > Nun habe ich aber noch etwas anderes gefunden: > > http://www.watterott.com/de/USB-Bit-Whacker-18F2553-Development-Board > > Meint ihr das ist brauchbar ? > Wenn man noch in die Lötstellen an den Seiten so Stiftsockel einlötet > und von da die Drähte zu einer Fassung auf einer Lochrasterplatine > verbindet müsste doch auch funktionieren ? Für 8 Bit PICs nicht. Dafür fehlt noch die programmierbare Spannungsquelle für die Programmierspannung, die an Vpp/MCLR angelegt werden muss. Und DU musst das ICSP-Protokoll für den jeweiligen Chip (das ist von Chipfamilie zu Chipfamilie unterschiedlich!) selber implementieren. Sorry, aber wenn ich mir Deine Beiträge so anschaue, glaube ich nicht, dass Du das in endlicher Zeit hinbekommst. fchk
Anfänger schrieb: > Brauchbar meinte ich um lediglich ein vorhandenes Hexfile in den PIC zu > programmieren und ob das Teil dazu taugt. > Sicher ist es doppelt so teuer wie ein PICKit, aber wenn man nur diese > eine Funktion braucht. > War aber sowieso mehr eine theoretische Frage. Das Teil taugt nur dazu ein vorhandenes hex-file für das Teil in das Teil zu laden. Mit anderen PICs kan das Teil erst mal gar nichts anfangen.
:
Bearbeitet durch User
na da war mein Japanisch doch au wieder net so gut ich hab das so gelesen :o) Taugt dann das da wenigstens etwas um ein Hexfile in einen PIC zu flashen? http://www.ebay.de/itm/252117924313?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT Auf der Rückseite ist noch aufgedruckt wie man die Jumper für die entsprechenden PICS setzen muss. Da ich die Schaltung sowieso aufbauen muss setze ich eben noch ein paar Lötstifte mit drauf für ISP da hätt ich auch selber drauf kommen können
Nein, das ist nur ein mechanischer Sockel, kein Programmieradapter. Du brauchst einen Programmieradapter. Auf der einen Seite hat er einen USB Anschluss, in der Mitte einen bereits prigrammierten Mikrocontroller und auf der anderen Seite eine Schnitttselle zum Ziel.Mikrocontroller, der programmiert werden soll.
Den Programmieradapter hat er doch schon ;-) @Anfänger: Ja das könnte passen. Ich habe diesen http://www.ebay.de/itm/PICkit3-PIC-KIT3-PICkit2-PIC-KIT2-Debugger-Programmer-Emulator-PIC-Controller/282227054977?_trksid=p2046732.c100040.m2060&_trkparms=aid%3D111001%26algo%3DREC.SEED%26ao%3D1%26asc%3D20140107095009%26meid%3D68b8532daa2943fda52a7143c18df8e8%26pid%3D100040%26rk%3D1%26rkt%3D4%26sd%3D282227054977
Bin da nicht so bewandert. Gibts eigendlich so eine Art Miniklemmen die man an Verbaute µC-Beichen klemmen kann? Robert
Für den Fall dass das noch nicht erwähnt wurde: Der ESP8266 mit esp-link kann AVRs programmieren, aber es ist mir nicht ganz klar ob per ISP oder UART+Bootloader.
Robert V. schrieb: > Gibts eigendlich so eine Art Miniklemmen die > man an Verbaute µC-Beichen klemmen kann? W.A. schrieb: > Einen dafür passenden Prüf-Clip gibts (fast) überall. Oder such mal nach "Micro Kleps", "E-Z Hook" ...
Anfänger schrieb: > Sodele, und wie brenne ich nun mit dem AVRISP mkII oder PICKit 3 ein > Hexfile in einen Atmel / PIC ?? Irgendwie brauch ich doch noch Hardware > dazu wo man dann den µC reinsteckt (kopf kratz) ?? Für die Atmels gibts eine witzige und einigermaßen universelle Lösung: https://guloshop.de/shop/Mikrocontroller-Programmierung/guloboard-G10::3.html
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.