SparkFun Forums 

Where electronics enthusiasts find answers.

Everything ARM and LPC
By s3034585
#75236
Hi Guys..

I am new to ARM Micros. I just got a LPC2378 olimex board and its example code. These files include all the basic files required for it, startup file, crto.s, LPC2378-ROM.ld, makefile.

Guys can some one pls help me understanding what are these files, why are they needed and how to write your own file.

Can some one pls give some pointers to learn this stuff.

Thanks
Tama
Last edited by s3034585 on Thu Jun 18, 2009 6:11 am, edited 1 time in total.
User avatar
By leon_heller
#75237
What development tools are you using?

Leon
By s3034585
#75245
I am using GCC and WINARM
User avatar
By leon_heller
#75247
Examine the examples to see how to write your own files.

Leon
By stevech
#75269
Not needing Linux, I began with an LPC2106 board and spent a lot of time reading the many examples on the net and in the Yahoo LPC2000 forum. Now doing LPC2129.

It helps a lot of you download and use a professional compiler/IDE, even the free limited versions, rather than the bare-metal WINARM.

I scrutinized all the product options carefully, and chose IAR and have been pleased with it and the J-Link JTAG for debugging.
By hsutherl
#75297
I'm going through the same process myself right now (with LPC2148) so I can give a lot of sympathy but not much help. If (like me) you're not that familiar with object file internals and so forth, its difficult to get up to speed.

Near the end of Arm Cross Development with Eclipse, James Lynch gives a detailed explanation of the linker command script, with some info on how the startup code sets things up for your C program. [edit] I think maybe this CD came with the jtag interface I bought through Sparkfun, not with the uC development board. Sparkfun has a link to the article on the product page with the ARM-USB-OCD programmer.

The manual for the linker itself is also helpful, if harder to wade through. I was astonished to see the default linker script (arm-elf-ld --verbose).

Make sure you have the 2378 user manual as well as the data sheet.

If you don't already have it, you'll want the Arm Architecture Reference Manual It's not terribly hard to find on their site, but, oddly, you must register before downloading it.

I started out exercising the hardware in assembly langauage only (in fact I just got the first mixed code of my own to run tonight). The part of the AS manual on sections is suprisingly readable.
By s3034585
#75302
thanks for your inputs guys..

I started with IDE first but there is always a code size limit on it and secondly all the low level stuff is hidden from the user.

I am more in favour of winarm and gcc..

initially there is a learning curve.

Hsutherl thanks for your comments.. I do have the data sheets and user manual..

will start wtih Arm Cross Development with Eclipse, James Lynch....
By gruberator
#75313
You can try to install IDE from rowley named CrossWorks, its a 1 month trial version, there is no limitation on size of the code. http://www.rowley.co.uk/
I'm using this IDE only to program my lpc2478, i'm compiling program in eclipse (yagarto toolchain) witch is completely free.
By stevech
#75341
I value the tools of the caliber of IAR and Keil, because in my job, there's little time available to learn tools as this isn't project funded. Such is life in the for-profit world. No time to muck about in make files and linker scripts.

So a good tool set's short learning curve is essential in this scenario.

Not so, hobby work.
I pity the student, trying to do something non-trivial on an impossible schedule with freeware tools. The Universities should buy and loan use of good tools. Like an apprentice carpenter being expected to build a house with a tack hammer, and the house better be perfect to become a journeyman.
User avatar
By leon_heller
#75345
Rowley offers low-cost educational licenses for all their software.

Leon
By s3034585
#75489
stevech: Its a valid point.

I am trying to diverge from electronisc design to firmware development. Hence started playing with ARM micro.. As this is mainly for self study cant afford to buy expensive IDE's.
By mucittin
#75687
Hello everybody,

i'm new to ARM too. I have developed several projects with microchip pic 16F and 18F series. Last week i said myself " Time to say hello to embeded world" and i bought an arm board with an processor ep9302 as a birthday gift to myself.I'm planning to focus on arm embeded and to develop projects on arm embeded for next years. Whas is your suggestion to new boy in embeded world? What sholud be the starting point? Which books and websites do u recommend?
By s3034585
#75733
Hi Mucittin..

I also starting playing with ARM recently. I think that the best point to start with is to have a development kit and some example code with it.

Start going through the example code and get familiar with ARM architecture.

At present i am trying to write my own code from scratch for LPC2378.
By phugoid
#76612
Also just getting started with the Olimex LPC-2378STK. Having a working "blinking LED" program and a half-decent OpenOCD config file really helps. Setting up a GNU toolchain on Linux turned out to be easy.

Two unusual resources I've run across:

A substantial project all written in assembler:
http://armpit.sourceforge.net/

A set of notes for a course where they write an OS over one semester, has exercises and guidance:
http://www.et.byu.edu/groups/ece425web/ ... sched.html
By millwood
#76613
I use Keil MDK on ARM, and have found it to be a great tool for me.

books don't seem to add lots of value to me. Instead, I play around with the sample files, try to add feature to them and make them do slightly different things, and in that process learn about the chips.

I often find myself going back to the datasheet so for me, those datasheets are far more important than the architecture books.

I guess my working in C helps a lot.