Hallo, Ich bin gerade dabei eine Leiterplatte für mein aktuelles Projekt zu entwerfen. Testweise habe ich meine Schaltung auf dem Steckbrett mit einem ATmega328P aufgebaut. Der soll mit der I2C Libary von Peter Fleury einen PWM-Generator steuern. Um mir später Erweiterungen offen zu lassen, möchte ich die auf der Leiterplatte einen größeren µC verweden (vorraussichtlich ATmega128). Meine Frage gibt es eine Sache die ich beim Ersetzen (abgesehen von der Pinbelegung) beachten muss? Die Register für das TWI habe ich in den Datenblättern miteinander verglichen. Die müssten soweit in Name und Adresse kompatibel sein, sodass ich bei der Verwendung der Bibiliothek und dem gleichen Code eigentlich keine Probleme bekommen sollte. Stimmt das so oder habe ich hier einen groben Denkfehler der dann nach der Bestückung zum bösen Erwachen führt? Danke schonmal im vorraus Gruß
:
Bearbeitet durch User
Der ATmega128 ist veraltet. Nimm je nach benötigter Pinanzahl ATmega1284, 1281 oder 1280. Achtung Fallgrube! Die 64-Pinner haben eine von allen anderen AVRs abweichende Belegung der ISP-Schnittstelle.
Hallo, Danke erstmal für deine schnelle Antwort. Könnte mein Code aber prinzipiell auf dem 1284 laufen? Oder müsste ich da etwas verändern? Das mit dem SPI hätte doch nur Auswirkungen auf mein Layout oder entstehen dadurch weitere Probleme?
I²C sollte kompatibel sein. Bei anderen Dingen ist gerade der alte ATmega128 deutlich anders, die anderen genannten AVRs sind da ähnlicher zu deinem ATmega328P. Das betrifft Dinge wie den Taktgenerator, den Watchdog, welcher Timer für einen externen 32-kHz-Quarz benutzt wird etc. pp.
Jörg W. schrieb: > I²C sollte kompatibel sein. Wie gesagt die Register sind von Name und Adresse her gleich. Andere Sachen beeinflussen das TWI doch gar nicht oder? Gibt es denn noch bessere Alternativen als den 1281/1284? Eignet sich ein 2560 eher? Ich hatte eigentlich vor den Mikrocontroller mit einem 16Mhz Quarz zu betreiben. Dafür ist der 2560 ja maximal ausgelegt. Gruß
Amin L. schrieb: > Andere Sachen beeinflussen das TWI doch gar nicht oder? Der Takt natürlich, aber den wirst du ja bei beiden gleich einrichten wollen. > Gibt es denn noch bessere Alternativen als den 1281/1284? > Eignet sich ein 2560 eher? Wenn du viel Flash und viele Pins brauchst, vielleicht. Entwicklungsmäßig ist dieser der älteste seiner Serie (zu der noch um 1281/1280/640 gehören). Der ATmega1284 ist noch etwas neuer, und glänzt insbesondere mit vergleichsweise viel SRAM. > Ich hatte eigentlich vor den Mikrocontroller mit einem 16Mhz Quarz zu > betreiben. Alle klassischen AVRs können bei 5 V (genauer: >= 4,5 V) mindestens 16 MHz, einige können auch 20 MHz. Bei einigen Typen muss man sehen, dass man nicht die auf "V" oder "L" endenden Versionen benutzt; diese sind für geringere Betriebsspannungen ausgelegt und haben eine geringere maximale Taktfrequenz.
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.