GREETBoard – ATMega128

GREETBoard-ATMega128 - Version 1.1

GREETBoard-ATMega128 – Version 2

Version 2

Das Hauptmodul des GREETBoard Projektes ist ideal für den Einstieg in die Welt der AVR Mikrocontroller oder als Fertigmodul für eigene Projekte. Das Board ist mit einem leistungsfähigen ATMega128 ausgerüstet und bietet für Anfänger und Fortgeschrittene genügend Ressourcen. Durch die I²C-Schnittstelle kann dieses Board an viele Erweiterungen angeschlossen werden.

Das Modul passt bequem auf ein 1/4 Modul und verfügt über eine eigene Spanungsversorgung, eine Programmierschnittstelle und einen I²C-Anschluss. Zusätzlich werden die Ports A, B und D über 10-polige Wannenstecker vom GREETBoard ATMega128 zur Verfügung gestellt um eigene Projekte zu integrieren.

Darüber hinaus werden alle Ports, Reset, Eingangsspanung (9-15V), VCC und GND über Buchsenleisten zur Verfügung gestellt. Hier kann das GREETBoard Erweiterungsmodul angeschlossen werden. Dieses fügt dem Hauptmodul weitere Anschlussmöglichkeiten und Funktionen hinzu.

Schwierigkeitsgrad

GREETBoard - ATMega128 - SchwierigkeitsgradDa nicht jeder ein Löt-Profil oder Programmier-Crack ist, versuche ich die Module in Schwierigkeitsgrade aufzuteilen. Damit kann sich jeder entsprechend seiner persönlichen Fähigkeiten an die  verschiedenen Module und Programme heranwagen.

Auf diesem Modul befinden sich keine schwierigen Bauteile, daher ist es auch für Löt-Anfänger wunderbar lötbar.

Das GREETBoard ATMega128 ist für Beginner ideal! Für die Funktionen, die auf diesem Board integriert sind, ist der Programmier-Level sehr niedrig anzusetzen. Natürlich können hiermit auch sehr aufwendige und schwierige Programme realisiert werden, aber dies passiert erst mit zusätzlichen Modulen oder eigenen Schaltungen.

Eigenschaften

  • AVR ATMega1284-PU Mikrocontroller, u.a. mit:
    • 128k Speicher, 4k EEPROM, 16k RAM
    • 32 IO-Pins, davon 8 Analog/Digital Anschlüsse)
    • Sechs PWM-Kanäle
    • Zwei 8-Bit Timer
    • Zwei 16-Bit Timer
    • Zwei USART
  • 9-15V (AC) Eingangsspannung, verpolungssicher
  • 5V Spannungsreglung auf dem Board integriert
  • 3 LED, per Jumper zuschaltbar am Port C
  • 3 Taster, per Jumper zuschaltbar am Port C
  • Ports A, B, D über Wannenstecker verfügbar, Belegung entspricht Atmel-Standard
  • Alle Ports sind über Präzisionsbuchsen erreichbar und können mit Drähten z.B. an ein Breadboard geführt werden
  • Reset, Eingangsspannung, +5V und GND ebenfalls über Präzisionsbuchsen verfügbar
  • Reset-Taster
  • 16MHz Quarz platzsparend unter dem Mikrocontroller platziert
  • ISP Programmierschnittstelle über 10-pol. Wannenstecker verfügbar
  • I²C Bus ebenfalls über 10-pol. Wanenstecker verfügbar
  • I²C Pull Up Widerstand per Jumper aktivierbar
  • ca. 50 x 80 mm (1/4 Modul)

Modulübersicht

Das GREETBoard – ATMega128 verfügt über diverse Möglichkeiten Signale auszugeben und zu empfangen. Hier eine kurze Übersicht der verschiedenen Ein- und Ausgänge. Die rot umrandeten Buchsen stellen die Verbindung zum GREETBoard – ATMega128 Extension Modul dar. Über sie kann aber auch jeder I/O-Pin des Mikrocontrollers per Draht z.B. mit einem Breadboard oder anderen eigenen Schalungen verbunden werden.

GREETBoard-ATMega128 - Übersicht der Funktionen

GREETBoard-ATMega128 – Übersicht der Funktionen

 

Bestückungsplan

Bestückungsplan - GREETBoard ATMega128

Bestückungsplan – GREETBoard ATMega128

Stückliste

StückBauteilWert
5C1, C2, C5, C11, C14100nF (104)
2C3, C422pF
2C12, C13100µF (Elko)
1D11N 5059
4D6, LED1, LED2, LED3LED grün, 3mm
1IC1ATMega1284P-PU
1Q1Quarz, 16MHz
4R1, R2, R9, R1010k Ohm (br/schw/schw/rot)
4R3, R4, R5, R11220 Ohm (rot/rot/schw/schw)
4S1, S2, S3, Reset1Kurzhubtaster
1U2LM7805
5X1, X2, X3, X4, X510-pol. Wannensteckerbuchse (gewinkelt)
3X12, X13, X143-pol. Stiftleiste
2X9, X104-pol. Buchsenleiste
2X6, X78-pol. Buchsenleiste
1X820-pol. Buchsenleiste
1X11Hohlsteckerbuchse

Schaltplan

 

GREETBoard-ATMega128 - Schaltplan - Version 1.1

