1. Boards
  2. LPCXpresso54114

LPCXpresso54114

NXP
LPCXpresso54114
VSCode with the Arm Keil Studio extension

Accelerate your application development with example projects

Import your chosen project to Keil Studio for VS Code or Keil Studio Cloud, or download for use in Keil uVision.

Learn more about Keil tools
  • ctimer_pwm_interrupt_example

    µVision AC6

    The Simple PWM Interrupt project is to demonstrate usage of the SDK CTimer driver as a PWM with interrupt callback functionsIn this example an IO pin connected to the LED is used as a PWM output line to generate a PWM signal.With an interrupt callback the PWM duty cycle is changed frequently in such a way that the LED brightness can be varied.

    Download Pack
  • low_power_cm0plus

    µVision AC6

    The multicore Low Power demo application demonstrates how to leverage the auxiliary core for periodicdata collection from sensors and passing the data to the primary core for further processing.The data from sensors is read with frequency of about 50Hz (every 20ms) by secondary core and storedinto a buffer. When the buffer contains 50 samples from sensors, the secondary core sends an interruptto the primary core to process the data. The primary core computes average values from temperature andpressure and then prints them with last values from other sensors to the console.The reading of data from sensors takes about 3ms, the rest of the time the cores are in deep sleepmode to reduce power consumption. In order to switch to deep sleep mode, the Power APIPOWER_EnterDeepSleep() is used and to wake it up the interrupt from uTick timer is used.When both cores can't go to the deep sleep mode (the primary core processes data or the secondary corereads data from the sensors), the core which has nothing to do goes to sleep mode by WFI. Also, whenthe primary core is switched to the sleep mode, the flash memory is powered down by Power APIPOWER_PowerDownFlash() and before waking up the primary core it is powered on by POWER_PowerUpFlash().The demo is based on:A. Fuks, "Sensor-hub sweet-spot analysis for ultra-low-power always-on operation," 2015 Symposium on VLSI Circuits (VLSI Circuits), Kyoto, 2015, pp. C154-C155.doi: 10.1109/VLSIC.2015.7231247URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7231247&isnumber=7231231

    Download Pack
  • µVision AC6

    The multicore Low Power demo application demonstrates how to leverage the auxiliary core for periodicdata collection from sensors and passing the data to the primary core for further processing.The data from sensors is read with frequency of about 50Hz (every 20ms) by secondary core and storedinto a buffer. When the buffer contains 50 samples from sensors, the secondary core sends an interruptto the primary core to process the data. The primary core computes average values from temperature andpressure and then prints them with last values from other sensors to the console.The reading of data from sensors takes about 3ms, the rest of the time the cores are in deep sleepmode to reduce power consumption. In order to switch to deep sleep mode, the Power APIPOWER_EnterDeepSleep() is used and to wake it up the interrupt from uTick timer is used.When both cores can't go to the deep sleep mode (the primary core processes data or the secondary corereads data from the sensors), the core which has nothing to do goes to sleep mode by WFI. Also, whenthe primary core is switched to the sleep mode, the flash memory is powered down by Power APIPOWER_PowerDownFlash() and before waking up the primary core it is powered on by POWER_PowerUpFlash().The demo is based on:A. Fuks, "Sensor-hub sweet-spot analysis for ultra-low-power always-on operation," 2015 Symposium on VLSI Circuits (VLSI Circuits), Kyoto, 2015, pp. C154-C155.doi: 10.1109/VLSIC.2015.7231247URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7231247&isnumber=7231231

    Download Pack
  • mailbox_interrupt_cm0plus

    µVision AC6

    The mailbox_interrupt example shows how to use mailbox to exchange message.In this example:The core 0(CM4) writes value to mailbox for Core 1(CM0+), it causes mailbox interrupton CM0+ side. CM0+ reads value from mailbox increments and writes it to mailbox registerfor CM4, it causes mailbox interrupt on CM4 side. CM4 reads value from mailbox incrementsand writes it to mailbox register for CM0 again.

    Download Pack
  • mailbox_interrupt_cm4

    µVision AC6

    The mailbox_interrupt example shows how to use mailbox to exchange message.In this example:The core 0(CM4) writes value to mailbox for Core 1(CM0+), it causes mailbox interrupton CM0+ side. CM0+ reads value from mailbox increments and writes it to mailbox registerfor CM4, it causes mailbox interrupt on CM4 side. CM4 reads value from mailbox incrementsand writes it to mailbox register for CM0 again.

    Download Pack
  • mailbox_mutex_cm0plus

    µVision AC6

    The mailbox_mutex example shows how to use mailbox mutex.In this example:The core 0 sends address of shared variable to core 1 by mailbox.Both cores trying to get mutex in while loop, after that updates shared variableand sets mutex, to allow access other core to shared variable.

    Download Pack
  • mailbox_mutex_cm4

    µVision AC6

    The mailbox_mutex example shows how to use mailbox mutex.In this example:The core 0 sends address of shared variable to core 1 by mailbox.Both cores trying to get mutex in while loop, after that updates shared variableand sets mutex, to allow access other core to shared variable.

    Download Pack
  • µVision AC6

    The MRT project is a simple demonstration program of the SDK MRT driver. It sets up the MRThardware block to trigger a periodic interrupt after every 250 milliseconds. When the PIT interrupt is triggereda message a printed on the UART terminal and an LED is toggled on the board.

    Download Pack
  • usart_dma_transfer

    µVision AC6

    The usart_dma example shows how to use usart driver with DMA:In this example, one usart instance connect to PC through usart, the board willsend back all characters that PC send to the board.Note: The example echo every 8 characters, so input 8 characters every time.

    Download Pack
  • usart_interrupt_rb_transfer

    µVision AC6

    The uart_interrupt_ring_buffer example shows how to use uart driver in interrupt way withRX ring buffer enabled:In this example, one uart instance connect to PC through uart, the board willsend back all characters that PC send to the board.Note: The example echo every 8 characters, so input 8 characters every time.

    Download Pack