??? 08/24/06 19:38 Read: times |
#122941 - C first Responding to: ???'s previous message |
Jon,
You need to learn C first. The preprocessor will turn this #define SW1 = P2_4 SW1=1; into this = P2_4=1; Which is not correct C code. Then, what's right in Keil does not need to be right in SDCC. SDCC is not Keil compatible for non-ANSI extensions. So sbit SW1 = 0xA4; tells SDCC there is some special function bit variable and it is initialized to 1 (0xA4 != 0). Your first define was closest to the right solution: #define SW1 P2_4 Maarten |
Topic | Author | Date |
SDCC Nooby Question | 01/01/70 00:00 | |
Ok got it | 01/01/70 00:00 | |
it\'s ok in Keil | 01/01/70 00:00 | |
Yes... | 01/01/70 00:00 | |
The reason is... | 01/01/70 00:00 | |
C first | 01/01/70 00:00 | |
Learning C | 01/01/70 00:00 | |
if this is cut and paste then | 01/01/70 00:00 | |
Semi-colon was it | 01/01/70 00:00 | |
C is fidgety about error declaration | 01/01/70 00:00 | |
Syntax error | 01/01/70 00:00 | |
Going back and looking... | 01/01/70 00:00 | |
It means | 01/01/70 00:00 | |
Preprocessor output | 01/01/70 00:00 | |
explanation | 01/01/70 00:00 | |
Semicolon | 01/01/70 00:00 | |
yes, Andy you are absolutely correct | 01/01/70 00:00 | |
Semicolon - example | 01/01/70 00:00 | |
backwards | 01/01/70 00:00 | |
HUH? | 01/01/70 00:00 | |
try this | 01/01/70 00:00 | |
Dallas app notes | 01/01/70 00:00 | |
False economy | 01/01/70 00:00 | |
OK | 01/01/70 00:00 | |
Learning from the tools | 01/01/70 00:00 | |
#define and the preprocessor | 01/01/70 00:00 | |
are you sure? | 01/01/70 00:00 | |
Yes! | 01/01/70 00:00 | |
Hmmm... | 01/01/70 00:00 | |
SDCC Manual | 01/01/70 00:00 | |
Err... ya think? | 01/01/70 00:00 | |
Looks clear enough to me | 01/01/70 00:00 |