Hallo,
bin grad mehr oder weniger frisch in der Mikrocontrollerprogrammierung
eingestiegen und hab da mal eine Verständnisfrage.
Ich wollte ein LCD-Display an meinen ATmega128 anschließen und mal
kucken was passiert. Und bin dabei über folgende Codezeilen gestoßen.
1 | /*
|
2 | * Copyright: Fabian Maximilian Thiele mailto:me@apetech.de
|
3 | * Author: Fabian Maximilian Thiele
|
4 | * Remarks: this Copyright must be included
|
5 | * known Problems: none
|
6 | * Version: 1.1
|
7 | * Description: Graphic Library for KS0108- (and compatible) based LCDs
|
8 | *
|
9 | */
|
10 |
|
11 | #include <inttypes.h>
|
12 | #include <avr/pgmspace.h>
|
13 |
|
14 | #ifndef KS0108_H
|
15 | #define KS0108_H
|
16 |
|
17 | // Ports
|
18 | #define LCD_CMD_PORT PORTA // Command Output Register
|
19 | #define LCD_CMD_DIR DDRA // Data Direction Register for Command Port
|
20 |
|
21 | #define LCD_DATA_IN PINC // Data Input Register
|
22 | #define LCD_DATA_OUT PORTC // Data Output Register
|
23 | #define LCD_DATA_DIR DDRC // Data Direction Register for Data Port
|
24 | // Command Port Bits
|
25 |
|
26 | #define D_I 0x00 // D/I Bit Number
|
27 | #define R_W 0x01 // R/W Bit Number
|
28 | #define EN 0x02 // EN Bit Number
|
29 | #define CSEL1 0x03 // CS1 Bit Number
|
30 | #define CSEL2 0x04 // CS2 Bit Number
|
Speziell interessieren mich die letzten fünf Zeilen.
Ich weiß, dass die Pin D/I, R/W, EN, CSEL1 und CSEL2 an die Pins PC0 bis
PC4 gehören (oder etwa nicht)?
Welche Syntax steckt denn da dahinter?
Ich meine aus den 5 Zeilen lese ich als Anfänger nicht das die zu PortC
gehören. Hab auch schon das AVR-GCC-Tutorial bemüht aber nix so richtig
gefunden (es sei denn es hat was mit "Vordefinierte Bitnummern für
I/O-Register" zu tun).
Würde mich über eine Antwort freuen =)