Skip navigation

We found a timing issue in the Sensory TrulyHandsfree demo we have on the LPC54114 Audio/Voice Kit. This cause the "Hello Blue Genie" trigger phrase recognition to be less reliable than it should be. A fixed version is now available under the downloads tab for the Kit page. Here's a direct URL:

http://nww.preview.nxp.com/products/microcontrollers-and-processors/arm-processors/lpc-cortex-m-mcus/lpc1100-cortex-m0-plus-m0/lpc54114-audio-and-voice-recognition-kit:OM13090?&tab=Design_Tools_Tab

Rocky Song

LPC54114 dual-core example

Posted by Rocky Song Employee Dec 28, 2016

Some days before, there is a great post about LPC dual-core, LPC key feature_DualCore 

This time, we show a LPC5411x based dual-core example. It shows all aspects about dual-core development, startup, communicate, sync, mutex. Enjoy it:)

After extracted the attachement, it locates at "boards\lpcxpresso54114\multicore_examples\blinky\mdk\blinky.uvmpw"

(几天前,有一个非常棒的介绍LPC 双核使用的帖子,这一次,我们再奉献给大家一个在LPC54114上双核使用的例子,展示了双核开发、启动、通信与互斥的方方面面。位于附件解压后的 .\boards\lpcxpresso54114\multicore_examples\blinky\mdk\blinky.uvmpw

enjoy it:))。

---------------------------------------

(Below is the detail information about the demo, same as in "readme.txt")

Overview
========
The Multicore blinky demo application demonstrates how to set up projects for individual cores
on LPC5411x/10x dual-core system. In this demo, the M4 (master) releases the M0+ (slave) from the reset.
Both M0+ and M4 share a global variable who is interpreted as LED control, bit 0 for LED 1, bit 1
for LED 2, bit 2 for LED 3.
M4 side (Background):
Initialize board, application logic, and boot M0+ by setting M0+'s main stack, reset handler, and release M0+'s reset flag
Enter main loop. In main loop, M4 do below things every 20000 cycles.
1. Turn on green LED
2. Try lock the hardware mutex
3. Toggle red LED control bit, delay for sometime
4. Set M0+'s mailbox to the address of LED control variable, this will trigger M0+'s mailbox IRQ.
5. deliberately delay for a long time to simulate complex software execution.
5. Release mutex
M4 side (IRQ context)
In M4's mailbox IRQ handler (M0+ triggers it by writing non-zero to M4's mailbox),
Update LED states according to LED control variable value

M0+ side (Background)
1. After first POR or pin reset, M0+ runs M4/M0+ shared reset handler, and finds startup condition is not yet set, so go to sleep
2. After M0+ is reboot by M4 again sometime later, M4 already prepared M0+'s startup condition, so shared reset handler detect it
and jump to M0+'s app reset handler according to M4's settings
3. M0+ app's reset handler do basic initialization and jumps to M0+'s main()
4. In main(), M0+ just enables mailbox IRQ then enter main loop, the main loop is empty
M0+ side (IRQ context)
In parallel, once M4 write non-zero (in our case, the address of LED control variable) to M0+'s mailbox, M0+'s mailbox IRQ triggered. In mailbox IRQ handler:
1. Get the address of LED control variable,
2. try lock the hardware mutex, note that since M4 delibrately delay before releasing mutex, this try loop will cycle many times before successfully lock it.
3. toggles blue LED control bit , and write non-zero to M4's mailbox to trigger M4's mailbox IRQ.

Manual control
Press and hold down the SW1 button to hold M0 in reset state, release SW1 to release M0 from reset (M0 will restart).
Press and hold down SW2 button to prevent M4 from releasing hardware mutex, thus pauses the blinking
Toolchain supported
===================
- (Coming later) IAR embedded Workbench 7.80.2
- Keil MDK 5.21a

Hardware requirements
=====================
- Mini/micro USB cable
- LPCXpresso54114 board
- Personal Computer

Board settings
==============
No special settings are required.

