nuttx/configs/efm32-g8xx-stk
2014-10-18 12:07:34 -06:00
..
include Add board XTAL definitions 2014-10-18 12:07:34 -06:00
nsh Add EFM32 interrupt vector defintions 2014-10-17 10:34:39 -06:00
scripts Add directory for EFM32 G8XX STK board 2014-10-17 08:43:06 -06:00
src Add GPIO header file and EFM32 Gecko Starter Kit LED support 2014-10-17 14:17:44 -06:00
Kconfig Add directory for EFM32 G8XX STK board 2014-10-17 08:43:06 -06:00
README.txt Add EFM32 Memory Maps 2014-10-17 16:43:52 -06:00

README
======

  This README file discusses the port of NuttX to the Silicon Labs EFM32™ Gecko Starter Kit (EFM32-G8XX-STK). The Gecko Starter Kit features:

    • EFM32G890F128 MCU with 128 kB flash and 16 kB RAM
    •   32.768 kHz crystal
    •   32 MHz crystal
    • Advanced Energy Monitoring
    • Touch slider
    • 4x40 LCD
    • 4 User LEDs
    • 2 pushbutton switches
    • Reset button and a switch to disconnect the battery.
    • On-board SEGGER J-Link USB emulator
    •   ARM 20 pin JTAG/SWD standard Debug in/out connector

LEDs
====

  The EFM32 Gecko Start Kit has four yellow LEDs.  These LEDs are connected
  as follows:

  ------------------------------------- --------------------
  EFM32 PIN                             BOARD SIGNALS
  ------------------------------------- --------------------
  C0/USART1_TX#0/PCNT0_S0IN#2/ACMP0_CH0  MCU_PC0  UIF_LED0
  C1/USART1_RX#0/PCNT0_S1IN#2/ACMP0_CH1  MCU_PC1  UIF_LED1
  C2/USART2_TX#0/ACMP0_CH2               MCU_PC2  UIF_LED2
  C3/USART2_RX#0/ACMP0_CH3               MCU_PC3  UIF_LED3
  ------------------------------------- --------------------

  All LEDs are grounded and so are illuminated by outputting a high
  value to the LED.

  These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is
  defined.  In that case, the usage by the board port is defined in
  include/board.h and src/efm32_autoleds.c.  The LEDs are used to
  encode OS-related events as follows:

    SYMBOL             Meaning                 LED1*  LED2   LED3   LED4
    ----------------- -----------------------  ------ -----  -----  ------
    LED_STARTED       NuttX has been started   ON     OFF    OFF    OFF
    LED_HEAPALLOCATE  Heap has been allocated  OFF    ON     OFF    OFF
    LED_IRQSENABLED   Interrupts enabled       ON     ON     OFF    OFF
    LED_STACKCREATED  Idle stack created       OFF    OFF    ON     OFF
    LED_INIRQ         In an interrupt**        ON     N/C    N/C    OFF
    LED_SIGNAL        In a signal handler***   N/C    ON     N/C    OFF
    LED_ASSERTION     An assertion failed      ON     ON     N/C    OFF
    LED_PANIC         The system has crashed   N/C    N/C    N/C    ON
    LED_IDLE          STM32 is is sleep mode   (Optional, not used)

  * If LED1, LED2, LED3 are statically on, then NuttX probably failed to boot
    and these LEDs will give you some indication of where the failure was
 ** The normal state is LED3 ON and LED1 faintly glowing.  This faint glow
    is because of timer interrupt that result in the LED being illuminated
    on a small proportion of the time.
*** LED2 may also flicker normally if signals are processed.

Serial Console
==============

  The EFM32G890F128 support the following options for serial output:

    ------- -- ----
     US0_RX #0 PE11
     US0_RX #1 PE6
     US0_RX #2 PC10

     US0_TX #0 PE10
     US0_TX #1 PE7
     US0_TX #2 PC11
    ------- -- ----
     US1_RX #0 PC1
     US1_RX #1 PD1

     US1_TX #0 PC0
     US1_TX #1 PD0
    ------- -- ----
     US2_RX #0 PC3
     US2_RX #1 PB4

     US2_TX #0 PC2
     US2_TX #1 PB3
    ------- -- ----
      U0_RX #1 PE1
      U0_RX #2 PA4

      U0_TX #0 PF6
      U0_TX #1 PE0
      U0_TX #2 PA3
      U0_TX #3 PC14
    ------- -- ----
    LEU0_RX #0 PD5
    LEU0_RX #1 PB14
    LEU0_RX #2 PE15

    LEU0_TX #0 PD4
    LEU0_TX #1 PB13
    LEU0_TX #2 PE14
    ------- -- ----
    LEU1_RX #0 PC7
    LEU1_RX #1 PA6

    LEU1_TX #0 PC6
    LEU1_TX #1 PA5
    ------- -- ----

Configurations
==============
  Each EFM32 Gecko Starter Kit configuration is maintained in a sub-director
  and can be selected as follow:

    cd tools
    ./configure.sh efm32-g8xx-stk/<subdir>
    cd -
    . ./setenv.sh

  If this is a Windows native build, then configure.bat should be used
  instead of configure.sh:

    configure.bat STM32F4Discovery\<subdir>

  Where <subdir> is one of the following:

  nsh:
  ---
    Configures the NuttShell (nsh) located at apps/examples/nsh.  The
    Configuration enables the serial interfaces on USARTx.  Support for
    builtin applications is enabled, but in the base configuration no
    builtin applications are selected (see NOTES below).

    NOTES:

    1. This configuration uses the mconf-based configuration tool.  To
       change this configuration using that tool, you should:

       a. Build and install the kconfig-mconf tool.  See nuttx/README.txt
          and misc/tools/

       b. Execute 'make menuconfig' in nuttx/ in order to start the
          reconfiguration process.

    2. By default, this configuration uses the CodeSourcery toolchain
       for Windows and builds under Cygwin (or probably MSYS).  That
       can easily be reconfigured, of course.

       CONFIG_HOST_WINDOWS=y                   : Builds under Windows
       CONFIG_WINDOWS_CYGWIN=y                 : Using Cygwin
       CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery for Windows