1.8 SMC NAND Flash Driver - NAND Flash Read Write

This example application shows how to use the NAND Flash driver to perform read and write operations on NAND Flash device.

Description

This example uses the NAND Flash driver to communicate with the SMC based NAND Flash to perform write and read operations in Bare-Metal environment.

Downloading and Building the Application

To clone or download this application from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file. This content can also be downloaded using content manager by following these instructions.

Path of the application within the repository is apps/driver/smc_flash/nand_flash/nand_flash_read_write.

To build the application, refer to the following table and open the project using its IDE.

Project NameDescription
sam_a7d65_curiosity.XMPLAB X project for SAMA7D65 Curiosity Board
sam_a7d65_curiosity_pro.XMPLAB X project for SAMA7D65 Curiosity Pro Board

Setting Up AT91Bootstrap Loader

To load the application binary onto the target device, it is necessary to use at91bootstrap loader. Refer to the at91bootstrap loader documentation for details on how to configure, build, and run bootstrap loader project and use it to bootstrap the application binaries.

Setting Up the Hardware

The following table shows the target hardware for the application projects.

Project NameDescription
sam_a7d65_curiosity.XSAMA7D65 Curiosity Board
sam_a7d65_curiosity_pro.XSAMA7D65 Curiosity Pro Board

Setting Up SAMA7D65 Curiosity Board

  • Connect the USBA port J3 on the board to the computer using a USB Type-C cable (to power the board)
  • Connect the JTAG J38 on board to the computer using a JTAG based debugger
  • Short J36 NAND BOOT jumper

Setting Up SAMA7D65 Curiosity Pro Board

  • Connect the USBA port J1 on the board to the computer using a USB Type-C cable (to power the board)
  • Connect the JTAG J64 on board to the computer using a JTAG based debugger
  • Short J77 NAND BOOT jumper

Running the Application

  1. Build the application using its IDE.
  2. The LED is turned ON when the value read from NAND Flash matches with the written data.
Refer to the following table for LED name:
BoardLED Name
SAMA7D65 Curiosity BoardRGB_LED (Green)
SAMA7D65 Curiosity Pro BoardRGB_LED (Green)