Prepare the Demo
================
0. How to build
Open workspace (for KEIL, "boards\lpcxpresso54114\multicore_examples\blinky\mdk\blinky.uvmpw")
First build M0+ project, this will generate "core1_image.bin", which is M0+'s image bin file, M4 includes it as one assembly data section.
Then build M4 project, and download to flash.
Note: Do NOT try downloading M0+ build to flash, M0+ image is managed by M4.
1. Connect a micro USB cable between the PC host and the CMSIS DAP USB port (J7) on the board
2. (Optional) Open a serial terminal with the following settings (See Appendix A in Getting started guide for description how to determine serial port number):
- 115200 baud rate
- 8 data bits
- No parity
- One stop bit
- No flow control
3. Download the M4 project to the target board.
4. Either press the reset button on your board or launch the debugger in your IDE to begin running the demo.

Running the demo
================
After reset, the red and blue LEDs alternatively turned on and off, and green LED blink for a short time before each switch between red and blue. Green LED shows the period during which M4 holds h/w mutex. During it runs,
1. if you hold SW1 button down (M0 hold reset), the switch pauses and green LED keeps blinkying, and either red or blue LED is always on; after you release SW1, red and blue LED may turned on and off alternatively or altogether.
2. if you hold SW2 button down (M4 does not unlock mutex), the blink is all paused, after you release SW2, the blink resumes like before.
If you connect serial terminal, trace logs will be printed when you have button actions and when M4 take/give h/w mutex.

Customization options
=====================

We want people all over the world to get their hands on an LPC54608 development board (OM13092) - not just our large customers, so here's your chance ... 

 

 

By December 31, 2016, start your own discussion (put LPCXpresso54608 in your title) on our community in which you share how you might use a new or existing LPC microcontroller in an application, maybe it's a new feature or product you want to try, could be something you've already created or a new idea you want to create in 2017.  Be creative and have fun sharing ideas.  Up to 100 submissions (non-NXP employees) will be selected to receive an LPC54608 board (OM13092).  

 

thanks for sharing!

Justin

The year when two titans came together forming what is now the #1 supplier to the broad based MCU market.  To the industry, it was the year of the merger, clouded in uncertainty.

 

Not so for LPC. 

    While the world wondered, what might happen?  ... LPC simply got to work.

 

For the LPC team, 2016 marks a year of celebration – surpassing our goals and closing one of the most successful years in history.  But it was much more than just a banner year shipping microcontrollers, so many milestones were achieved,

 

  • we reinforced our core team, a collection of new and familiar faces
  • defined a new product roadmap & go to market strategy
  • rebuilt relationships with our global distributors and partners
  • listened to feedback and took immediate actions -
  • restructured & strengthened our global support infrastructure - an ongoing process
  • launched the LPC83x & LPC5411x families to market, establishing our team’s clear direction
    • LPC800 an entry-level 8-bit alternative at the right price
    • LPC54000 the mainstream MCU series for everyone
  • strengthened our ecosystem, traveling the world, rebuilding trust and visiting customers

 

For me personally, getting to know all of our LPC fans, customers and partners has been such a gratifying experience. Honestly, I have never met such a committed and hard working network of people supporting and using LPC around the world; you're the ones that make a world of difference, thank you!  

 

The energy level and encouragement is amazing!  I've loved our conversations together at events, comments on the community, and emails directly from you!

 

With 2016 coming to a close, it’s clear that LPC is NXP’s general purpose microcontroller business for the broad market.  We focus on our customers through products that are easy to use, well documented and supported online in this community.

 

Now what?

As we enter 2017, our campaign to inspire creativity across the globe moves to its second phase.  Focus on introducing what is quickly becoming our flagship microcontroller family, LPC546xx, which has the humble honor of following in the huge footsteps of the one of the most recognized and successful microcontrollers in history, LPC1768.  Later, we move to completing the highly anticipated expansion of the LPC800 MCU series.

 

Final Reflections

So, how will 2016 be remembered to us?  It was the year when a small group of hard working individuals came together as one team to build something great again.  Build something that has a lasting impression and changes the industry forever.  

 

What comes next from LPC is coming soon.  And we cannot wait to tell you about it.

Thank you for continuing to trust and believe in LPC.  

  Happy holidays and see you in 2017!

     - Justin Mortimer, Marketing manager

Our global ecosystem - from NXP field engineers to distributors and partners are training up on LPC and now more specifically, the newest LPC546xx family.  

 

But we also want to make sure the engineers actually using our MCUs in their application receive the same information directly from us ... we will continue to keep you updated & informed.

 

Links to a few of the recent presentations prepared by our LPC AE team,

 

State Configurable Timer

LPC key feature_SCT 

 

