We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi from ARM newbie I found a nice simple example for a bit bit LCD hello world program. With uVision 3.33 (limited version that came with LM3S811 eval kit) i load the example and hit F7 to build. I immediately get this error: --- Error: can't execute 'C:\Keil\ARM\BIN\AA' The project settings are for the CARM compiler. Should I be using the Realview compiler instead ?
Thanks
OK thanks
I switched to the Realview Compiler and I don't get the error mentioned in the opening post, however, now the compiler is complaining about the commented lines in Startup.s ??????
Startup.s(3): error: A1163E: Unknown opcode Copyright , expecting opcode or Macro
This may be a steep learning curve. Maybe I can work through this one problem at a time. Even some of the non commented lines are not recognized as opcodes.
Startup.s(40): error: A1163E: Unknown opcode Mode_USR , expecting opcode or Macro
OK so I found the Startup.s file that is designed for Realview. That solve the compile errors with that file. Now the following error pops up :
Demo.axf: error: L6936E: Invalid value for --ro-base.
I don't have a clue as to what this means. Please help.
It always pays to read the error message literally:
The 'L' in "L6936E" no doubt identifies this as a Linker error - so the Linker Manual is going to be the place to look
I guess "--ro-base" must be a linker option that requires a value - and the value that you've supplied is not valid. Check the manual to see what constitutes a valid value
I found a place in the Target Options under Linker where you can put in a value for R/O Base which was blank. I entered 0X00 and hit F7. Did not get the error related to ro-base this time although I have no idea if 0X00 will work correctly. Now I get the following error:
Demo.axf: error: L6007U: Could not recognize the format of file ..\..\OBJ\Utility.obj.
The project has two obj files, utility.obj and lcd4.obj. I suppose this is the equivalent of .c files that have been compiled. Seems the compiler can't recognize the format of the obj file. I believe this project was done originally with CARM compiler and probably why I am having so many problems. Help would be appreciated.
"I suppose this is the equivalent of .c files that have been compiled."
Yes - the compiler translates source files (.c) to object files (.obj).
"Seems the compiler can't recognize the format of the obj file."
Not the Compiler - the Linker (spot that 'L' again).
"I believe this project was done originally with CARM compiler and probably why I am having so many problems."
Very likely. There is no particular reason to expect that the Linker in one toolset will accept and arbitrary object file from any other toolset.
You need to build the entire project using the same tools.
You also need to ensure that all the tool settings are equivalent.
What is best route to do this ? Can I get the CARM compiler to use with uVision3 since it's no longer included ??
I think you need to start by getting properly familiar with the tools that you have.
Why don't you just start with the examples, tutorials, etc for the compiler you're actually using?
Once you've got to understand the tools you have, then you can start thinking about porting stuff designed for other tools.
You need to learn to walk before you start trying to run!
The main reason I need to get these examples running is that they are the ones furnished with my development board, namely the MikroE EasyARM board with the LPC2148 MCU. They have all the nice little libs for I2C, SPI, LCD, etc. that one likes to play with. I sent MikroE a request for the source code for those library files so I might recompile in RealView. If they will not furnish those then I don't have a lot of choices but the go back to the CARM compiler that they used for their examples. There are some Keil examples for the LPC2100 family which probably will work with my dev board. You know the Hello World and Blinky ones. Not very much fun and I definitely do not want to reinvent I2C, SPI etc. Anyway thanks for your help. I would like to know if I can get the CARM compiler working with uVision3 in case I must go in that direction.
When you use the RealView compiler, you need to use the startup file that comes in the folder ..\ARM\RV30\STARTUP<\b>. So just replace the startup file of CARM with the correct version.