Hallo @all, ich würde gerne einen Datenlogger bauen, für den ich zwei UARTs benötige. Da ich bereits einige Projekte mit dem ATMega328P gemacht habe, fiel meine Wahl hier auf den größeren Bruder ATMega328PB (mit zwei UARTs). UART0 soll hierbei die Kommunikation zu einem PC übernehmen (Logging + Konfiguration). UART1 soll mit einem Battery Management System reden und permanent Zellen-Zustände abfragen (115200 baud). Aber: UART1 teilt sich die Pins mit dem ISP des Controllers, die ich ja ebenfalls benötige. PB4 = MISO0/RXD1 PB5 = MOSI0/TXD1 Das man den Controller daher nicht programmieren kann, wenn das BMS angestöpselt ist, kann ich verschmerzen. Nur wenn ich das ganze auf eine Platine bringe, dann brauche ich zumindest auch die ISP Pads bzw. einen Header, der ebenfalls an diese Pins angeschlossen ist. EMV-mäßig klingt das für mich eigentlich suboptimal. Macht man das denn in der Praxis wirklich so? Oder sollte man den ISP Port noch irgendwie zusätzlich beschalten? Freue mich über eure Erfahrungen diesbezüglich. Lieben Dank, Mario
Mario schrieb: > EMV-mäßig klingt das für mich eigentlich suboptimal. Die kurzen Pins wirken sich nicht so negativ aus, dass man sich darum einen Kopf machen müsste. > Macht man das denn in der Praxis wirklich so? Ja Und mit Widerständen trennst du ggf. angeschlossene Bauteile, damit der angeschlossene Programmieradapter die Hoheit übernehmen kann. Zum Beispiel:
1 | Quelle 1kΩ |
2 | Tx o-------[===]----+-----o PB4 RxD/MISO |
3 | | |
4 | o |
5 | ISP Stiftleiste |
Bis 115200 Baud klappt das so tadellos, mehr habe ich nie versucht. Bei höheren Bitraten ist eventuell ein Jumper anstelle des Widerstandes besser geeignet. Oder ein Bustreiber mit Tristate Ausgang, der bei Low-Pegel an /Reset seinen Ausgang deaktiviert. Denn beim Programmieren ist die ganze Zeit der /Reset Pin auf Low.
Hallo Stefanus, aha - interessant. Vielen Dank für Deine Antwort. Jumper würde ich gern vermeiden. Aber die Variante mit dem Widerstand zur Priorisierung finde ich einfach und gut. Was EMV betrifft, würde ich dann als Maßnahme erstmal möglichst kurze Leiterbahnen zum ISP Header verlegen. Vielleicht bin ich auch zu paranoid - gerade bei den Dingen, die man zuhause so schwierig definiert testen kann. ;) Danke für den Tip!
Wenn man fuer den Programmiermodus pins umschalten muss kann man den 74LVC2G126 verwenden, welchen man mit dem Reset pin ansteuert. Ich bevorzuge allerdings Controller, die mir keinen solchen Mist aufdruecken. zB den Mega644, auch mit 2 Uarts.
Mario schrieb: > Aber die Variante mit dem Widerstand zur Priorisierung finde ich einfach > und gut. ich bestätige, mache auch immer die ISP direkt an den Chip, aber als Port R nehme ich 470 Ohm, bis jetzt hatte keiner meiner ISP Prommer mit den 470 Ohm Probleme, 1k finde ich für die Port Treibermöglichkeit als Ausgang schon etwas hoch, als Input ist 1k OK, als Output treibt ein 470 Ohm weiter.
:
Bearbeitet durch User
Atmel hat da noch über dieses Thema die App Note 910: http://ww1.microchip.com/downloads/en/appnotes/atmel-0943-in-system-programming_applicationnote_avr910.pdf Irgendwo in einem anderen Dokument konstantierte Atmel, daß als Minimum 330 Ohm zur Isolation des Programmiergerätes ausreichen sollen. Bei mir verwende ich zur Entkopplung externer Peripherie meist 470-1K. Mit dem AVR-ISP MKII funktioniert das auf alle Fälle. Bei anderen Programmiergeräten müßte man zur Vorsicht eben testen.
Gerhard O. schrieb: > Atmel hat da noch über dieses Thema die App Note 910: > > http://ww1.microchip.com/downloads/en/appnotes/atmel-0943-in-system-programming_applicationnote_avr910.pdf > > Irgendwo in einem anderen Dokument konstantierte Atmel, daß als Minimum > 330 Ohm zur Isolation des Programmiergerätes ausreichen sollen. Bei mir > verwende ich zur Entkopplung externer Peripherie meist 470-1K. Mit dem > AVR-ISP MKII funktioniert das auf alle Fälle. Bei anderen > Programmiergeräten müßte man zur Vorsicht eben testen. Statt ISP könntest Du auch Bootloader benutzen.
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.