| .. _sam4s_xplained: |
| |
| SAM4S Xplained |
| ################ |
| |
| Overview |
| ******** |
| |
| The SAM4S Xplained evaluation kit is a development platform to evaluate the |
| Atmel SAM4S series microcontrollers. |
| |
| .. image:: img/sam4s_xplained.png |
| :width: 500px |
| :align: center |
| :alt: SAM4S Xplained |
| |
| Hardware |
| ******** |
| |
| - ATSAM4S16C ARM Cortex-M4 Processor |
| - 12 MHz crystal oscillator |
| - internal 32.768 kHz crystal oscillator |
| - IS66WV51216DALL 8 Mb SRAM |
| - Micro-AB USB device |
| - Micro-AB USB debug interface supporting SEGGER OB and Virtual COM Port and |
| Data |
| - One reset and one user pushbutton |
| - 2 yellow user LEDs |
| - IC pads for external flash chip |
| |
| Supported Features |
| ================== |
| |
| The sam4s_xplained board configuration supports the following hardware |
| features: |
| |
| +-----------+------------+-------------------------------------+ |
| | Interface | Controller | Driver/Component | |
| +===========+============+=====================================+ |
| | NVIC | on-chip | nested vector interrupt controller | |
| +-----------+------------+-------------------------------------+ |
| | SYSTICK | on-chip | systick | |
| +-----------+------------+-------------------------------------+ |
| | UART | on-chip | serial port | |
| +-----------+------------+-------------------------------------+ |
| |
| Other hardware features are not currently supported by Zephyr. |
| |
| The default configuration can be found in the Kconfig |
| :file:`boards/arm/sam4s_xplained/sam4s_xplained_defconfig`. |
| |
| Connections and IOs |
| =================== |
| |
| The `SAM4S Xplained Online User Guide`_ has detailed information about board |
| connections. Download the `SAM4S Xplained Schematic`_ for more detail. |
| |
| System Clock |
| ============ |
| |
| The SAM4S MCU is configured to use the 12 MHz internal oscillator on the board |
| with the on-chip PLL to generate an 84 MHz system clock. |
| |
| Serial Port |
| =========== |
| |
| The ATSAM4S16C MCU has 2 UARTs and 2 USARTs. One of the UARTs (UART0) is |
| connected to the Segger J-Link OB chip (the AT91SAM3U4 is programmed to be |
| Segger J-Link OB). Segger J-Link OB brings the UART out as a virtual COM port. |
| |
| Programming and Debugging |
| ************************* |
| |
| The SAM4S Xplained board comes with Segger `J-Link OB <https://www.segger.com/jlink-ob.html>`_. This provides a debug |
| interface to the SAM4S16C chip. You can use Ozone or JLink to communicate with |
| the SAM4S16C. |
| |
| Flashing |
| ======== |
| |
| #. Build the Zephyr kernel and the :ref:`hello_world` sample application: |
| |
| .. code-block:: console |
| |
| $ cd $ZEPHYR_BASE/samples/hello_world/ |
| $ make BOARD=sam4s_xplained |
| |
| #. Connect the SAM4S Xplained board to your host computer using the USB debug |
| port. |
| |
| #. Run your favorite terminal program to listen for output. Under Linux the |
| terminal should be :code:`/dev/ttyACM0`. For example: |
| |
| .. code-block:: console |
| |
| $ minicom -D /dev/ttyACM0 -o |
| |
| The -o option tells minicom not to send the modem initialization |
| string. Connection should be configured as follows: |
| |
| - Speed: 115200 |
| - Data: 8 bits |
| - Parity: None |
| - Stop bits: 1 |
| |
| #. Download JLink from the Segger `JLink Downloads Page`_. Go to the section |
| "J-Link Software and Documentation Pack" and install the "J-Link Software and |
| Documentation pack for Linux". |
| |
| #. To flash an image open JLink and enter the following: |
| |
| .. code-block:: console |
| |
| JLink> device at91sam4s16c |
| // Hit enter to accept JTAG as the default and the other default JTAG settings |
| JLink> connect |
| . |
| . |
| . |
| Device "ATSAM4S16C" selected. |
| |
| |
| TotalIRLen = 4, IRPrint = 0x01 |
| AP-IDR: 0x24770011, Type: AHB-AP |
| Found Cortex-M4 r0p1, Little endian. |
| FPUnit: 6 code (BP) slots and 2 literal slots |
| CoreSight components: |
| ROMTbl 0 @ E00FF000 |
| ROMTbl 0 [0]: FFF0F000, CID: B105E00D, PID: 000BB000 SCS |
| ROMTbl 0 [1]: FFF02000, CID: B105E00D, PID: 003BB002 DWT |
| ROMTbl 0 [2]: FFF03000, CID: B105E00D, PID: 002BB003 FPB |
| ROMTbl 0 [3]: FFF01000, CID: B105E00D, PID: 003BB001 ITM |
| ROMTbl 0 [4]: FFF41000, CID: B105900D, PID: 000BB9A1 TPIU |
| Found 1 JTAG device, Total IRLen = 4: |
| #0 Id: 0x4BA00477, IRLen: 04, IRPrint: 0x1, CoreSight JTAG-DP (ARM) |
| Cortex-M4 identified. |
| |
| JLink> loadbin <zephyr.bin>, 0x400000 |
| Downloading file [/home/justin/Zephyr/zephyr/samples/hello_world/outdir/zephyr.bin]... |
| Comparing flash [100%] Done. |
| Erasing flash [100%] Done. |
| Programming flash [100%] Done. |
| Verifying flash [100%] Done. |
| J-Link: Flash download: Flash programming performed for 2 ranges (21504 bytes) |
| J-Link: Flash download: Total time needed: 0.549s (Prepare: 0.200s, Compare: 0.150s, Erase: 0.020s, Program: 0.094s, Verify: 0.001s, Restore: 0.081s) |
| O.K. |
| JLink> r |
| JLink> go |
| |
| You should see "Hello World! arm" in your terminal. |
| |
| |
| References |
| ********** |
| |
| .. target-notes:: |
| |
| .. _SAM4S Xplained Online User Guide: |
| http://www.atmel.com/webdoc/sam4s16xplained/index.html |
| |
| .. _JLink Downloads Page: |
| https://www.segger.com/downloads/jlink |
| |
| .. _SAM4S Xplained Schematic: |
| http://www.atmel.com/tools/sam4s-xpld.aspx?tab=documents |