Hallo Ich bin grad dabei mir ein Entwicklungsboard für einen ATMEGA 168 oder 328 zu bauen. Auf diesem Entwicklungsboard habe ich dann die Möglichkeit die gängige Pheripherie zu testen und das Verhalten der Programmierung zu Untersuchen. Allerdings hätte ich eine Frage bezüglich der Seriellen Schnittstelle Ich hätte erstmal gedacht, dass ich einen ATMEGA 328 als In System Programmer benutze also einen USB to Seriel Chip mit einem 328 über UART verbinde und dieser 328 wiederum den Ziel Microcontroller also einen 168 oder einen 328 als ISP programmiert. Meine Frage wäre nun ob diese Vorgehen überhaupt so funktioniert und ob jemand dort einen USB to Serial Chip vorschlagen kann. Außerdem wäre es nützlich wenn ich eventuell ein ähnliches Projekt sehen könnte. Oder geht das eventuell noch einfacher. Die Hex Datei wird mit Atmel Studio mit C erstellt und anschließend mit dem Burn-O-Mat überspielt. Im vorraus schonmal vielen Dank
Jannis F schrieb: > Oder geht das eventuell > noch einfacher. Mit einem Bootloader kannst Du Deinen Contoller direkt über RS232 (oder USB to UART) programmieren. Diesen kannst Du vorher per ISP in den 168 oder 328 brennen.
:
Bearbeitet durch User
Jannis F schrieb: > Burn-O-Mat überspielt das ist nicht richtig, Burn-O-Mat ist kein ISP Programmierer, es ist noch ein graphisches Frontend für Avrdude. Und hierbei (ISP Programmierung oder Nutzung eines seriellen Bootloaders) kommt es darauf an, was Avrdude unterstützt.
Jannis F schrieb: > Ich bin grad dabei mir ein Entwicklungsboard für einen ATMEGA 168 oder > 328 zu bauen. Auf diesem Entwicklungsboard habe ich dann die Möglichkeit > die gängige Pheripherie zu testen und das Verhalten der Programmierung > zu Untersuchen. also einen arduino mini mit 328p? https://www.google.com/search?q=arduino+mini+328p oder verstehe ich deine Frage falsch? Jannis F schrieb: > Meine Frage wäre nun ob diese > Vorgehen überhaupt so funktioniert und ob jemand dort einen USB to > Serial Chip vorschlagen kann. klar gibt welche mit echten FTDI und mit fake FTDI oder mit CH 341 o.ä. Die Belegung sollte 6 Stifte haben mit VCC GND Rx Tx CTS DTR und nicht! Achtung: 3,3V https://buyhere22.com/components/usb-ttl-ft232rl-pinout.png oder https://cdn.antratek.nl/media/product/7f1/serial-basic-breakout-ch340g-and-usb-c-dev-15096-54e.jpg ich habe leider zu oft welche mit 3,3V an der Stiftseite erwischt die sich am Arduino mini oder am mighty mini 1284p nicht 1:1 anstecken liessen! https://github.com/JChristensen/mini1284
Jannis F schrieb: > Im vorraus schonmal vielen Dank Im vorraus schonmal die Warnung dass du als Anfänger viel falsch machen kannst wenn du dein eigenes Entwicklungsboard baust, daher lies die Wikis zum AVR hier auf uC.net und lasse deine Schaltung und Layout begutachten bevor deine Schöpfung in Realisierung geht.
Ich wollte ohne extra Bootloader auskommen, sodass ich die "rohen" Microcontroller programmieren kann deswegen wollte ich einen weiteren 328 nehmen der die Aufgabe des Arduino Unos als Programmer übernimmt
darf man den sinn dahinter hinterfragen? so hast du zusätzlichen hardwareaufwand (wenn du das gerät mehrmals herstellst, multipliziert sich das) vs. einmaligen softwareaufwand.
Viele Wege führen nach ROM (auch ohne eigenen Bootloader) !!! 1. Weg: Nachbau eines USBasp mit auf das Board nehmen (bei Bedarf kann ich dir auch eine modifizierte Firmware geben, die unter Linux auch als USB2RS232 Bridge dienen kann 2. Weg: einem nackten ATmega mit Bootloader versorgen und in diesen das AVRISP aus den Beispielen der Arduino-IDE flashen, der dann als ISP-Programmer funktioniert 3. Weg (den ich auf eigenen Boards verwende): CH340 als US2RS232 Bridge, diese bedient ein ATmega als STK500v2 Programmer. Ein an den ATmega angeschlossener Taster fungiert als Toggleschalter zwischen ISP-Programmer Modus oder als Serial-Bridge, sodass ein EVAL-Board diese Brücke als Kanal für serielle Ausgaben nutzen kann (auch hier kann ich dir bei Bedarf eine Firmware stellen). Das Ausgangsprojekt war dieses hier: http://tuxgraphics.org/electronics/200510/article05101.shtml 4. Weg viele weitere Möglichkeiten : - )
So, jetzt habe ich mal meine Sourcen durchsichtet und auch einen Schaltplan gezeichnet. Prinzipiell (ich finde es nicht mehr) hatte ich einen Teil der Software in Verbindung mit etwas das ich "Flashershield" nenne hier eingestellt. Hier jetzt allerdings nicht in Verbindung mit einem Arduino, sondern als eigenständige Lösung. Mit der Jumperreihe kann der ISP-Mode selektiert werden. In Verbindung 1-2 kann eine neue Firmware in den Controller geladen werden. Wenn dieses NICHT die STK500v2 Firmware sein sollte, sondern wenn hier ein Arduino-Bootloader geflasht wird, reagiert die Schaltung logischerweise wie ein Arduino (Uno). Ist dieser Bootloader geflasht, so kann der Arduinomodus mit JP2 selektiert werden. Hier wäre es denkbar, den Firmwarecontroller mit einem Bootloader zu versehen und über diesen dann die Firmware als STK500 Clone zu flashen. Jumperreihe Verbindung 2-3 bedeutet, dass ein AVR-Controller geflasht werden kann. Als "Schmankerl" können (müssen aber nicht) die seriellen Anschlüsse des Zielsystems an den STK500 Clone angeschlossen werden. Wenn dieses gemacht wird, kann über den Taster S1 der STK500 Modus überbrückt werden und jede serielle Zeichenübertragung des Targetsystems wird an den PC gesendet (ein Upload des Targetsystems ist dann logischerweise nicht mehr möglich). S1 toggelt den STK500 und der seriellen Modus, eine rote Leuchtdiode zeigt an, in welchem Modus sich der STK500-Clone befindet.
Beitrag #6010568 wurde vom Autor gelöscht.
PS: Flashen eines Zielcontrollers: Linux: avrdude -c stk500v2 -p m3288 -b 115200 -P /dev/ttyUSB0 -U flash:w:meinprg.hex Windows: avrdude -c stk500v2 -p m3288 -b 115200 -P comx -U flash:w:meinprg.hex
Ralph S. schrieb: > Prinzipiell (ich finde es nicht mehr) hatte ich > einen Teil der Software in Verbindung mit etwas das ich "Flashershield" > nenne hier eingestellt. Das hier? Beitrag "Arduino - UNO Flashershield (Linux)"
Alexander S. schrieb: > Das hier? > Beitrag "Arduino - UNO Flashershield (Linux)" Stimmt, das war es !
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.