SPI Flash Interface

LPC key feature_SPIFI 

 

Graphics LCD Controller

LPC key feature_LCD 

 

Dual Core Architecture (found in LPC541xx)

LPC key feature_DualCore 

ARM just released some new, very thorough tutorials on how to use the LPCXpresso54114 board with MDK. Thanks to Bob Boys for this great work! Check them out at http://www.keil.com/appnotes/docs/apnt_294.asp

LPCXpresso54114

Links to material being referenced:

 

LPCXpresso IDE Download

 

Setup Guide

 

This guide will be the first of many entries where I will show you how to get started with LPC. Today this entry will focus on setting up the IDE and highlighting which products are supported by LPCXpresso IDE.

 

  1. Visit the link at the top of the post that will direct you to the LPCXpresso IDE page. As of this time, the current version is v8.8.2
  2. Click the gray download linkNote: You will need an account in order to download the IDE. Login or create an account
  3. Once signed in you will be presented with the following windowThis guide assumes you will install on Windows. The steps will be more or less the same regardless of which operating system is utilized for the installation. We will register the software in a later step.
  4. Once you've selected your operating system you will be presented with the following options

    It is always recommended that you download the most recent version of the IDE but links are provided for previous editions, if necessary.  Clicking on the link automatically starts the installer. Each installer serves as a standalone package. If you are upgrading to the newest version, keep in mind that the old version remains on the computer. You may opt to manually uninstall old versions.
  5. Once you launch the installer and agree to the licensing terms, you will be prompted for an installation directory. Use the default directory.

     

    Note: C:\nxp contains all LPCXpresso installations. You can open previous versions here if needed.

  6. Once the software installation finishes you will be prompted to install various drivers. You can select "Always trust software from 'NXP Semiconductors USA. Inc.'" to not have to individually approve each driver's installation.

  7. You will be presented with the following window once the installation process has completed. You are free to review the version documentation and the IDE User Guide if you wish.

  8. Once you launch LPCXpresso for the first time, you will be presented with the following window letting you know that you do not have an active license for the IDE. This limits you to debugging code up to 8k in size.
  9. In order to increase this limit we need to request a free license by clicking on help in the task bar. Then scrolling down to "Activate" and selecting "Create serial number and register (Free Edition)"
  10. A new window will come up with your serial number as shown below. Select "Open in external browser" to open up a browser window to generate the activation key.
  11. Once the new browser window loads you will be presented with your activation key listed below the serial number. Highlight and copy this key.
  12. We are going to follow a similar process to what we used to request the activation key but instead we will select "Activate (Free Edition)"
  13. Paste the activation key into the new window that pops up
  14. Once you press OK you will receive confirmation that your copy of LPCXpresso has been licensed. This allows you you to use all of the features of the IDE as well as raising your debug limit to 256k.
  15. You will be prompted to restart LPCXpresso and when it relaunches the welcome page will show that your copy is fully activated.

    Note: Once you have an activated key, this key will also be utilized by MCUXpresso in the future. 

 

This tutorial demonstrated how to set up the free edition of LPCXpresso, however, activating the Pro edition is very similar.

As of this writing LPCXpresso IDE v8.8.2 can be used to develop on the following platforms:

  • LPC81x/LPC82x/LPC83x
  • LPC11xx
  • LPC11Uxx
  • LPC11Exx
  • LPC12xx
  • LPC13xx
  • LPC15xx
  • LPC17xx
  • LPC18xx
  • LPC2xxx
  • LPC3xxx
  • LPC40xx
  • LPC43xx
  • LPC5410x/LPC5411x

 

Next week, I will demonstrate how to install and setup IAR and KEIL for LPC. In the coming weeks, once I have shown you how to configure the software environments I will post getting started guides with different LPCXpresso development boards. Stay Tuned!

In case you missed it, we extended our low cost LPC800 series, back in September with the addition of the LPC83x family. The LPC83x family introduces new functionality to our streamlined LPC800 series, which includes LPC81x and now LPC83x.  If more functionality is needed, our extremely popular superset LPC82x family is likely the one you need.

 

The LPC800 series is great 8- and 16-bit alternative for use in various systems, such as end node connectivity, gesture sensing for HMI, basic motor control, power line communication, battery power management … applications are endless from IoT smart home to building control, industrial automation, children’s toys, and more.

 

