Hallo,
ich versuche dieses Projekt auf meinem Launchpad umzusetzen:
http://embedded-funk.blogspot.de/2013_11_01_archive.html
Im .h-File steht die Zeile:
1 | #define RAM_CODE_LEN (RAM_CODE_END_ADDR - RAM_CODE_START_ADDR + 1)
|
Sie errechnet die Länge eines RAM-Speicherabschnitts.
Eingesetzt wird der Wert dann im .cmd-File. Zweck der Übung ist es im
RAM-Speicher einen Block für Code freizuhalten:
1 | MEMORY
|
2 | {
|
3 | ...
|
4 | RAM_CODE : origin = RAM_CODE_START_ADDR, length = RAM_CODE_LEN
|
5 | ...
|
6 | }
|
Mein CodeKomposter (CCSv4CoreEdit) sagt mir bei kompilieren:
*** expecting "")"" instead of "-" ***
Er will also nix rechnen sondern lieber dass ich einen Wert eingebe und
danach die Klammer zu mache ...
Darauf kann ich mir irgendwie keinen Reim machen.
1 | //Theorethisch müsste doch
|
2 | #define var1 (0x0001)
|
3 | //gleichwertig sein mit
|
4 | #define var1 (0x0002-0x0001)
|
5 |
|
6 | //bzw ... wie in meinem Beispiel ...
|
7 | #define a (0x0002)
|
8 | #define b (0x0001)
|
9 | #define var1 (a-b)
|
Kompiliert wird der Code aber nur mit dieser Variante:
1 | #define RAM_CODE_LEN (0x0080)
|
Was mach ich falsch?
Gruß
Hans