There was a wide GPIO functions in the CMSIS initial versions which made easy setting and initialization of interrupts,like:

void    GPIO_IntCmd (uint8_t portNum, uint32_t bitValue, uint8_t edgeState)
Enable GPIO interrupt (just used for P0.0-P0.30, P2.0-P2.13). 

FunctionalState     GPIO_GetIntStatus (uint8_t portNum, uint32_t pinNum, uint8_t edgeState)
Get GPIO Interrupt Status (just used for P0.0-P0.30, P2.0-P2.13). 

void    GPIO_ClearInt (uint8_t portNum, uint32_t bitValue)
Clear GPIO interrupt (just used for P0.0-P0.30, P2.0-P2.13). 

Above functions made easy enable interrupt for LPC1768 MCU,but know i want do same for LPC1788, I am using latest CMSIS version which does not support none of the above functions(there are only direction definition and read/writing functions). whats their alternative in the new versions?

  • \$\begingroup\$ Do you have a link the CMSIS library you are using? \$\endgroup\$ – Funkyguy Nov 10 '15 at 20:47
  • \$\begingroup\$ I download latest version from Keil's website. \$\endgroup\$ – Mahmoud Hosseinipour Nov 11 '15 at 4:49
  • \$\begingroup\$ You are using MDK5? Is there any reason you aren't just using the supporting code from NXP found on lpcware.com? I can point you to the exact spot where your functions are supported in that code but I'm confused on what you mean by the latest code from Keil \$\endgroup\$ – Funkyguy Dec 17 '15 at 18:03
  • \$\begingroup\$ Yes,I'm using latest MDK 5.17 version now,I'm using it's cmsis library(4.5 version) because it's latest and new updated version ,but version in the lpcware was not updated since 2011,I mean latest CMSIS software pack library(4.5) is accessible with keil mdk software pack but it does not have many peripheral libraries such as EMC,TIMER,WDT,PWM and etc,and also new version libraries don't have many of the last version's functions. \$\endgroup\$ – Mahmoud Hosseinipour Dec 18 '15 at 14:27

There are no newer versions of these functions, because neither older ones ever existed!

To clarify myself these are not CMSIS functions. Downloading the official package from NXP, in either version will not include them.

These are functions from a different peripheral library, that you downloaded along the CMSIS (either explicitly without remembering it, or implicitly by your IDE itself). CMSIS has nothing to do with what you try to accomplish.

You need a peripheral library to get such functions.You may:

  • Identify which library you were using before and download it again combining it with the newest CMSIS version.
  • Download another peripheral library, like for example LPCOpen by NXP
  • Write these functions your own.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.