I recently purchased a development board on eBay that will allow me to work with NXPs dual core LPC4337 ARM M4/M0 processor.
I have experience working with uVison4 from KEIL, for the FRDM-KL25 from Freescale, although I'd prefer to use the LPCxpresso environment from NXP.
With KEIL, all I'd needed was:
- The chip header file which was just full of macros for definitions (such as LPC43xx.h)
- The startup_(chip name).S file
- and the system_(chip name).c/.h file
If I had those, I could make a main.c program, include them and boom I'm off and working. The main reason I don't want to use KEIL in this application is because their multi-core support is sketchy where as LPCxpresso has been made by NXP to support the multi-core development.
With LPCxpresso, it isn't the same case with a bare-bones project. Supposedly there are some files that are generated that tie into the development environment and it isn't explained exactly what I have to do with those files.
NXP has many examples of code, all of which have full drivers and everything. Normally that'd be awesome, although I want to write my own drivers since I want to know exactly what is going on with as little overhead as possible.
I've asked on the LPCware forums but either they weren't too helpful or I just didn't understand them. This guy seemed to have a similar issue but he didn't post an updated project with everything he got working.
My point is, I'm having a really hard time getting a bare-bones minimum working project going like I could in KEIL. Has anybody been able to do this? Or what files do I need?
Best Answer
Ok, I'd comment to you but now I try to answer to your question.
At first, Which compiler(or IDE) is better? keil or LPCxpresso?
It completely depends on your job and yourself. Well there are many features for each one of them. for LPCxpresso:
for Keil:
Also you can see the µVision Simulator Benefits here.
If you ask me about selecting the compiler, I want to choose the Keil because this company has a bigger and older experience in designing and making the IDEs and compilers and also I can see some disadvantages for LPCxpresso. for example seems it doesn't support non-NXP products (ST and TI and freescale and etc) and you cannot find many consultant and expert for speaking with them to figure out your problems. on the other hand, if you just want to use the NXP products then I think the LPCxpresso is better than the Keil.
Why!? don't waste your time, Shannon! there are many HAL(Hardware Abstraction Layer (standard peripheral library)) that you can have a look at those and know exactly what is going on with as little overhead as possible. for example: the HAL library of company of your MCU or CMSIS or MBED.org lib and or etc.
a recommendation for choosing compiler:
if you have enough money, you can buy IAR(IAR Embedded Workbench for ARM) from IAR Systems. I have heared that it's the best compiler but you have to have enough skill for working with it.
I hope this will help you. if you still have any question, then ask in comment and if my knowledge is enough, I will answer you.
refrence:
Keil Wikipage
Advantages of the µVision IDE for ARM
Advantages of the µVision Simulator for ARM
LPCXpresso home
Mbed