1.. zephyr:board:: lpcxpresso55s06 2 3Overview 4******** 5 6The LPCXpresso55S06 board provides the ideal platform for evaluation 7of the LPC55S0x/LPC550x MCU family, based on the Arm® Cortex®-M33 8architecture. Arduino® UNO compatible shield connectors are included, 9with additional expansion ports around the Arduino footprint, along 10with a PMod/host interface port and MikroElektronika Click module 11site. 12 13Hardware 14******** 15 16- LPC55S06 Arm® Cortex®-M33 microcontroller running at up to 96 MHz 17- 256 KB flash and 96 KB SRAM on-chip 18- LPC-Link2 debug high speed USB probe with VCOM port 19- MikroElektronika Click expansion option 20- LPCXpresso expansion connectors compatible with Arduino UNO 21- PMod compatible expansion / host connector 22- Reset, ISP, wake, and user buttons for easy testing of software functionality 23- Tri-color LED 24- UART header for external serial to USB cable 25- CAN Transceiver 26- NXP FXOS8700CQ accelerometer 27 28For more information about the LPC55S06 SoC and LPCXPresso55S06 board, see: 29 30- `LPC55S06 SoC Website`_ 31- `LPC55S06 User Manual`_ 32- `LPCXpresso55S06 Website`_ 33- `LPCXpresso55S06 User Manual`_ 34- `LPCXpresso55S06 Development Board Design Files`_ 35 36Supported Features 37================== 38 39The lpcxpresso55s06 board configuration supports the hardware features listed 40below. For additional features not yet supported, please also refer to the 41:zephyr:board:`lpcxpresso55s69` , which is the superset board in NXP's LPC55xx series. 42NXP prioritizes enabling the superset board with NXP's Full Platform Support for 43Zephyr. Therefore, the lpcxpresso55s69 board may have additional features 44already supported, which can also be re-used on this lpcxpresso55s06 board: 45 46+-----------+------------+-------------------------------------+ 47| Interface | Controller | Driver/Component | 48+===========+============+=====================================+ 49| NVIC | on-chip | nested vector interrupt controller | 50+-----------+------------+-------------------------------------+ 51| SYSTICK | on-chip | systick | 52+-----------+------------+-------------------------------------+ 53| IOCON | on-chip | pinmux | 54+-----------+------------+-------------------------------------+ 55| GPIO | on-chip | gpio | 56+-----------+------------+-------------------------------------+ 57| USART | on-chip | serial port-polling; | 58| | | serial port-interrupt | 59+-----------+------------+-------------------------------------+ 60| CLOCK | on-chip | clock_control | 61+-----------+------------+-------------------------------------+ 62| RNG | on-chip | entropy; | 63| | | random | 64+-----------+------------+-------------------------------------+ 65| IAP | on-chip | flash programming | 66+-----------+------------+-------------------------------------+ 67 68Other hardware features are not currently enabled. 69 70Currently available targets for this board are: 71 72- *lpcxpresso55s06* 73 74Connections and IOs 75=================== 76 77The LPC55S06 SoC has IOCON registers, which can be used to configure 78the functionality of a pin. 79 80+---------+-----------------+----------------------------+ 81| Name | Function | Usage | 82+=========+=================+============================+ 83| PIO0_5 | GPIO | ISP SW4 | 84+---------+-----------------+----------------------------+ 85| PIO0_29 | USART | USART RX | 86+---------+-----------------+----------------------------+ 87| PIO0_30 | USART | USART TX | 88+---------+-----------------+----------------------------+ 89| PIO1_4 | GPIO | RED LED | 90+---------+-----------------+----------------------------+ 91| PIO1_6 | GPIO | BLUE_LED | 92+---------+-----------------+----------------------------+ 93| PIO1_7 | GPIO | GREEN LED | 94+---------+-----------------+----------------------------+ 95| PIO1_9 | GPIO | USR SW3 | 96+---------+-----------------+----------------------------+ 97| PIO1_18 | GPIO | Wakeup SW1 | 98+---------+-----------------+----------------------------+ 99 100System Clock 101============ 102 103The LPC55S06 SoC is configured to use the internal FRO at 96MHz as a 104source for the system clock. Other sources for the system clock are 105provided in the SOC, depending on your system requirements. 106 107Serial Port 108=========== 109 110The LPC55S06 SoC has 8 FLEXCOMM interfaces for serial 111communication. One is configured as USART for the console 112and the remaining are not used. 113 114Programming and Debugging 115************************* 116 117Build and flash applications as usual (see :ref:`build_an_application` 118and :ref:`application_run` for more details). 119 120Configuring a Debug Probe 121========================= 122 123A debug probe is used for both flashing and debugging the board. This 124board is configured by default to use the LPC-Link2 CMSIS-DAP Onboard 125Debug Probe, however the :ref:`pyocd-debug-host-tools` does not yet 126support the LPC55S06 so you must reconfigure the board for one of the 127J-Link debug probe instead. 128 129First install the :ref:`jlink-debug-host-tools` and make sure they are 130in your search path. 131 132Then follow the instructions in 133:ref:`lpclink2-jlink-onboard-debug-probe` to program the J-Link 134firmware. Please make sure you have the latest firmware for this 135board. 136 137Configuring a Console 138===================== 139 140Connect a USB cable from your PC to J1 (LINK2), and use the serial 141terminal of your choice (minicom, putty, etc.) with the following 142settings: 143 144- Speed: 115200 145- Data: 8 bits 146- Parity: None 147- Stop bits: 1 148 149Flashing 150======== 151 152Here is an example for the :zephyr:code-sample:`hello_world` application. 153 154.. zephyr-app-commands:: 155 :zephyr-app: samples/hello_world 156 :board: lpcxpresso55s06 157 :goals: flash 158 159Open a serial terminal, reset the board (press the RESET button), and you should 160see the following message in the terminal: 161 162.. code-block:: console 163 164 ***** Booting Zephyr OS v3.0.0 ***** 165 Hello World! lpcxpresso55s06 166 167Debugging 168========= 169 170Here is an example for the :zephyr:code-sample:`hello_world` application. 171 172.. zephyr-app-commands:: 173 :zephyr-app: samples/hello_world 174 :board: lpcxpresso55s06 175 :goals: debug 176 177Open a serial terminal, step through the application in your debugger, and you 178should see the following message in the terminal: 179 180.. code-block:: console 181 182 ***** Booting Zephyr OS zephyr-v3.0.0 ***** 183 Hello World! lpcxpresso55s06 184 185.. _LPC55S06 SoC Website: 186 https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/lpc5500-cortex-m33/lpc550x-s0x-baseline-arm-cortex-m33-based-microcontroller-family:LPC550x 187 188.. _LPC55S06 User Manual: 189 https://www.nxp.com/docs/en/user-guide/UM11424.pdf 190 191.. _LPCxpresso55S06 Website: 192 https://www.nxp.com/design/development-boards/lpcxpresso-boards/lpcxpresso-development-board-for-lpc55s0x-0x-family-of-mcus:LPC55S06-EVK 193 194.. _LPCXpresso55S06 User Manual: 195 https://www.nxp.com/docs/en/user-guide/LPCXpresso55S06UM.pdf 196 197.. _LPCXpresso55S06 Development Board Design Files: 198 https://www.nxp.com/downloads/en/design-support/LPCXPRESSSO55S06-DESIGN-FILES.zip 199