Information Center for ARM

Example description

  
     
################################################################################
#
#                             unique_board_id.eww
#
# $Revision: 32 $
#
################################################################################

DESCRIPTION
===========

  This example project shows how to use the IAR Embedded Workbench for ARM to
  develop and debug a code for Raspberry Pi RP2040. The source code of the example
  is part of the Raspberry Pi Pico SDK Examples pack and uses Pico SDK version 1.3.0.

  RP2040 does not have a unique on-board ID, but this is a standard feature
  on the NOR flash it boots from. There is a 1:1 association between RP2040
  and the flash, so this can be used to get a 64 bit globally unique board ID
  for an RP2040-based board, including Pico.

  The pico_unique_id library retrieves this unique identifier during boot and
  stores it in memory, where it can be accessed at any time without disturbing
  the flash XIP hardware.

  This project includes a second stage bootloader with the following supported
  devices: W25Q080, W25Q16JV, AT25SF081, S25FL132K0
  The required checksum is automatically generated and added at the end of the
  bootloader area during the linking process.

  Debugger wiring connections
  ---------------------------
  The table below considers the ARM20 connector.

  | ARM20      | RPi Pico   |
  | header     | board pad  |
  | ---------- | ---------- |
  | 1          | 3V3        |
  | 4          | GND        |
  | 7          | SWDIO      |
  | 9          | SWCLK      |

  The table below considers the MIPI10/20 connector.

  | MIPI10/20  | RPi Pico   |
  | header     | board pad  |
  | ---------- | ---------- |
  | 1          | 3V3        |
  | 3          | GND        |
  | 2          | SWDIO      |
  | 4          | SWCLK      |

  More information at: https://developer.arm.com/documentation/ka001776/latest

  NOTE:
  -----
  The example project uses an experimental and partial port of Pico SDK for the
  IAR compiler!

  Pico SDK and Pico SDK Examples are distributed under the following licenses:
  https://github.com/raspberrypi/pico-sdk/blob/master/LICENSE.TXT
  https://github.com/raspberrypi/pico-examples/blob/master/LICENSE.TXT

  For the complete Pico SDK:
  https://github.com/raspberrypi/pico-sdk

  For the complete Pico SDK examples:
  https://github.com/raspberrypi/pico-examples


COMPATIBILITY
=============

  By default, the unique_board_id application is configured to run on Raspberry Pi
  Pico board and uses I-Jet debug probe.


CONFIGURATIONS
===============

  Flash Debug:
    Configuration intended for debugging in the QSPI flash memory.


GETTING STARTED
===============

  1) Connect the I-Jet probe to the Raspberry Pi Pico board using "Debugger
     wiring connections" notes in the Description section above.

  2) Start a debug session using the "Download and debug" option. This will
     download the example into the QSPI flash memory.

  3) Open the Terminal I/O window (View -> Terminal I/O).

  4) Run the example. The printf() output will be displayed in the Terminal I/O
     window.