GREETBoard-ATMega128 – Schaltplan – Version 2

Erste Programme

LED blinken lassen

Das folgende Programm sorgt dafür, dass die drei LEDs alle 0,5 Sekunden ein- und wieder ausgeschaltet werden.

#ifndef F_CPU	//Definiere CPU-Takt
  #define F_CPU 16000000
#endif
#include <util/delay.h>
#include <avr/io.h>

int main (void) {
  DDRC |= (1 << DDC3);    // PC3 = Ausgang => LED1
  DDRC |= (1 << DDC4);    // PC4 = Ausgang => LED2
  DDRC |= (1 << DDC5);    // PC5 = Ausgang => LED3
  while(1) {	          // Endlosschleife
    PORTC |= (1<<PC3);    // Bit setzen LED1
    PORTC |= (1<<PC4);    // Bit setzen LED2
    PORTC |= (1<<PC5);    // Bit setzen LED3
    _delay_ms(500);       // halbe Sekunde warten
    PORTC &= ~(1<<PC3);   // Bit löschen LED1
    PORTC &= ~(1<<PC4);   // Bit löschen LED2
    PORTC &= ~(1<<PC5);   // Bit löschen LED3
    _delay_ms(500);       // halbe Sekunde warten
  }
}

Taster abfragen

Die Leuchtdiode 1 soll dann aufleuchten, wenn Taster 1 gedrückt wird. In dem Moment, in dem die Betätigung aufhört, soll auch die LED 1 erlöschen.

#ifndef F_CPU	         //Definiere CPU-Takt
  #define F_CPU 16000000
#endif 

#include <avr/io.h>

int main(void) {         // Hauptprogramm
  DDRC |= (1 << DDC3);   // PC3 = Ausgang => LED 1
  DDRC &= ~(1 << DDC2);  // PC2 = Eingang
  PORTC |= _BV(2);       // Pull Up an PC2 aktivieren 

  while(1){              // Hauptschleife    
    if (PINC & (1<<2)){  // Wenn Taste gedrückt...
      PORTC |= _BV(3);   // ...LED1 ein
    }
    else {               // ansonsten...
      PORTC &=~_BV(3);   // ...LED1 aus
    }
  }
}

Steckerbelegung

BezBeschreibungPinBelegungSymbol
X1Port-Buchse
Port A
1
2
3
4
5
6
7
8
9
10
PA0(ADC0)
PA1(ADC1)
PA2(ADC2)
PA3(ADC3)
PA4(ADC4)
PA5(ADC5)
PA6(ADC6)
PA7(ADC7)
GND
VCC
X2Port-Buchse
Port B
1
2
3
4
5
6
7
8
9
10
PB0
PB1
PB2(INT2)
PB3(OC0)
PB4
PB5(MOSI)
PB6(MISO)
PB7(SCK)
GND
VCC
X3Port-Buchse
Port D
1
2
3
4
5
6
7
8
9
10
PD0(RXD)
PD1(TXD)
PD2(INT0)
PD3(INT1)
PD4(OC1B)
PD5(OC1A)
PD6(OC2B)
PD7(OC2A)
GND
VCC
X4ISP
(In System Programmer)
1
2
3
4
5
6
7
8
9
10
MOSI
VCC
N/A
GND
Reset
GND
SCK
GND
MISO
GND
X5I2C1
2
3
4
5
6
7
8
9
10
SCL
GND
SDA
GND
VCC
GND
VCC
GND
12V
INT2
X9VCC Buchse1-8VCC
X10GND Buchse1-8GND
X11Spannungs-
versorgung
(verpolungssicher)
1
2
3
+9 bis 15V
GND
GND
X12Pull Up1-2
2-3
Aktiviert
Deaktiviert
X13LED1-2
2-3
Aktiviert
Deaktiviert
X14Tasten1-2
2-3
Aktiviert
Deaktiviert
X6
X7
X8
Buchsenleiste für externe Schaltungen und GREETBoard - ATMega128 ExtensionX6
1
2
3
4
5
6
7
8

PB0
PB1
PB2(INT2)
PB3(OC0)
PB4
PB5(MOSI)
PB6(MISO)
PB7(SCK)
X7
1
2
3
4
5
6
7
8

PC7
PC6
PC5
PC4
PC3
PC2
PC1 (SDA)
PC0 (SCL)
X8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

PB0
PB1
PB2(INT2)
PB3(OC0)
PB4
PB5(MOSI)
PB6(MISO)
PB7(SCK)
Reset
9-15V
GND
VCC
PD0(RXD)
PD1(TXD)
PD2(INT0)
PD3(INT1)
PD4(OC1B)
PD5(OC1A)
PD6(OC2B)
PD7(OC2A)

3 Gedanken zu „GREETBoard – ATMega128

    1. Das Foto ist noch nicht aktuell. Die neue Version ist mir leider im Koffer kaputt gegangen. Ich hatte, bei meiner letzten Dienstreise den Laptop und das GREETBoard ATMega128 im Koffer und die Schaltung hat gegen die Masse des Laptops keine Chance gehabt. Einige Bauteile waren total verbogen, als ich es ausgepackt habe. Das Gepäck wird wohl doch zu ruppig behandelt auf den Flugplätzen 🙁

Die Kommentare sind geschloßen.