LPC83x Block Diagram

 

The LPC83x family includes option for 32 kB flash, with the addition of 18 ch DMA and up to 12 channel, 12-bit ADC.  Rich capability bundled with a low price has allowed LPC800 series to become the most actively quoted and fastest growing LPC family to date with millions of units shipping in 2016.

 

The LPC832, available in TSSOP20 with 16kB of flash, and LPC834 available in HVQFN33 with 32 kB of flash, is just the start of the LPC800 relaunch.  Just wait until 2017 when many new product families are launched to market!

LPC824-MAX (OM13071)

If the LPC83x fits your requirements for your next design, the recommended board to purchase is the LPC824-MAX (OM13071) and using the free LPCXpresso IDE, you can use code bundles for the LPC800 series to speed up your design.

 

For more information on the LPC83x family please visit the links below

LPC800 Series Summary

LPC832 Product Page

LPC834 Product Page

LPC824-MAX Development Board

LPCXpresso IDE Summary

So I am getting ready for Electronica and brought a bunch of boards home.  I was testing and packing everything when my daughter got her hands on one of the demos ... this is what happened.

 

 

Ok, so the title is somewhat of a stretch ... my daughter is 3, but my son is 2!  And although they didn't development the demo & flash the board ... they sure did love playing with the coloring demo!!

 

The demo my kids are fighting over is taken from our SDK using Segger emWin's graphics library.   It was really nice and easy to get up and running right out of the box.

 

This was the first time my kids were actually interested in my work

Our first software development kit (SDK) based leveraging the nice touch display   ... it may look simple, but the board is alive and working well! 

 

 

And if you didn't see our LPC54608 family introduction ... check it out here: Introducing the First LPC546xx Family

If you haven't heard, our LPC54000 power-efficient platform is expanding to address what our 10,000+ customers have been waiting for patiently ... an extension to some of our most popular devices in the market, including LPC1700.

 

The time has come ... lead customers are developing on the LPCXpresso54608 board now!

 

By the way, our LPC54000 platform may have a different part number nomenclature compared to what you have grown to love in our existing LPC families, but in the end, it's just a part number for ordering and marking.  So let me introduce the first of a few new LPC546xx families coming very soon ....

 

LPC5460x

 

This is our Baseline HMI & Connectivity MCU family for the industrial, IoT and general embedded markets, a great starting point for your development, which is why we will being this to market first.

 

The family leverages a 180MHz Cortex-M4 and fits a sweet spot with respect to balancing power and performance.  But the it is far more than just another Cortex-M4 and also more than just an LPC1700 series upgrade.  With options for up to 512Kbyte of Flash, 200Kbyte of SRAM, 16Kbyte EEPROM, and additional memory interface options, we thinkyou will like what you see.

 

e've combined some new features, such as a 12MHz power-optimized free running oscillator, trimmed to 1% accuracy over temperature and voltage.  A 5Msps 12-bit, 12-channel ADC, along with a bunch of peripherals you have grown to love, such as FS & HS USB, CAN, Ethernet, and a Graphics Display Controller.

 

With over 21 communication interfaces, including 10 Flexible Serial Interfaces, the key for this product family is flexibility, giving you option to customize the device for your application.

 

Standby as we start going deeper into the product details and software of this new product family!!

 

#LPCisBACK

Hi!  we love staying connected with all of our LPC customers, which is why it would be great if you could follow our LPC MCU community by clicking on the link from the main forum page.  This allows us to stay better connected and ensure you always receive the latest information direct from the product line.   Portfolio updates, announcements and more will be shared, so stay tuned.  By the way, we have a few design challenges planned and definitely want to make sure you hear the latest details as they are shared.  You can stop following at any time.

 

In case you missed any of our recent portfolio and roadmap blogs, you can find the direct links below,

  1. An Update on our Microcontroller Portfolio
  2. #LPCisBACK ... are you Ready for the Relaunch?
  3. LPC Outlines MCU Roadmap for the Broad Market

 

 

 

 

I added a direct link for easy reference to the recent press release where NXP reinforced their strong commitment to the LPC portfolio and our broad market customers. 

 

NXP’s Microcontroller Business Reinforces Market Commitment with Extended Product Longevity of Key LPC Products

 

The LPC team is really excited with what is in store, so stayed tuned for the latest updates.

 

lpcisback

