Ich habe diese Schaltung nachgebaut und das erste Mal den Mega gelötet. Wenn ich den Mega über einen Arduino Uno mit einem Bootloader oder mit einem Sketch versorgen will, kann keine Verbindung aufgebaut werden. Nun habe ich ganz schön mit dem Lötkolben am Chip geackert. Habe zwar darauf geachtet, dass er nicht zu heiß wird, aber das war meine erste 100pin-Chip-Löt-Erfahrung. Kann es eventuell an der Schaltung liegen? Was kann ich noch liefern, damit mich jemand bei der Fehlersuche unterstützen kann?
hi, zeig bitte mal Bilder. Hast du einen isp Programmer und hast das Datenblatt studiert, wie sich ein leer AVR verhält?
Ralph E. schrieb: > un habe ich ganz schön mit dem Lötkolben am Chip geackert. Was soll das bedeuten? ich ziehe mit einem Lötkolben und 3,2 mm Meißelspitze über alle Pins(-Reihen) jeweils eine Zinnschlange und entferne sie anschließend wieder. Dann alles mit 100% Ethanol und Bürste reinigen, Sichtkontrolle, Macro-Fotos, Durchklingen bei Bedarf und evtl. Nachlöten. Anschließend alles nochmals mit 100% Ethanol und Bürste reinigen. Das Löten dauert pro Seite ca. 5 Sekunden.
Dann beschalte ich das Board nach Atmel AVR Vorgabe, setze einige Config Bits (FuseBits) und Programmiere je nach dem einene Bootloader und direkt das Anwenderprogramm darauf. Anderenfalls muss man sich anhand der Atmel Application Notes und des Datenblattes Gedanken über eine Ist-Soll Fehlersuche machen. Davon ist aber in deinem Beitrag nichts zu lesen! 1) Testaufbau 2) Soll - Verhalten 3) Ist - Verhalten 4) Schlussfolgerungen I.A. Überprüft man die Versorgungsspannung: Liegt sie an allen notwendigen Pins an ? Welche Spannung(en) messe ich? Frage: Ist = Soll? usw.
Karl M. schrieb: > ich ziehe mit einem Lötkolben und 3,2 mm Meißelspitze über alle > Pins(-Reihen) jeweils eine Zinnschlange und entferne sie anschließend > wieder. Der Teil "und entferne sie anschliessend wieder" interessiert mich. Ich kenne zwei Methoden: a) Entlötlitze mit dem Lötkolben drauf drücken. Ist thermisch problematisch, man (ich) verbiegt sich dabei oft einzelne Pins. b) Entlötpumpe mit Feder und Kolben. Auch damti verbiegt man sich oft einzelne Pins. Wie kann man das besser machen? > Das Löten dauert pro Seite ca. 5 Sekunden. Für dich. Ich brauche 5 Minuten. Das erinnert mich an den Maler, der ein ganze Haus an einem Tag tapeziert hat. Übung macht den Meister, stimmt heute immer noch.
Ralph E. schrieb: > Wenn ich den Mega über einen Arduino Uno mit einem Bootloader oder mit > einem Sketch versorgen will ... klappt das natürlicherweise erst mal nicht da der Controller noch keinen Bootloader in sich trägt und die Fuses dafür vielleicht erst richtig gesetzt werden müssen. Dazu braucht es erst mal die ISP-Schnittstelle und einen ISP- Programmer, bei der du noch mehr Leitungen anschliessen musst. Ein Datenblatt lesen hilft!
Arduinator schrieb: > klappt das natürlicherweise erst mal nicht Er meint damit sicher den Arduino-ISP Sketch. Damit klappt das schon. Mit dem Bootloader kann man keinen Bootloader flashen, das hat der TO sicher schon bemerkt. An seinem Schaltplan kann man auch schön sehen, dass er einen ISP Anschluss dazu vorgesehen hat.
> An seinem Schaltplan kann man auch schön sehen, dass er einen ISP > Anschluss dazu vorgesehen hat. Jaaber unvollständig wie es scheint. So wird das nix.
Mir ist im Schaltplan etwas aufgefallen: Die Labels TX0 und RX0 an J19 enden in der Luft, es gibt kein Gegenstück am Mikrocontroller.
Stefanus F. schrieb: > das hat der TO > sicher schon bemerkt. Das bezweifle ich denn er hat im Schaltplan keine Vorkehrungen getroffen jemals über ISP etwas hineingebrannt zu haben. Somit ist der Chip jungfäulich, zumindest was seine inneren Werte betrifft (und soweit der Chip nicht geröstet ist).
Ralph E. schrieb: > Kann es eventuell an der Schaltung liegen? Ja, zur ISP Schnittstelle gehört neben der SPI Schnittstelle noch ein Zugriff auf den Reset-Pin. Der I2C-Schnittstelle sollte man noch Pull-Ups spendieren.
Wolfgang schrieb: > Ja, zur ISP Schnittstelle gehört neben der SPI Schnittstelle noch ein > Zugriff auf den Reset-Pin. Stimmt, das habe ich übersehen. Der ist ja nur indirekt (durch den Kondensator) am DTR Anschluss erreichbar, das reicht nicht.
Stefanus F. schrieb: > Karl M. schrieb: >> ich ziehe mit einem Lötkolben und 3,2 mm Meißelspitze über alle >> Pins(-Reihen) jeweils eine Zinnschlange OK. >>und entferne sie anschließend >> wieder. Nicht OK. > Der Teil "und entferne sie anschliessend wieder" interessiert mich. Ich > kenne zwei Methoden: > > a) Entlötlitze mit dem Lötkolben drauf drücken. Ist thermisch > problematisch, man (ich) verbiegt sich dabei oft einzelne Pins. > > b) Entlötpumpe mit Feder und Kolben. Auch damti verbiegt man sich oft > einzelne Pins. Nicht sinnvoll. > Wie kann man das besser machen? Wie es die Profis machen. Nennt sich neudeutsch Drag Soldering. https://www.mikrocontroller.net/articles/SMD_L%C3%B6ten#Links https://www.youtube.com/watch?v=5uiroWBkdFY
Vielleicht geht der TO auch mit einer waschechten RS-232 ans Werk, und über VIN bekommt der AVR amtliche 14.5V ab. Eine reguläre Spannungsversorgung wäre zu empfehlen.
Falk B. schrieb: > Youtube-Video "Professional SMT Soldering: Hand Soldering Techniques - > Surface Mount" Was soll die Fummelei an den Einzelpins ab 01:20. Bei 01:46 gehts mit dem Thema erst richtig los ...
Ralph E. schrieb: > Ich habe diese Schaltung nachgebaut und das erste Mal den Mega gelötet. Und schon beim Schaltplan gescheitert. SO zeichnet man keine Schaltpläne, auch wenn das viele Hipster-Maker so machen. Schaltplan richtig zeichnen > Wenn ich den Mega über einen Arduino Uno mit einem Bootloader oder mit > einem Sketch versorgen will, kann keine Verbindung aufgebaut werden. Was hast du denn wie GENAU angeschlossen? Weißt du WIRKLICH, wie das Arduino-Bootloaderkonzept funktioniert? > Nun habe ich ganz schön mit dem Lötkolben am Chip geackert. Habe zwar > darauf geachtet, dass er nicht zu heiß wird, aber das war meine erste > 100pin-Chip-Löt-Erfahrung. > > Kann es eventuell an der Schaltung liegen? Ja. Du hast das Prinzip nicht verstanden, siehe oben. Schau dir mal den Arduino Mega256 an, dort sind 2 AVRs drauf. Der eigentliche ATmega2560 und ein kleiner ATmega16U2. Dieser ist ein Wandler von USB auf UART. Dieser UART geht dann an den ATmega2560. Der braucht aber einmalig eine Programmierung des Bootloaders über das klassische ISP-Interface. An Stelle des ATmega16U2 kann man fast jeden beliebigen USB-UART Wandler nehmen, auch so ein Kabel von FTDI oder sonstwas. Die Arduino-Software "sieht" nur den virtuellen COM-Port und den Bootloader auf deinem großen AVR. Man kann praktisch auch einen old school RS232-Port mit anschließender Pegelwandlung auf 5V nehmen, siehe MAX232. Ist aber im Jahr 2019 alles andere als sinnvoll, denn echte RS232-Ports sind auf aktuellen PCs praktisch ausgestorben.
neuer PIC Freund schrieb im Beitrag #5702684: > Eine reguläre Spannungsversorgung wäre zu empfehlen. Yes. Der Schaltplan suggeriert auch dass die Abblock-Kondensatoren nicht dort sind wo sie hingehören. Das wird noch lustig hier .... ... wenn wir vielleicht eines Tages den Aufbau sehen ... Ich meine schon ein altbekannes Muster zu erkennen: der TO setzt einmal einen Beitrag und lässt nie wieder was von sich hören. Und die Forums-Gemeinde prügelt sich um die Details des Problems die nicht offengelegt sind.
Der TO war gestern bis nach Mitternacht wach. Er schläft vermutlich noch.
Stefanus F. schrieb: > a) Entlötlitze mit dem Lötkolben drauf drücken. Ist thermisch > problematisch, man (ich) verbiegt sich dabei oft einzelne Pins. Auch bei Profis bleiben mal Brücken, meine Erfahrung: - schmale Entlötlitze (0,8 mm mit Flussmittel von Kontakt Chemie) benutzen - nie quer zu den Pins ziehen! Ein paar Sekunden erhitzen und dann vom IC weg ziehen. Bei quer kann die Litze an einem Pin hängenbleiben und dann verbiegt man ihn sofort. - Drag soldering: nur 1 Tropfen Lötzinn auf die Spitze, Lötzinn nicht mitführen. Dafür vorher genug Flussmittel auf die Platine aufbringen. Nur einmal draggen, danach vom IC wegarbeiten wenn nötig.
Johannes S. schrieb: > Nur einmal draggen, danach vom IC wegarbeiten wenn nötig. ... und beim Draggen die Lötspitze leicht ankippen, so dass der mit Lötzinn gefüllte Spalt auf der vom Package abgewandten Seite liegt.
Both the Flash and EEPROM memory arrays can be programmed using a serial programming bus while RESET is pulled to GND. The serial programming interface consists of pins SCK, PDI (input) and PDO (output). After RESET is set low, the Programming Enable instruction needs to be executed first before program/erase operations can beexecuted. NOTE, in Table 30-15 on page 339, the pin mapping for serial programming is listed. Not all packages use the SPI pins dedicated for the internal Serial Peripheral Interface - SPI. Könnte das der Fall sein? Ich hatte einmal einen Atmel, der nur via JTAG zu programmieren war.
Nein, ich verdrücke mich natürlich nicht. Ich will das Problem ja lösen. Nachdem ich hier alles gelesen habe, denke ich, dass ich wohl 50% falsch gemacht habe (wenn das reicht). Ziel war eigentlich den Mega in ein Breakout-Board zu löten, um mich dann langsam an das Ausprobieren mit Zusatzschaltungen aufzumachen. Einige davon funktionieren gut: USB2serial mit CH340G, Entstörung Schalter, Transistor-Pins für Canon (Auslöser/Scharfstellen), MosFet für das Heizen von Drucker-Extrudern und PWM-Ansteuerung von 2pol-Lüfter (12V). Anbei mal das komplette Breakout-Board, PCB und Fotos vom Löten. Ich hab die Pins alle angesehen und denke, dass ich einen verbogenen Pin habe (Snap_005.jpg), der aber noch kein Problem darstellt, oder? Stromversorgung liefert zur Zeit noch ein Labornetzteil, weil ich die 24V zu 5V-Schaltung speziell beim Thema "Drossel" noch nicht kapiere und das Board soll später mit 24V versorgt werden, da noch sechs TMC2208-Treiber mit Protektoren (a la Watterott) mit rauf sollen. Mit dem mega steh ich noch am Anfang, dass weiß ich und deshalb suche ich mir ja Hilfe hier. Danke für die Links. Auch das Schaltplan-zeichnen werde ich verbessern. Die immer wiederkehrenden Vorwürfe "lies doch mal das Datenblatt" stehen hier ja im ganzen Forum sehr oft. Natürlich habe ich soviel gelesen wie es ging. "Ging" bedeutet, dass an vielen Stellen das Grundverständnis fehlte. Da bin ich dann hier und anderswo auf die Suche in deutschsprachigen Foren gegangen und hab es dann einfach mal ausprobiert. Das Thema MOSfet hat es ja auch in sich mit den Kurven. Ich möchte mich da aber durchboxen und irgendwann eine funktionierende Platine haben. Nachtrag: Platine ist von Aisler. Die Bauelemente alle von Reichelt, also nicht aus China oder so. Wie man oben sieht, hatte ich die Schottky-Dioden vergessen zu bestellen; daher die Drahtbrücke. Auf dem PCB ist unten links noch eine LED-Schaltung für das Testen der Funktion der einzelnen Pins und rechts eine für einen Schalter. Mit diesen beiden wollte ich dann Output und Input der Pins testen.
:
Bearbeitet durch User
Ralph E. schrieb: > Ziel war eigentlich den Mega in ein Breakout-Board zu löten, um mich > dann langsam an das Ausprobieren mit Zusatzschaltungen aufzumachen. Das sieht man. Ärgere dich nicht, wenn du den Preis dieses Breakout-Boardes siehst: https://de.aliexpress.com/item/MEGA2560-PRO-EMBED-Micro-USB-Adapter-Entwicklung-Bord-CH340G-ATMEGA2560-16AU-f-r-Arduino-ATmega2560-Expansion/32968615346.html Du hast vergessen, auf unsere Rückfrage einzugehen, wie du den Chip programmieren wolltest. Über welche Schnittstelle mit welchem Adapter und welcher Software? Du hast was vom Arduino UNO geschrieben, aber das lässt noch zu viel Freiraum für Interpretationen. Denn das Arduino UNO Board kannst du als USB-UART Adapter oder als ISP Programmieradapter "missbrauchen". Um mit der Arduno IDE den seriellen Bootloader in den ATmega2560 zu installieren, brauchst du einen ISP Programmieradapter (oder einen Arduino UNO mit ISP Sketch). Danach kannst du den Bootloader über die serielle Schnittstelle benutzen. War das soweit klar?
preview image for PCB.pdf PCB.pdf | anzeigen 7,01 MB, 0 Downloads Da ist beim Drucken was schief gegangen, du hast ein tierisch hochauflösendes Bild anstatt einer echten Vektorgrafik in deinem PDF drin. Siehe Anhang, das ist ein Zoom auf die obere, linke Ecke. Siehe Bildformate.
Dann noch zu den Fragen: Ja, ich habe diverse USBasp und auch Arduino's hier. Zum Programmieren des Chips gäbe es also hoffentlich die geeignete Hardware. Flussmittel: FL 22-YL (Gel) und Flussmittel-Stift (diese Edding-Dinger von Stannol) Gelötet habe ich den Chip mit Hilfe des Gels und einer 80W-digitalen Lötstation, aber mit einer feinen Spitze; wenig Lötzinn drauf und dann Quer entlang. Das funktionierte nicht wie erwartet, so dass ich da öfter rübergehen musste. Deswegen mein Hinweis, dass ich da handwerkliche Fehler gemacht habe und Sorge habe, dass der Chip zu heiss wurde. Entlötlitze habe ich auch probiert. Derer habe ich 2 verschiedene bestellt: Einmal Kupferfarbend, einmal Stahlfarbend. Beides war irgendwie keine gute Sache. Ich würde das gerne ohne "anschließendes Entfernen" hinbekommen. @Wolfgang: "Der I2C-Schnittstelle sollte man noch Pull-Ups spendieren." Oh ok, da forsche ich nach. Hatte das überall nur so gesehen. @Johannes: Ja, so zu löten hätte ich auch ein besseres Gefühl, als das raufschmatzen und mit Entlötlitze wieder abnehmen. Ich habe noch zwei Platine/Versuche hier. wenn es also die Schaltung zulässt, dass mein Breaktout-Platinchen funktionieren könnte, dann probiere ich es beim 2. Versuch mal so. @Arduinator: "Der Schaltplan suggeriert auch dass die Abblock-Kondensatoren nicht dort sind wo sie hingehören." Oops? Echt jetzt? Ich dachte diese Kondensatoren sollen an alle 5V/GND-Pins? Und zwar nicht durch Via's und so nah dran wie möglich. Wo habe ich da was falsch gemacht?
Um dein Board zum Laufen zu bringen benötigst du ja erst noch einen Bootloader der Arduino-Kompatibel ist. Den musst du mit einem ISP einprogrammieren. Dein ISP hast du aber nicht angeschlossen. Die Pins sind frei... PS: MOSI und MISO sind NICHT für ISP!
Ralph E. schrieb: > Dann noch zu den Fragen: > > Ja, ich habe diverse USBasp und auch Arduino's hier. Zum Programmieren > des Chips gäbe es also hoffentlich die geeignete Hardware. > > Flussmittel: FL 22-YL (Gel) und Flussmittel-Stift (diese Edding-Dinger > von Stannol) OK. > Gelötet habe ich den Chip mit Hilfe des Gels und einer > 80W-digitalen Lötstation, aber mit einer feinen Spitze; Nicht OK. Man braucht eine eher breitere Spitze. Ich löte seit Jahren mit einer 45° angeschrägten Spitze mit 3,2mm Durchmesser alles von 0,5mm Pitch SMD bis 1,5mm^2 Kabeln. Geht super. > wenig Lötzinn > drauf und dann Quer entlang. Das funktionierte nicht wie erwartet, so > dass ich da öfter rübergehen musste. Deswegen mein Hinweis, dass ich da > handwerkliche Fehler gemacht habe und Sorge habe, dass der Chip zu heiss > wurde. Keine Sorge, heutige ICs bekommt man thermisch kaum kaputt. > Entlötlitze habe ich auch probiert. Derer habe ich 2 verschiedene > bestellt: Einmal Kupferfarbend, Blank. > einmal Stahlfarbend. Verzinnt. > Beides war > irgendwie keine gute Sache. Ich würde das gerne ohne "anschließendes > Entfernen" hinbekommen. Geht auch, man braucht nur ausreichend Flußmittel. Wenn Brücken bleiben, mit einer rereinigeten Spitze ohne Lötzinn nochmal drüber gehen, dann zieht man die Brücken weg. GGf muß man das mehrfach machen, es geht damit aber ohne Litze. > Oops? Echt jetzt? Ich dachte diese Kondensatoren sollen an alle > 5V/GND-Pins? Sicher. > Und zwar nicht durch Via's und so nah dran wie möglich. Wo > habe ich da was falsch gemacht? Gar nicht, die Platzierung und Kontaktierung is OK. Es fehlen aber immer noch viele Antworten auf unsere Fragen.
Stefanus F. schrieb: > Ralph E. schrieb: >> Ziel war eigentlich den Mega in ein Breakout-Board zu löten, um mich >> dann langsam an das Ausprobieren mit Zusatzschaltungen aufzumachen. > > Das sieht man. Ärgere dich nicht, wenn du den Preis dieses > Breakout-Boardes siehst: > https://de.aliexpress.com/item/MEGA2560-PRO-EMBED-Micro-USB-Adapter-Entwicklung-Bord-CH340G-ATMEGA2560-16AU-f-r-Arduino-ATmega2560-Expansion/32968615346.html > > Du hast vergessen, auf unsere Rückfrage einzugehen, wie du den Chip > programmieren wolltest. Über welche Schnittstelle mit welchem Adapter > und welcher Software? > > Um mit der Arduno IDE den seriellen Bootloader in den ATmega2560 zu > installieren, brauchst du einen ISP Programmieradapter (oder einen > Arduino UNO mit ISP Sketch). Danach kannst du den Bootloader über die > serielle Schnittstelle benutzen. > > War das soweit klar? Ja gut gefragt :-) Danke. Ja, ich wollte genau das tun: Arduino Uno mit ISP-Sketch. So hatte ich es auch anfangs probiert. Auch auf Kommandozeilen-Ebene mit AVRdude gibt es Fehlermeldung, dass die ID nicht korrekt ist. 0xffffff ist falsch. Hatte dann mal Miso und Mosi vertauscht (war schon zu spät gestern nacht) und da meckert er, dass die ID 0x0000000 falsch ist.
Ralph E. schrieb: >> Das sieht man. Ärgere dich nicht, wenn du den Preis dieses >> Breakout-Boardes siehst: >> > https://de.aliexpress.com/item/MEGA2560-PRO-EMBED-Micro-USB-Adapter-Entwicklung-Bord-CH340G-ATMEGA2560-16AU-f-r-Arduino-ATmega2560-Expansion/32968615346.html Habe ich 3 Stück hier zu liegen, allerdings nutzen diese Boards nicht alle Pins. Mein Ziel war es alle Pins zu nutzen. Daher wollte ich SPÄTER auch den MegaCore-Bootloader raufbringen. Dazu habe ich auch ein verbessertes PIN-Layout schon erstellt, was gut funktioniert. Der Mega hat ja 100 Pins und ich will sie alle ;-)
Alex W. schrieb: > Um dein Board zum Laufen zu bringen benötigst du ja erst noch einen > Bootloader der Arduino-Kompatibel ist. Den musst du mit einem ISP > einprogrammieren. Dein ISP hast du aber nicht angeschlossen. Die Pins > sind frei... > > PS: MOSI und MISO sind NICHT für ISP! Hehehe, das ist eine böse Falle bei einigen AVRs ;-) Darum auch meine Empfehlung, sich am Schaltplan des ArduinoMEGA2560 zu orientieren, denn der funktioniert. https://store.arduino.cc/arduino-mega-2560-rev3
Falk B. schrieb: > preview image for PCB.pdf > PCB.pdf | anzeigen > 7,01 MB, 0 Downloads > > Da ist beim Drucken was schief gegangen, du hast ein tierisch > hochauflösendes Bild anstatt einer echten Vektorgrafik in deinem PDF > drin. Siehe Anhang, das ist ein Zoom auf die obere, linke Ecke. Siehe > Bildformate. Mist. Sollte ich es löschen, damit es keinen Stress gibt mit dem Forum?
Alex W. schrieb: > MOSI und MISO sind NICHT für ISP! Doch, die selben Pins sind für die ISP Schnittstelle.
Ralph E. schrieb: > Mist. Sollte ich es löschen, damit es keinen Stress gibt mit dem Forum? Kannst du nicht löschen, bestenfalls einen Moderator darum bitten. Keine Sorge, hier gab es schon deutlich größere Datenkatastrophen ;-)
Zudem bezweifel ich dass die Größe des C's am Reset klein genug ist um bei ISP nicht zu stören, aber groß genug um bei Bootloadermodus mittels DTR noch zu funktionieren...
Alex W. schrieb: > Zudem bezweifel ich dass die Größe des C's am Reset klein genug > ist um > bei ISP nicht zu stören, aber groß genug um bei Bootloadermodus mittels > DTR noch zu funktionieren... 0,1µF sind kein Problem. Ich habe mal bei einem alten Pollin Board 100µF auf 10µF reduzieren müssen.
Falk B. schrieb: > Es fehlen aber immer noch viele Antworten auf unsere Fragen. Wenn ich alles durchlese fehlen die Antworten auf die Fragen von Karl und Deine: "Was hast du denn wie GENAU angeschlossen? Weißt du WIRKLICH, wie das Arduino-Bootloaderkonzept funktioniert?" @Karl: Das was ich messen kann sieht so aus, das Masse und 5V überall da anliegen, wo die Pins des Mega auch GND und 5V ausweisen. Kann ich noch an anderen stellen etwas messen um Leben oder Tot des Mega herauszufinden? @Falk: WIRKLICH weiss ich das nicht: Ich habe nach dem Löten gleich probiert den Mega via Arduino Uno als ISP anzusprechen, um überhaupt erstmal Zugang zum Chip zu bekommen. Dann wäre die Auseinandersetzung mit den Fuses, Bootloader etc. gekommen. Aber ich bekomme ja keinen Kontakt hin, was zu der ersten Frage führt: Alles richtig verkabelt? Das ist ja auch der Bestandteil der Fehlermeldung, dass ich die Verkabelung double-checken soll. Und ich habe gecheckt, gesucht und alle Varianten ausprobiert, die ich so im Netz gefunden habe. Immer mit dem Ziel über die ISP-Verbindung Kontakt herzustellen. Angeschlossen habe ich die ISP vom Uno an Unten links die Pins an meinem PCB an J17 52SPI-SCK 51SPI-MOSI 50SPI-MISO 5V GND Dann oben links noch an J19 "DTR".
Ralph E. schrieb: > Dann oben links noch an J19 "DTR". Wenn du einen ISP-Programmer benutzt, schliese es an RST direkt an.
Alex W. schrieb: > Ralph E. schrieb: >> Dann oben links noch an J19 "DTR". > > Wenn du einen ISP-Programmer benutzt, schliese es an RST direkt an. Also den PullUp und den 0.1uF auslöten und dann direkt an den RST?
Ralph E. schrieb: > Alex W. schrieb: >> Ralph E. schrieb: >>> Dann oben links noch an J19 "DTR". >> >> Wenn du einen ISP-Programmer benutzt, schliese es an RST direkt an. > > Also den PullUp und den 0.1uF auslöten und dann direkt an den RST? PullUp drinn lassen, ggf den C auslöten, falls es nicht funktioniert.
Da gibt es noch diese App Note als HW Design Hilfe: https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en591472
Alex W. schrieb: > PullUp drinn lassen, ggf den C auslöten, falls es nicht funktioniert. Funktioniert! Entspricht der Schaltung des Arduino Mega. Und dieses ist falsch: Ralph E. schrieb: > Dann oben links noch an J19 "DTR". Der ISP Adapter, egal welcher, muss an Reset, nicht an DTR DTR wird nur für den seriellen Upload über den Bootloader benötigt. Und da auch nur für den automatischen Reset, geht auch ohne/manuell. Auch hiervon war bisher noch nicht die Rede: Wenn der UNO als ISP verwendet wird, dann braucht der (immer?) einen 10µF Kondensator zwischen seinem Reset und GND um den DTR Impuls zu unterdrücken.
Alter Hase schrieb: > Da gibt es noch diese App Note als HW Design Hilfe: > > https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en591472 Danke und da drin steht etwas, was auf einen Fehler in meiner Schaltung hindeutet. Wie auch @Arduino Fan Boy D. vielleicht schon auf dem Schirm hatte Ich hab zwar den PullUp richtig gesetzt, aber der C ist glaube ich falsch positioniert: ext. RST --> C100nF --> RST am Arduino Ich hätte doch das so machen müssen, oder?: ext. RST -------------> RST am Arduino Und dann den 100 nF zwischen RST und GND.
Ralph E. schrieb: > Alter Hase schrieb: >> Da gibt es noch diese App Note als HW Design Hilfe: >> >> https://www.microchip.com/wwwAppNotes/AppNotes.aspx?appnote=en591472 > > Danke und da drin steht etwas, was auf einen Fehler in meiner Schaltung > hindeutet. Wie auch @Arduino Fan Boy D. vielleicht schon auf dem Schirm > hatte > > Ich hab zwar den PullUp richtig gesetzt, aber der C ist glaube ich > falsch positioniert: > > ext. RST --> C100nF --> RST am Arduino > > Ich hätte doch das so machen müssen, oder?: > > ext. RST -------------> RST am Arduino > > Und dann den 100 nF zwischen RST und GND. Nicht ganz. Der C vom Reset zum DTR wird nur für das Restarten des Bootloaders gebraucht um einen kurzen Reset Impulse auszulösen. Nach Masse darf das C nicht geschaltet werden. Beim ISP Betrieb muß der Reset Eingang dem ISP statisch zugänglich bleiben damit er den Reset zum ISP Datenaustausch permanent aktivieren kann. Beim ISP Betrieb sollte das RESET C am Besten nur einseitig frei in der Luft hängen. Auch empfiehlt es sich beim Bord Layout die Standard 6 oder 10 Pin Belegung zu bewahren um Standard Werkzeuge ohne Umarbeiten anschließen zu können. Vor ein paar Jahren entwickelte ich ein Mega2560 Design in der Firma. Die ISP Anschlüssen wurden standardmäßig ähnlich wie in der App Note beschrieben an einen 6-pin Pin Header gebracht und die ISP Verbindung mit einem AVR-ISP MKII funktionierte sofort nach dem ersten Einschalten ohne irgendwelche Probleme.
Ralph E. schrieb: > Ich hätte doch das so machen müssen, oder?: > > ext. RST -------------> RST am Arduino Ja, das ist der Knackpunkt.
YEAAAAAH! Er lebt! Ich habe den 100nF am RST ausgelötet, Drahtbrücke zwischen gemacht Und dann zwischen Drahtbrücke und Ground einen 100 nF gesetzt. Siehe da: Er redet mit mir.
Als "gelöst" kann ich den Thread nicht kennzeichnen, oder? Ich nehme hier mal mit, dass ich: - mich mit den Fuses auseinandersetzen sollte - Schaltplan zeichnen verbessern - mehr auf die ISP-Schnittstelle beim Layout achten sollte - mir eine Meißelspitze für's Löten zulegen muss Wenn Ihr noch mehr Tipps habt, dann bitte her damit. Ich bin noch immer ratlos zur ersten Antwort von Karl, was den Soll/Ist-Abgleich angeht. Was wäre das für Sachen gewesen oder wo kann ich mich da schlau machen? Geht es um Testpoints zum messen und eine Art Checkliste?
Last but not least: D A N K E für Eure Zeit Und wie der Terminator sagte: I'll be back.... (das ist als Drohung zu verstehen ;-)
Atmega chip detector. Written by Nick Gammon. Version 1.20 Compiled on Jan 20 2019 at 18:13:32 with Arduino IDE 10805. Attempting to enter ICSP programming mode ... Entered programming mode OK. Signature = 0x1E 0x98 0x01 Processor = ATmega2560 Flash memory size = 262144 bytes. LFuse = 0xFF HFuse = 0xD8 EFuse = 0xFD Lock byte = 0xCF Clock calibration = 0x55 Bootloader in use: Yes EEPROM preserved through erase: No Watchdog timer always on: No Bootloader is 8192 bytes starting at 3E000
Ralph E. schrieb: > Ich nehme hier mal mit, dass ich: > - mich mit den Fuses auseinandersetzen sollte Macht Sinn. Wobei die Arduino IDE sich beim Flashen des Bootloaders automatisch darum kümmert. Dennoch kann es hilfreich sein, zumindest zu wissen, was man durch die Fuses beeinflussen kann. Die Taktquelle ist natürlich offensichtlich. Interessanter könnte der Brown-Out Detektor sein, vor allem, wenn dein Sketch das EEprom nutzt, denn das reagiert oft mit Datenverlust wenn man bei instabiler Stromversorgung drauf zugreift.
Ralph E. schrieb: > Als "gelöst" kann ich den Thread nicht kennzeichnen, oder? > > Ich nehme hier mal mit, dass ich: > - mich mit den Fuses auseinandersetzen sollte > - Schaltplan zeichnen verbessern > - mehr auf die ISP-Schnittstelle beim Layout achten sollte > - mir eine Meißelspitze für's Löten zulegen muss Nö, eine angeschrägte, auf neudeutsch hoof tip. https://makezine.com/projects/skill-builder-soldering-iron-tips/ Rechts im Bild. Die mittlere, meißelförmige ist auch für viele Sachen nützlich. Die ganz dünne Spitze hab ich noch nie gebraucht.
Boah. Das Thema ist mit meinem Englisch schwer zu verstehen. Derzeit sind die Fuses LFuse = 0xFF HFuse = 0xD8 EFuse = 0xFD Jetzt vermute ich dass der Interner Quarz das sagen hat und würde natürlich gerne meinen externen 16Mhz-Quarz nutzen. Nun muss ich aber auch etwas zu BOD sagen und verstehe nciht was das sein soll. Weiterhin habe ich einen 16,0000-HC49U-S Standardquarz, Grundton, 16,000000 MHz, dem zwei 22pf Kondensatoren zur Seite stehen. Wenn ich das jetzt richtig verstehe, muss ich CKSEL 0111 setzen. Da ich SUT nicht verstehe, habe ich im Netz gesehen, dass zwei Leute das auf SUT=01 (BOD enabled) gesetzt haben. Spricht was dagegen, wenn ich das auch so mache? Das würde dann folgende Fuses ergeben: LFuse = 0xD7 HFuse = 0xD8 EFuse = 0xFD
Hier im Fuses-Artikel sehe ich schon, dass das nciht stimmen kann.
OK, nochmal nachgedacht und irgendwie sieht das doch jetzt schon passend aus. Also wird doch jetzt schon der ext. Quarz genutzt, da die derzeitige Einstellung: LFuse = 0xFF HFuse = 0xD8 EFuse = 0xFD CKSEL=1111 SUT=11 bedeutet. Wenn ich das jetzt richtig verstehe, dann ist der Mega auf 8Mhz eingestellt und nutzt den Bootloader. Wieso denn eigentlich nur 8Mhz? Wieso nicht 16Mhz?
Der interne R/C Oszillator hat 8MHz. Du hast ihn auf den externen Quarz eingestellt, wie viel MHz der hat, sollte drauf stehen. Merke Dir mal diese nützliche Webseite: http://www.engbedded.com/fusecalc/
Ralph E. schrieb: > Wieso denn eigentlich nur 8Mhz? Wieso nicht 16Mhz? Noch mal aufmerksamer nachlesen! Es sagt: > Ab 8MHz
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.