@A.K
Wow auf so eine geniale Lösung währe ich Lebtag nicht gekommen.
Aber ich hoffe es verstanden zu haben, falls nicht bitte korrigieren.
1) Glue setzt quasi string "a" und "b" lückenlos zusammen.
2) Das Makro "PORT(x)" wird im Code durch "GLUE(PORT, x)"
Und da der text "PORT",bereits vorhanden ist bleibt nur noch der
Platzhalter "x" übrig.
1 | #define PORT(x) GLUE(PORT, x)
|
3) An dieser Stelle wird im Code überall wo "LCD_PORT" vorkommt
durch "A" ersetzt.
#define LCD_PORT A
4) Und im letzten Schritt wird quasi der Platzhalter "x"
durch "LCD_PORT" ersetzt, in unseren Fall durch "A"
1 | #define LCD_PORT_DATA PORT(LCD_PORT)
|