Content originally posted in LPCWare by MarcVonWindscooting on Mon Nov 18 12:53:02 MST 2013
Quote: DodigI
Dear community & NXP,
3) ... I want to use the library with professional tools like Keil MDK on custom boards like 99% of other developers.
Developer
If you haven't got any answer, yet, your assumption of point 3) may be wrong, especially the number 99 :p
I can't speak for NXP nor can I speak for the community. I don't use LPCOpen.
However, from my own activities (LPC2106, LPC213x, LPC17xx, LPC111x, LPC800) I know how difficult it can be to create a portable interface - especially for the GPIOs. LPC1100 has a quite different concept of accessing GPIOs compared to LPC800 or LPC2000.
LPC800 and LPC2000 are very different, too. So I guess that macro doubling is (finally) the result of such differences.
I seem to be an old-fashioned developer. Instead of having an library do an abstraction of the microcontroller for me I read the manuals, try to figure out the differences of the uCs and then I try to take advantage of the differences. For example, I do like the USART of LPC800 much more than the other UARTs because NXP finally kicked that '550 standard UART' (BS) with its highly non-intuitive initialization and interrupt handling.
I make heavy use of library code, but that code is rather hardware-independend - portable by definition.
tldr;
If you need to unleash full potential of your microcontroller, you have to do the critical stuff on your own.