Hi All! Have a situation with dallas' DS5250: Keil configuration: Memory Model - Large variables in XDATA Code ROM size - Contiguous mode 512kB User segments: ?PR?MYFUNC?MYFUNC (C:140H)
I'd like to reserve a data space in RAM1. Now, as it can be seen from configuration, I use a part of RAM1 for "MYFUNC" and all is OK. But any attempts to make a data array 256B in the RAM1 cause error messages that "memory overlaped" and some else.
I'm a newbie in the DS5250, so I think, my problem is in syntax in the command line. Please, can anybody help me?
Now I've written DT instead of ID: ?DT?INNERDATA?INNERDATA (C:300H) but the same error L110. I understand, that Keil wants to see where I've declared the array and how long is it. Thus, I wrote in a project:
uchar data innerdata[16];
Keil have changed error message, now it is : ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: INNERDATA, this error for some reason (?) applied to all files in the project. I do something wrong.
"I do something wrong."
Yes. You have selected the "trial and error" methodology. It is known to produce long sequences of failures.
How can you have multiple public definitions? Do you have the variable in multiple C files? Or did you add your line in a header file, resulting in one copy of the variable for every C file including that header file?
How can you have multiple public definitions? Do you have the variable in multiple C files? I don't have this variable in multiple C files. I've specially wrote ?DT?YOUNGLADY?YOUNGLADY.... in the command line to avoid any random conflicts of names:) The problem is in the syntax in the command line, I wrote something wrong. Where can I find examples of declarations in the command line?
I wrote in a project:
No, you cannot write that in a Project - it must be in either a .c source file or a .h header file.
So - what did you actually do?
OK, I've uploaded the project: rapidshare.com/.../TESTER.rar
There is the Bird() function that located at RAM1 (address 0x80). Please, can you create an array (for example, at address 0x120), with length of 100 bytes?