NXP LPC17xx ARM Cortex-M3 Microcontroller - Programming Tips & Tricks
by Wilfried Voss
We at Copperhill Technologies have developed a series of embedded solutions for the CAN and SAE J1939 industry, which are all based on either the NXP LPC1754 or NXP LPC1768 processors, depending on the application requirements.
I personally consider embedded programming one of the most intriguing and creative tasks in the world of technology with hardware design claiming a close second place. All this remains true as long as things go smooth and all your software libraries do what you expect them to do. This is also a scenario where the Internet is of great help, meaning if you need help with programming, for instance, the UART of an ARM Cortex-M3 microcontroller, you will find tons of code that all look very similar (because they have been copied numerous times, sometimes even illegally by ignoring the manufacturer’s copyright message).
However, there can be a problem with freely available but unproven source code. Most of the code examples I found through the Internet did, in the least, not meet my very personal standards of readable code. It is a sad fact that many embedded programmers post their code in a very poor condition, where lack of comments is the least shortcoming. As a first step, I usually take the code I found and reformat it for readability without changing any functionality.
Things become worse when the code works only under certain conditions, and that was true, for instance, in the case of programming the UART, where the original KEIL code works only up to 115,200 baud. I started some research on the issue and found a working solution, which I will, among many other programming samples, post on this section of our website. This "little" problem and many other "researches" inspired me to share my knowledge and support fellow programmers with working sample code.
Note: This is a work in progress, and posts will be added frequently.
Table of Contents
- The NXP 17xx Microcontroller Family - In Preparation
- The LPCXpresso1769 Development Kit - In Preparation - https://www.embeddedartists.com/products/lpcxpresso/lpc1769_cmsis_xpr.php
- The MCUXpresso Integrated Development Environment (IDE) - In Preparation
- IAP Flash Programming - In Preparation
More information to follow...