Portierung SPLC nach AVR

Gast #3451489
Lesenswert?

Hallo!

Ich habe die ungnädige Aufgabe ein SED1530 Display mit einem Atmega zum 
Laufen zu bringen.

Zum Glück gibt es auf der Seite eines polnischen Programmierers
http://en.radzio.dxp.pl/splc501c
einen fertige Bibliothek in C, allerdings geschrieben für einen PLC2000 
µC.

Ich -bester Dinge- schreibe diese nun um. Dabei hakt es aber schon ganz 
zu Anfang:

In der Datei SPLC501C-LPC2100.c heißt es (gekürzt):
1
#define SPLC501C_SET  IOSET0

Wo findet sich dieses IOSET0 wieder?
Gast #3451515
Lesenswert?

Das scheint mir schon Displayspezifisch, hier ein etwas größerer 
Codeschnipsel:
1
#define SPLC501C_SET    IOSET0
2
#define SPLC501C_CLR    IOCLR0
3
#define SPLC501C_DIR    IODIR0
4
#define SPLC501C_PIN    IOPIN0
5

6
// control signals
7
#define SPLC501C_RD  (1 << 4)   /* pin PA8 -> E */
8
#define SPLC501C_WR  (1 << 5)   /* pin PA9 -> RW */
9
#define SPLC501C_A0  (1 << 6)   /* pin PA10 -> RS */
10
#define SPLC501C_RES (1 << 7)   /* pin PA11 -> RST */
11
#define SPLC501C_CS1 (1 << 8)   /* pin PA12 -> CS1B */
12

13
// first databus bit
14
#define SPLC501C_D0      16 /* first databus bit is pin PA0 */
15

16

17
void GLCD_InitializePorts(void)
18
{
19
volatile int i;
20

21
SPLC501C_SET = (SPLC501C_RD | SPLC501C_WR | SPLC501C_A0 | SPLC501C_RES | SPLC501C_CS1);
22
}

Nur finde ich dieses IOSET0 nirgendwo wieder, weder in den C-, noch in 
den H files.
#3451530
Lesenswert?

Was mich nur wieder in der Meinung bestärkt, dass es eine 
Controller-Spezifische bezeichnung ist.

Diese Definitionen sind vermutlich irgendwo in den Header-Files der 
Entwicklungsumgebung des PLC2000-Controllers versteckt.

Heißt der µC echt PLC2000?
Ich finde nicht mal nen Datasheet dazu.
#3451559
Lesenswert?

Soo, du bist witzig.
dank der Bezeichnung des C-files hab ich herausgefunden, dass der µC 
LPC2100 heißt. Und nicht wie von dir geschrieben PLC2000.

Und hier:
http://www.nxp.com/documents/user_manual/UM10114.pdf
auf Seite 114 findest du genau diese definitionen wieder.

Was die allerdings bedeuten, muss du schon selbst heruasfinden.

Prinzipiell finde ich, dass man zum portieren eines C-Codes von einem µC 
auf einen anderen zumindest schon mal auf zwei verschiedenen 
Mikrocontrollern entwickelt haben sollte.

C ist C , aber die µC-Architektur unterscheidet sich.

Aber man wächst ja mit seinen Aufgaben :)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren