AEQ-WEB

ATMega328 Microcontroller
ATMega328
05.09.2018

ATMega328 I/O & Ports

Der ATMega328 ein Mikrocontroller, der auch für das Arduino Uno Board verwendet wird. Dieser kann über den Arduino IDE mit einem vereinfachten C bzw. über Amtel Studio direkt in C programmiert werden. Der Mikrocontroller hat 20 I/O Pins, wovon 6 Pins auch analoge Werte einlesen können. Über vier Pins können auch PWM Signale erzeugt werden. Die restlichen 8 Pins sind für die Stromversorgung, den Schwingquarz (Taktgeber) und den Reset-Pin.


Stand Alone vs. Arduino

Es gibt bei beiden Varianten Vor- und Nachteile. Für Anfänger wird definitiv das Arduino Uno Board empfohlen, da die Ansteuerung der Pins wesentlich leichter ist als bei einem Stand Alone Mikrocontroller. Wer sich mit dem Arduino bereits gut auskennt, kann auch den Mikrocontroller ohne Board betreiben. Neben der Stromversorgung wird lediglich noch ein Taktgeber empfohlen, um den Chip zu betreiben. Außerdem unterscheidet sich die Pinbelegung zwischen dem Arduino Board und dem ATMega328 in der Software. Das folgende Bild zeigt die Pinbelegung vom ATMega328 und die vereinfachte Pinbelegung vom Arduino Board.


ATMega328 Pins & Ports - IO-Pins - Pinout

Der ATMega328 hat die I/O Pins auf drei Ports aufgeteilt. Port B und D sind digitale Ein- und Ausgänge. Der gesamte Port C unterstützt die digitalen I/Os auch, kann zusätzlich noch analoge Werte einlesen (0 bis 5 Volt). Um in C auf einen einzelnen Pin zugreifen zu können, muss der richtige Port gewählt werden und anschließend der Pin auf dem Port definiert werden. Nachfolgend gibt es eine Tabelle, die zeigt, wie die Pins und Ports adressiert sind.


Pinbelegung vom LCD
PORTB PIN REGISTER BIN
14 PORTB0 0b000001
15 PORTB1 0b000010
16 PORTB2 0b000100
17 PORTB3 0b001000
18 PORTB4 0b010000
19 PORTB0 0b100000
PORTC PIN REGISTER BIN
23 PORTC0 0b000001
24 PORTC1 0b000010
25 PORTC2 0b000100
26 PORTC3 0b001000
27 PORTC4 0b010000
28 PORTC5 0b100000
PORTD PIN REGISTER BIN
2 PORTD0 0b00000001
3 PORTD1 0b00000010
4 PORTD2 0b00000100
5 PORTD3 0b00001000
6 PORTD4 0b00010000
11 PORTD5 0b00100000
12 PORTD6 0b01000000
13 PORTD7 0b10000000