ATmega Universal Board
Das ATmega Universal Board ist ein möglichst einfaches Board, um 40-polige AVR Controller in Applikationen verwenden zu können.Designziele waren:
- Einseitige Platine, maximal 80x100mm
- Alle IO-Ports zugänglich und nicht durch Board-eigene Funktionen zwangsbelegt
- RS232, ISP und Spannungsregulierung on board
- Mindestens nutzbar für ATmega32 und ATmega64(4)
Features
- Alle 32 IO-Pins auf 4 Steckerleisten herausgeführt (Port A-D)
- Verwendbar für ATmega 32, 64, 644, d.h. alle ATmegas mit 40-poligem Gehäuse, die zum ATmega 32 pinkompatibel sind.
- Betrieb mit ca. 8..15V DC (bzw. der Bereich, in dem der 7805
betrieben werden darf zuzüglich 0,6V, die an der Eingangsdiode
abfallen).
- Regulierte Spannungsversorgung, Verpolungsschutz durch
Eingangsdiode
- Regulierte +5V über Jumper JP1 für eigene Applikationen herausgeführt
- LED1 für Betriebsspannung
- LED2 via Jumper an PD6 für einfache Statusanzeigen etc.
- RESET Taster
- ISP Anschluß 10-polig
- RS 232 Anschluß
- Trimmpoti für Kontrastreglung eines LCD-Displays (ab Rev 1.2)
- 75x100mm Platinengröße (ab Rev 1.3; vorher 79x100mm)
Hardware
Die Hardware orientiert sich an zahllosen anderen Schaltungsvorschlägen aus dem Internet. Neben der 4x8 IO-Pins ist beim AVR nicht viel zu tun. An XTAL1/2 liegt ein Quarz an, die beiden Kondensatoren C3,C4 sind Standardbeschaltung. Der RESET-Pin geht über R1 an den RESET-Taster. Der ISP-Anschluß ist "standard"-beschaltet, ein handelsüblicher ISP-Programmer mit 10-poligem Ausgang sollte also direkt passen. Die RS232-Anbindung an Pin RxD,TxD mittels MAX232 ist ebenfalls absolute Standardbeschaltung.Um einseitig routen zu können, wurden drei Drahtbrücken per Hand eingefügt.
Die Ports A..D stehen schließlich an den Buchsen SV_A..SC_D zur Verfügung. An Pin 1 der Buchse SV_X steht immer PortX0, an Pin 8 der Buchse PortX7 zur Verfügung, d.h. die Buchsen sind an allen Ports gleich beschaltet.
Die Steckerleisten etc. sind z.B. bei http://www.reichelt.de erhältlich. Produktnummern besonderer Bauteile bei Reichelt:
| Steckerleisten 10-polig | WSL 10G |
| Pfostenbuchsen 10-polig (SV_x) |
PFL 10 |
| RS232-Buchse (X2) |
D-SUB BU 09EU |
| Anschlußklemme 2-polig (X1) |
AKL 101-02 |
| Reset-Taster |
TASTER 3301B |
Es empfiehlt sich, für den ATmega einen Sockel einzubauen. Sinnvoll wäre auch die Nutzung eines Sockels für den Quarz. So kann man zwischen Prozessoren und zwischen CPU-Frequenzen einfach wechseln.
Statt des MAX232 kann auch ein MAX202CPE verwendet werden. (Dann langt es aus, statt der 1µF-Kondensatoren 0,1µF-Kondensatoren zu nehmen, man kann es aber auch bei den 1µF-Typen belassen).
Hinweis: Alle im folgenden gezeigten Bilder können durch Anklicken vergrössert werden.
Schaltplan
Weitere Links:Schaltplan Rev. 1.0
Belegung der Steckerleisten und Jumper
X1 - Power Supply Input
| Pin |
Funktion |
| 1 |
+8..15V DC |
| 2 |
GND |
JP1 - Jumper 1
VCC regulated for external applications.| Pin |
Funktion |
| 1 |
+5V regulated |
| 2 |
GND |
JP3 - Jumper 3
Variable voltage 0..VCC for control contrast of an external LCD display.| Pin |
Funktion |
| 1 |
0..VCC (controlled via R5) |
SV_x - Port Connectors
ATmegas Port A..D.| Pin |
SV_A Funktion |
SV_B Funktion | SV_C Funktion | SV_D Funktion |
| 1 |
PA0 |
PB0 |
PC0 |
PD0 |
| 2 |
PA1 |
PB1 |
PC1 |
PD1 |
| 3 |
PA2 |
PB2 |
PC2 |
PD2 |
| 4 |
PA3 |
PB3 |
PC3 |
PD3 |
| 5 |
PA4 |
PB4 |
PC4 |
PD4 |
| 6 |
PA5 |
PB5 |
PC5 |
PD5 |
| 7 |
PA6 |
PB6 |
PC6 |
PD6 |
| 8 |
PA7 |
PB7 |
PC7 |
PD7 |
| 9 |
GND (*) |
|
|
GND (*) |
| 10 |
+5V regulated (*) |
|
|
|
*: since Rev 1.1 only / erst ab Rev 1.1
SV1 - ISP Connector
| Pin |
Funktion |
| 1 |
MOSI |
| 2 |
VCC |
| 3 |
N.C. |
| 4 |
N.C. |
| 5 |
RESET |
| 6 |
GND |
| 7 |
SCK |
| 8 |
GND |
| 9 |
MISO |
| 10 |
GND |
X2 - RS232 Connector
| Pin |
Funktion |
| 1 |
N.C. |
| 2 |
TxD of AVR |
| 3 |
RxD of AVR |
| 4 |
=6 |
| 5 |
GND |
| 6 |
=4 |
| 7 |
=8 |
| 8 |
=7 |
| 9 |
N.C. |
Board Layout / Bohrungen
Alle Bohrungen 0.8mm ausser den folgenden:
- Stecker X1: Bohrungen mit 1.0 oder 1.2mm.
- Befestigungslöcher RS232 Buchse: 2.8mm.
Bestückungsplan
Ein Aufsichtsfoto nach erfolgter Bestückung
Revision 1.3a
Erweiterungen/Veränderungen gegenüber Revision 1.2:- Boardmaße reduziert auf 100x75mm, so dass man aus einer Europlatine zwei Boards herstellen kann
Revision 1.2
Erweiterungen gegenüber Revision 1.1:- Optionalen Trimmwiderstand R5 eingefügt. Dieser kann auf eine
Spannung zwischen 0..VCC eingestellt werden und dient der Erzeugung der
Kontraststeuerspannung eines LCD-Displays. Steuerspannung abgreifbar an
neuem Jumper JP3
Revision 1.1
Erweiterungen gegenüber Revision 1.0:- VCC/GND an SV_A verfügbar (Pin 10 und Pin 9)
- GND an SV_D verfügbar (Pin 9)
- Bauelemente und Leiterbahnführung wurden optimiert
Revision 1.0
In dieser Version waren jeweils nur Pin 1..8 der 10-poligen Wannenstecker belegt. Die Versorgungsspannung für eigene Applikationen mußten am dafür vorgesehenen Jumper JP1 abgenommen werden.Breakout Board für das ATmega Universal Board
Da die 10-poligen Wannenstecker fürs Experimentieren doch etwas fuzzlig sind, habe ich ein passendes Breakout Board entworfen, dass alle Pins auf Lötstifte führt.Breakout Board, Eagle-Dateien (Schaltplan und Board-Datei): ZIP
Weiterführende Links
-
PDF von Mikkel Holm Olsen: PCB
design tutorial with Eagle.
In diesem Tutorial wird ein ähnliches Board, allerdings für einen
"kleinen" ATmega 8 mit Eagle entwickelt. Mangels eines verlässlichen
Links im Internet hier als PDF.