Whooohooo  ... LPCXpresso54608 boards have arrived! ... development teams are hard at work finishing our release and preparing demos, lead customers have them in hand and we're looking good for our full market launch!  I can't wait for all of you to get a board in the coming months, so you can start developing and sharing what you have using the latest LPC MCU

 

#LPCisBACK

LPCXpresso54608_1

 

LPCXpresso54608_2

The LPC team is extremely excited to unveil today our new product introduction plans for the coming year.

 

But before I introduce our plans, I just want to say a few things about our team.  I am personally very proud to be part of this small, humble group of talented engineers.  We're a team of thinkers, tinkers and doers; we have a passion for innovation, creative thinking and finding ways to improve efficiency.  We come to office because we want to create something meaningful, but we're driven by seeing customers bring an application to life with our microcontroller.

 

Over the past decade, LPC has been adopted as the microcontroller of choice by tens of thousands of customers.  We have built a portfolio of products that people have come to love, and continue to come back to again and again.

 

Any success we have been fortunate enough to see has been because an engineer took a chance with LPC.  They believed in the product and put trust in us as a supplier.  We cannot thank you enough for that trust.

 

We have always had a clear focus - build products that everyone will want to use.  I guess you could say we built our portfolio around the needs of the broad market.  Sure we have won the confidence from a bunch of very large customers, but that was never our driving ambition.  Just the opposite, mass market is in our DNA.

 

So where are we going?   Back to where we started.  

The broad market.  

#LPCisBACK

 

We are doubling down on two areas that we believe in strongly and think help solve market challenges.

 

(1) Provide customers with a broad offering of 8/16-bit alternative microcontrollers within our Entry-level LPC800 Series, something we call the engineers toolkit.  We do this by bringing a number of new products to market over the coming year with new features and exciting innovation.  As you can see, the coming year will be busy, but certainly not the end of our ambitions.

 

(2) Leverage our Power-efficient LPC54000 Platform to bring to life a large, new family of microcontrollers, which we think follow nicely in the footstep of our most popular microcontrollers.  Starting with LPC546xx, we think you will see a lot of value in the updated peripherals, improved power and performance, added security and protection, and more.  But again, this is just the start.  When the time is right, we will outline the rest of the story.

LPC's 2017 Broad Market MCU Roadmap(click for larger version)

 

LPC is just one piece of our larger NXP microcontroller team, which includes Kinetis and i.MX.  These groups work together on various complementary programs that focus on tackling a variety of market opportunities.  We have a number of exciting ambitions planned in all of these groups, so stay tuned for continued announcements and market launches.

 

This first year has had its challenges, and I am sure that there will be more, but thank you for continuing to believe in us and our products.

LPCXpert V3.3 is the latest release of a freeware expert tool for the NXP CORTEX-M based LPC families of microcontrollers. This tool simplifies the selection of a MCU device, speeds up the creation of application code and initialization code and it supports generation of an application specific schematic symbol.

This version supports about 400 different CORTEX-M based micro controllers from NXP.

 

LPCxpert supports all phases of a development. During the MCU selection phase LPCxperts supports selection of a target MCU by providing selection features in the "MCU Select" tab. During the software implementation phase LPCxpert provides a graphical user-interface to configure the pinout (Pin-MUX) and the peripheral interfaces of the target device. LPCxpert also generates a framework of executable code that configures the Clock Generation Unit (CGU) and the peripheral interfaces of the device.

 

New and enhanced features include support for LPCopen software package from NXP. Features also include generation of a Schematic Symbol for the ALTIUM Designer and the CADSOFT EAGLE V6.2 and generation of projects for IAR Embedded Workbench (EWARM), Keil µVision and GNU C-Compilers, as well as links to Internet Sites for additional information.

 

Using LPCXpert it is possible to set the pins of each peripheral (i.e. for SPI, CAN., I2C, EMC, ETH, ...) and to configure the features of each pin (Pull-Up, Pull-Down, ...). In addition LPCxpert V3.2 also supports configuration of pre-built demo code for the LPC8xx and LPC54xxx Families of MCUs.

 

Based on the configuration LPCXpert may generate a C-Code Project or a Schematic Symbol. In addition LPCxpert saves up to 8 different pin-mux configurations and restore from up to 10 different configurations.

Additional Information and the download is available from the following Web-Site:

--> www.lpcxpert.com