Hello,
I want to get started with the new ARM chips from philips but not sure how :shock:
I want to use the GNU C compiler and I have ARM 20 wiggler
Does the flash utility from philips connect directly to the chip’s UART?
Gus
Hello,
I want to get started with the new ARM chips from philips but not sure how :shock:
I want to use the GNU C compiler and I have ARM 20 wiggler
Does the flash utility from philips connect directly to the chip’s UART?
Gus
First you need some hadrware, you already got the wiggler so half is done
next you should get LPC2xxx dev board, there are number of such around alerady.
ISP utility programs LPC parts via the internal uC bootloader, but this is not the best way for development as you can’t debug your code nor place breakpoints etc.
The major trade off for GNU tools so far is that they don’t work with LPC internal flash, i.e. all debugging should be done in RAM then when you finish you application you should re-compile it for Flash address ranges and program in the Flash with ISP. Take into consideration that for instance LPC2106 have 64K RAM and 128K Flash , so you will never be able to debug your complete code in RAM if it exceeds 64K.
So far the easies to use tool for LPC parts is Rowley CrossConnect C compiler. This is the only IDE/compiler which supports Flash programming and debug via wiggler. It’s important as code in Flash and in Ram will execute at different speed if internal PLL is adjusted to more than 20Mhz operation as Flash works with 0 wait states up to 20Mhz.
Best regards
Tsvetan
Hello,
I am new to GCC tools. I would like to know if it is possible to run MSP430 (mspgcc) with its Cygwin.dll and giveio on the same PC running OCD from Macraigor wiggler to LPC2106. (In the worst case I will settle for LPC only)
One CYGWIN directory setup seems to create problems (paths) since I have three different versions of cygwin.dll set by installation programs (one apps I have uses the third copy of this dll in its own dir)
Parallel port conflict for JTAG SW + XP professional?
Is there anywhere a “how to” document for detailed LPC GCC setup?
I do appreciate any help.
BTW, the HW is Olimex ARM, in transit since last Monday.
Thank you.
–roger
Hi,
I’m trying to compile the test software for the LPC-E2294 from the Olimex website (lpc-e22xx.zip). Unfortunately the compiler (and also me) cannot locate the include files inarm.h and iolpc2114.h. Are these files available somewhere?
Thanks!
Matthias
these files are included in EW-ARM package.
Tsvetan
Roger posted the following question:
Is there anywhere a “how to” document for detailed LPC GCC setup?
I created a nice GNU GCC/Eclipse tutorial for the LPC2106 using the New Micros TiniARM board, you can download the tutorial from their web site.
http://www.newmicros.com/download/appno … clipse.pdf
I’m working right now on a new and improved tutorial that uses the Olimex LPC2106 development board and the Olimex wiggler clone for jtag debugging. It’s about two weeks away, but I’ll have to find somebody who will host it.
Cheers,
Jim Lynch
we’ll host at Olimex site, let me know when you are ready
Tsvetan
:shock: That’s a huge tutorial - very nice!
-Nathan
Hi,
I bought the OLIMEX development board “LPC-H2294”.
When I plug it to my computer running XP pro. via a USB cable the power LED turns on and the other one blinks few seconds then turns off. I tried to connect via Hyperterminal to see if there is life in there but no luck!!
Can anyone help! How should I configure Hyper terminal to be able to talk to the computer?
Thanks
Jim, your tutorial is AWESOME!! What a great piece of work to share with the community. Thank you very much. I’m very much looking forward to new tutorial (drool).
I have an Olimex LPC-P2138 board on order from Sparkfun and am chomping at the bit to get started, so I decided to engage the tutorial as a preparation/learning exercise. I’m pleased that by following the steps in tutorial I was able to install a Cygwin/GNUARM cross-development on my WinXP machine and get the TiniARM example to build. However, my resultant build target is quite a bit different, and I’m completely baffled as to why, despite hours of searching for answers, and I’m hoping someone could help me:
The code is much bigger in my build, as shown my comparing the .map and .hex files. E.g. my .HEX file is 3978 bytes in length, instead of 2719 bytes for the NewMicro-built one.
Looking at the “a.lst” file from NewMicro, I see it was built with “frame_needed = 1” for functions “Initialize” “__main” (but no others, interestingly). None of the functions in my “a.lst” file were built with “frame_needed = 1”. I see nothing in the NewMicro sample files that would have tagged only these two as such. So how were they built that way? Does it matter for anything besides debugging ease?
The map files show different code layouts. The NewMicro-built map file shows the “Initialize” function at the start of the .text segment, but the map file from my build shows the “rx_query” function at the start of the .text segment. I need to learn more about ARM power-on code execution, but doesn’t this mean the “rx_query” code will execute before the “Initalize” code, thereby crashing the uC? Or am I worrying about nothing?
The only thing I’ve changed in the the NewMicro sample was adding the “all” and “clean” targets to the makefile as suggested by Jim. Every other file in the TiniARM example is untouched. The only build error I get is the same error as Jim got: “ivt.s:5: Warning: setting incorrect section attributes for .interp”.
I thought that maybe I had done something wrong in the Eclipse environment, but that’s not it - I get the exact same result when I “make clean all” from a WinXP console window.
I’m using the 3.4.3 GNU-ARM chain. This was the file I downloaded and installed:
bu-2.15_gcc-3.4.3-c-c+±java_nl-1.12.0_gi-6.1.exe
Size: 17,861,110 bytes
MD5SUM: 646c5806005ac652cdbc98f859ba332a
The NewMicro code was built with GNU-ARM 3.3, but could that cause all of the differences I’m seeing?
Any help would be greatly appreciated,
Thanks,
ESH
Thanks, ESH, for your very generous review. As Mr. Spock’s financee said, “I am honored!”
GNU and Eclipse are moving targets. In my new tutorial, I use the very latest stuff (Eclipse 3.1.0 CYGWIN 1.5.16-1 GNUARM GCC 4.0)
I’ve tried to write all the files myself, compatible with the GNU ARM assembler and C Compiler. The simple eprom LED blinker program is real short with no libraries included. It uses only 668 bytes of Flash and RAM.
If you are willing, I’ll send you my new tutorial in its current state with two zip files; one file has the minimum source/command files and the other is the whole project with the map I created.
It’s about 13 mbytes in all, just under the AOL limit.
Might be better to install the latest tools and the more carefully created program and compare notes on that. Otherwise, it’s apples versus oranges.
My e-mail address on AOL is lynchzilla@aol
Give me a shout if you’re interested.
Cheers,
Jim
Its a great tutorial.
Slowly trying to make a mac osx version
About halfway.
Its going to have to wait until exams etc are over
at uni.
Alex
Hello,
My LPC-E2129 and LPC-2138 boards have arived from spark, and I can’t wait to play! While waiting, I grabbed the tutorial, and followed it most of the way through.
I think the tutorial is wonderful, I’m not sure I could have installed the tools without it! There is a small problem, however, and I’m hoping someone will be able to help.
The tools seem to work, but I get the error:
make -k all
make: *** No rule to make target `all’.
Then when I try clean:
make -k clean all
make: *** No rule to make target `clean’.
make: *** No rule to make target `all’.
The makefile is in the source directory, and is exactly like the one on page 104(?) of the tutorial. The three entries:
C:\cygwin\bin;C:\cygwin\usr\local\bin;c:\program files\gnuarm\bin
are on my path.
I’ve googled and searched, and done everything short of pounding my head on the wall. (That just may work!)
Can anyone suggest what I need to look at?
Robert
You don’t need C:\cygwin\usr\local\bin on the path
Have you rebooted since installing and setting the path ?
I installed gnuarm to c:\gnuarm
Having things installed in directories with spaces in the name is a bad idea especially for programs that can been ported from linux/unix.
Installing to program files may cause the problem.
Thanks, alxx,
Yes, I have rebooted since. But your advice seems very reasonable. I looked and I installed gnuarm to Program Files, which does have the space. (As James directed in his tutorial.)
I’ll try to reinstall, and see if that does the trick.
How is your Mac OSX port going? I was only a Mac user, before I started playing with micros.
Thanks again,
Robert
Very slowly. If someone elses wants to take over
I’m happy to forward the files so far.
Haven’t had enough spare time to progress it.
Well I’d offer, but I’m a bit obsessed at the moment. My mac isn’t with me, and I really don’t want to part with the kind of dollars they sell for here. I’m not sure my understanding of the tools is good enough, either!
I did get that project to compile, now I have to work out how to do it on an LPC2129 or 2138. I’m glad I took your advice and moved the gnu tools, but that didn’t help with my problem. I ended up deleting the project and reloading, and re-reading the tutorial. Setting these chips up is a lot harder than any 8bit micro!
Robert
The limited free version of the keil tools is a lot easier to set up and use for windows.
Works with the keil compiler or gcc.
Just make sure to install gcc.
Using gcc with it is not limited only the keil debugger.
Can run into problems with gcc arm and eclipse
if you have other versions of cygwin or mingw installed.
Using the chips is no harder than a pic or avr etc.
Its just setting up the free software.
Very easy on linux , freebsd and mac osx
and can be a problem on windows.
The limited free version of the keil tools is a lot easier to set up and use for windows.
That has to be the understatement of the year! I got a project to build with the Kiel compiler, now to get one under gnu built.
I may give Crossworks a try, but it is time limited; think I’d just get addicted to its ease, and it would run out. The IDE cost about $1000 Canadian, which is too much for a hobbyist, like me. Should be able to port their server example to Kiel, though.
Robert
That said , I got gcc arm and eclipse working on
windows , and os x easily.
In keil to switch between keil c compiler and gnu c compiler is just select the box if you download the gc version that keil supplies.