I'm a newbie regarding Arm micro-controllers but have experience in programming and now I want to understand general GPIO programming on the Cortex M0+. To this end I have a LPC845Max development board and using the MCUXpresso IDE v11.1.1 in conjunction with the SDK_2.7LPCXpresso845MAX.
The driver_example from the SDK that I'm using is the gpio->gpio_led_output. I can follow along in the gpio_led_output.c file and get the _gist_ of that is happening but what I really need is a more thorough overview of the memory map of the GPIO related registers and the order in which these registers should be programmed.
Yes, I can delve into the functions like GPIO_XXX in the gpio_led_output.c file but this does not really help to understand the use of the registers.
I've googled for more detailed information but not found anything containing the explanation that I require. I suppose this information exists somewhere but it's eluded me so far.
Can anybody point me in to the information that I'm seeking?
The example that I'm using is interesting to me because it uses a button to input to a GPIO pin which (as far as I can guess) is set to cause an interrupt... But that's as far as I managed to guess.
There must be some sources of references from ARM or NXP that can help me to understand more about the example that I'm using so I can understand the code all the way down to the register level.
Are there any reference books that are recommended? I'd like to have your thought and suggestions how I can progress my learning about programming the Cortex M0+ in general and not specifically GPIO related..
Thanks
Ed
Hello Ed Sewell ,
Yes, please refer to User Manual , there is detail description about regsiters.
For example gpio:
Regards,
Alice
Start with the User Manual UM11029
https://www.nxp.com/webapp/Download?colCode=UM11029
This needs to be read alongside the manual for the board, so you know which pins are connected to which leds (or whatever)