Example application for the STMicroelectronics X-NUCLEO-NFC05A1

Dependencies:   RFAL ST25R3911 BSP05

X-NUCLEO-NFC05A1 NFC Card Reader Expansion Board Firmware Package

Introduction

This firmware package includes Components Device Drivers, Board Support Package and example applications for STMicroelectronics X-NUCLEO-NFC05A1 NFC Card Reader Expansion Board based on the ST25R3911B.

Example Application

This program gives the user the possibility to read the URI information written on the expansion board. The LEDs will blink for few seconds to indicate that the board is initializing. As soon as it finishes, the device is ready to communicate with external NFC devices. LED6 will blink until an NFC device is close to it and ready to read the URI value.

Tested Platforms

This firmware has been tested on STM32 NUCLEO-F401RE

Committer:
DiegoOstuni
Date:
Thu Nov 14 14:22:53 2019 +0000
Revision:
0:5021ef8dd916
Child:
2:2039176639b9
Fork of the GitHub

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DiegoOstuni 0:5021ef8dd916 1 ![](./resources/official_armmbed_example_badge.png)
DiegoOstuni 0:5021ef8dd916 2 # Blinky Mbed OS example
DiegoOstuni 0:5021ef8dd916 3
DiegoOstuni 0:5021ef8dd916 4 The example project is part of the [Arm Mbed OS Official Examples](https://os.mbed.com/code/) and is the [getting started example for Mbed OS](https://os.mbed.com/docs/mbed-os/v5.14/quick-start/index.html). It contains an application that repeatedly blinks an LED on supported [Mbed boards](https://os.mbed.com/platforms/).
DiegoOstuni 0:5021ef8dd916 5
DiegoOstuni 0:5021ef8dd916 6 You can build the project with all supported [Mbed OS build tools](https://os.mbed.com/docs/mbed-os/latest/tools/index.html). However, this example project specifically refers to the command-line interface tool [Arm Mbed CLI](https://github.com/ARMmbed/mbed-cli#installing-mbed-cli).
DiegoOstuni 0:5021ef8dd916 7 (Note: To see a rendered example you can import into the Arm Online Compiler, please see our [import quick start](https://os.mbed.com/docs/mbed-os/latest/quick-start/online-with-the-online-compiler.html#importing-the-code).)
DiegoOstuni 0:5021ef8dd916 8
DiegoOstuni 0:5021ef8dd916 9 1. [Install Mbed CLI](https://os.mbed.com/docs/mbed-os/latest/quick-start/offline-with-mbed-cli.html).
DiegoOstuni 0:5021ef8dd916 10
DiegoOstuni 0:5021ef8dd916 11 1. Clone this repository on your system, and change the current directory to where the project was cloned:
DiegoOstuni 0:5021ef8dd916 12
DiegoOstuni 0:5021ef8dd916 13 ```bash
DiegoOstuni 0:5021ef8dd916 14 $ git clone git@github.com:armmbed/mbed-os-example-blinky && cd mbed-os-example-blinky
DiegoOstuni 0:5021ef8dd916 15 ```
DiegoOstuni 0:5021ef8dd916 16
DiegoOstuni 0:5021ef8dd916 17 Alternatively, you can download the example project with Arm Mbed CLI using the `import` subcommand:
DiegoOstuni 0:5021ef8dd916 18
DiegoOstuni 0:5021ef8dd916 19 ```bash
DiegoOstuni 0:5021ef8dd916 20 $ mbed import mbed-os-example-blinky && cd mbed-os-example-blinky
DiegoOstuni 0:5021ef8dd916 21 ```
DiegoOstuni 0:5021ef8dd916 22
DiegoOstuni 0:5021ef8dd916 23
DiegoOstuni 0:5021ef8dd916 24 ## Application functionality
DiegoOstuni 0:5021ef8dd916 25
DiegoOstuni 0:5021ef8dd916 26 The `main()` function is the single thread in the application. It toggles the state of a digital output connected to an LED on the board.
DiegoOstuni 0:5021ef8dd916 27
DiegoOstuni 0:5021ef8dd916 28 ## Building and running
DiegoOstuni 0:5021ef8dd916 29
DiegoOstuni 0:5021ef8dd916 30 1. Connect a USB cable between the USB port on the board and the host computer.
DiegoOstuni 0:5021ef8dd916 31 2. <a name="build_cmd"></a> Run the following command to build the example project and program the microcontroller flash memory:
DiegoOstuni 0:5021ef8dd916 32 ```bash
DiegoOstuni 0:5021ef8dd916 33 $ mbed compile -m <TARGET> -t <TOOLCHAIN> --flash
DiegoOstuni 0:5021ef8dd916 34 ```
DiegoOstuni 0:5021ef8dd916 35 The binary is located at `./BUILD/<TARGET>/<TOOLCHAIN>/mbed-os-example-blinky.bin`.
DiegoOstuni 0:5021ef8dd916 36
DiegoOstuni 0:5021ef8dd916 37 Alternatively, you can manually copy the binary to the board, which you mount on the host computer over USB.
DiegoOstuni 0:5021ef8dd916 38
DiegoOstuni 0:5021ef8dd916 39 Depending on the target, you can build the example project with the `GCC_ARM`, `ARM` or `IAR` toolchain. After installing Arm Mbed CLI, run the command below to determine which toolchain supports your target:
DiegoOstuni 0:5021ef8dd916 40
DiegoOstuni 0:5021ef8dd916 41 ```bash
DiegoOstuni 0:5021ef8dd916 42 $ mbed compile -S
DiegoOstuni 0:5021ef8dd916 43 ```
DiegoOstuni 0:5021ef8dd916 44
DiegoOstuni 0:5021ef8dd916 45 ## Expected output
DiegoOstuni 0:5021ef8dd916 46 The LED on your target turns on and off every 500 milliseconds.
DiegoOstuni 0:5021ef8dd916 47
DiegoOstuni 0:5021ef8dd916 48
DiegoOstuni 0:5021ef8dd916 49 ## Troubleshooting
DiegoOstuni 0:5021ef8dd916 50 If you have problems, you can review the [documentation](https://os.mbed.com/docs/latest/tutorials/debugging.html) for suggestions on what could be wrong and how to fix it.
DiegoOstuni 0:5021ef8dd916 51
DiegoOstuni 0:5021ef8dd916 52 ## Related Links
DiegoOstuni 0:5021ef8dd916 53
DiegoOstuni 0:5021ef8dd916 54 * [Mbed OS Stats API](https://os.mbed.com/docs/latest/apis/mbed-statistics.html).
DiegoOstuni 0:5021ef8dd916 55 * [Mbed OS Configuration](https://os.mbed.com/docs/latest/reference/configuration.html).
DiegoOstuni 0:5021ef8dd916 56 * [Mbed OS Serial Communication](https://os.mbed.com/docs/latest/tutorials/serial-communication.html).
DiegoOstuni 0:5021ef8dd916 57 * [Mbed OS bare metal](https://os.mbed.com/docs/mbed-os/latest/reference/mbed-os-bare-metal.html).
DiegoOstuni 0:5021ef8dd916 58 * [Mbed boards](https://os.mbed.com/platforms/).
DiegoOstuni 0:5021ef8dd916 59
DiegoOstuni 0:5021ef8dd916 60 ### License and contributions
DiegoOstuni 0:5021ef8dd916 61
DiegoOstuni 0:5021ef8dd916 62 The software is provided under Apache-2.0 license. Contributions to this project are accepted under the same license. Please see contributing.md for more info.
DiegoOstuni 0:5021ef8dd916 63
DiegoOstuni 0:5021ef8dd916 64 This project contains code from other projects. The original license text is included in those source files. They must comply with our license guide.