Microchip® Advanced Software Framework

stk600_rcuc3c0.h File Reference

STK600 with the RCUC3C routing card header file.

This file contains definitions and services related to the features of the STK600 board with RCUC3C routing card. As the STK600 Leds, switches, clocks are configurable through connectors and software through Atmel Studio, the proposed definitions below should be considered as examples and may be modified for a given application.

To use this board, define BOARD=STK600_UC3C0.

Copyright (c) 2011-2018 Microchip Technology Inc. and its subsidiaries.

#include "compiler.h"
#include "led.h"

Macros

#define LED_COUNT   8
 Number of LEDs. More...
 
Oscillator Definitions
#define FOSC32   AVR32_SCIF_OSC32_FREQUENCY
 Osc32 frequency: Hz. More...
 
#define OSC32_STARTUP   AVR32_SCIF_OSCCTRL32_STARTUP_8192_RCOSC
 Osc32 startup time: RCOsc periods. More...
 
#define FOSC0   16000000
 Osc0 frequency: Hz. More...
 
#define OSC0_STARTUP   AVR32_SCIF_OSCCTRL0_STARTUP_2048_RCOSC
 Osc0 startup time: RCOsc periods. More...
 
Board-specific configuration parameters

The following definitions must be provided by the board code for all working oscillators on the board.

#define BOARD_OSC0_HZ   16000000
 Clock frequency of OSC0 in Hz. More...
 
#define BOARD_OSC0_STARTUP_US   2000
 Startup time of OSC0 in microseconds. More...
 
#define BOARD_OSC0_IS_XTAL   true
 OSC0 uses a crystal, not an external clock. More...
 
#define BOARD_OSC32_HZ   32768
 Clock frequency of OSC32 in Hz. More...
 
#define BOARD_OSC32_STARTUP_US   71000
 Startup time of OSC32 in microseconds. More...
 
#define BOARD_OSC32_IS_XTAL   true
 OSC32 uses a crystal, not an external clock. More...
 
SDRAM Definitions
#define SDRAM_PART_HDR   "mt48lc16m16a2tg7e/mt48lc16m16a2tg7e.h"
 Part header file of used SDRAM(s). More...
 
#define SDRAM_DBW   16
 Data bus width to use the SDRAM(s) with (16 or 32 bits; always 16 bits on UC3). More...
 
GPIO Connections of LEDs. To use these defines, connect the STK600 PORTA

PB08-to-PB15 connectors to respectively the LEDs LED0-to-LED3 connectors. Note that when the JTAG is active, it uses pins PA00-to-PA03 of the UC3A. This is why we didn't use pins PA00-to-PA03 for the LEDs LED0-to-LED3.

#define LED0_GPIO   AVR32_PIN_PB08
 
#define LED1_GPIO   AVR32_PIN_PB09
 
#define LED2_GPIO   AVR32_PIN_PB10
 
#define LED3_GPIO   AVR32_PIN_PB11
 
#define LED4_GPIO   AVR32_PIN_PB12
 
#define LED5_GPIO   AVR32_PIN_PB13
 
#define LED6_GPIO   AVR32_PIN_PB14
 
#define LED7_GPIO   AVR32_PIN_PB15
 
GPIO Connections of Push Buttons. To use these defines, connect the

STK600 PORTH connector to the SWITCHES connector.

#define GPIO_PUSH_BUTTON_SW0   AVR32_PIN_PB24
 
#define GPIO_PUSH_BUTTON_SW0_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW1   AVR32_PIN_PB25
 
#define GPIO_PUSH_BUTTON_SW1_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW2   AVR32_PIN_PB26
 
#define GPIO_PUSH_BUTTON_SW2_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW3   AVR32_PIN_PB27
 
#define GPIO_PUSH_BUTTON_SW3_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW4   AVR32_PIN_PB28
 
#define GPIO_PUSH_BUTTON_SW4_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW5   AVR32_PIN_PB29
 
#define GPIO_PUSH_BUTTON_SW5_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW6   AVR32_PIN_PB30
 
#define GPIO_PUSH_BUTTON_SW6_PRESSED   0
 
#define GPIO_PUSH_BUTTON_SW7   AVR32_PIN_PB31
 
#define GPIO_PUSH_BUTTON_SW7_PRESSED   0
 
SPI Connections of the AT45DBX Data Flash Memory
#define AT45DBX_SPI   (&AVR32_SPI1)
 
#define AT45DBX_SPI_NPCS   1
 
#define AT45DBX_SPI_SCK_PIN   AVR32_SPI1_SCK_0_1_PIN
 
#define AT45DBX_SPI_SCK_FUNCTION   AVR32_SPI1_SCK_0_1_FUNCTION
 
#define AT45DBX_SPI_MISO_PIN   AVR32_SPI1_MISO_0_1_PIN
 
#define AT45DBX_SPI_MISO_FUNCTION   AVR32_SPI1_MISO_0_1_FUNCTION
 
#define AT45DBX_SPI_MOSI_PIN   AVR32_SPI1_MOSI_0_1_PIN
 
#define AT45DBX_SPI_MOSI_FUNCTION   AVR32_SPI1_MOSI_0_1_FUNCTION
 
#define AT45DBX_SPI_NPCS0_PIN   AVR32_SPI1_NPCS_1_2_PIN
 
#define AT45DBX_SPI_NPCS0_FUNCTION   AVR32_SPI1_NPCS_1_2_FUNCTION
 
ET024006DHU TFT display
#define ET024006DHU_TE_PIN   AVR32_PIN_PD19
 
#define ET024006DHU_RESET_PIN   AVR32_PIN_PD16
 
#define ET024006DHU_BL_PIN   AVR32_TC0_B0_0_2_PIN
 
#define ET024006DHU_BL_FUNCTION   AVR32_TC0_B0_0_2_FUNCTION
 
#define ET024006DHU_DNC_PIN   AVR32_EBI_ADDR_22_PIN
 
#define ET024006DHU_DNC_FUNCTION   AVR32_EBI_ADDR_22_FUNCTION
 
#define ET024006DHU_EBI_NCS_PIN   AVR32_EBI_NCS_PIN
 
#define ET024006DHU_EBI_NCS_FUNCTION   AVR32_EBI_NCS_FUNCTION
 
Optional SPI connection to the TFT
#define ET024006DHU_SPI   (&AVR32_SPI1)
 
#define ET024006DHU_SPI_NPCS   1
 
#define ET024006DHU_SPI_SCK_PIN   AVR32_SPI1_SCK_0_1_PIN
 
#define ET024006DHU_SPI_SCK_FUNCTION   AVR32_SPI1_SCK_0_1_FUNCTION
 
#define ET024006DHU_SPI_MISO_PIN   AVR32_SPI1_MISO_0_1_PIN
 
#define ET024006DHU_SPI_MISO_FUNCTION   AVR32_SPI1_MISO_0_1_FUNCTION
 
#define ET024006DHU_SPI_MOSI_PIN   AVR32_SPI1_MOSI_0_1_PIN
 
#define ET024006DHU_SPI_MOSI_FUNCTION   AVR32_SPI1_MOSI_0_1_FUNCTION
 
#define ET024006DHU_SPI_NPCS_PIN   AVR32_SPI1_NPCS_2_2_PIN
 
#define ET024006DHU_SPI_NPCS_FUNCTION   AVR32_SPI1_NPCS_2_2_FUNCTION
 
LCD Connections of the ET024006DHU display
#define ET024006DHU_SMC_USE_NCS   0
 
#define ET024006DHU_SMC_COMPONENT_CS   "smc_et024006dhu.h"
 
#define ET024006DHU_EBI_DATA_0   AVR32_EBI_DATA_0
 
#define ET024006DHU_EBI_DATA_1   AVR32_EBI_DATA_1
 
#define ET024006DHU_EBI_DATA_2   AVR32_EBI_DATA_2
 
#define ET024006DHU_EBI_DATA_3   AVR32_EBI_DATA_3
 
#define ET024006DHU_EBI_DATA_4   AVR32_EBI_DATA_4
 
#define ET024006DHU_EBI_DATA_5   AVR32_EBI_DATA_5
 
#define ET024006DHU_EBI_DATA_6   AVR32_EBI_DATA_6
 
#define ET024006DHU_EBI_DATA_7   AVR32_EBI_DATA_7
 
#define ET024006DHU_EBI_DATA_8   AVR32_EBI_DATA_8
 
#define ET024006DHU_EBI_DATA_9   AVR32_EBI_DATA_9
 
#define ET024006DHU_EBI_DATA_10   AVR32_EBI_DATA_10
 
#define ET024006DHU_EBI_DATA_11   AVR32_EBI_DATA_11
 
#define ET024006DHU_EBI_DATA_12   AVR32_EBI_DATA_12
 
#define ET024006DHU_EBI_DATA_13   AVR32_EBI_DATA_13
 
#define ET024006DHU_EBI_DATA_14   AVR32_EBI_DATA_14
 
#define ET024006DHU_EBI_DATA_15   AVR32_EBI_DATA_15
 
#define ET024006DHU_EBI_ADDR_21   AVR32_EBI_ADDR_22
 
#define ET024006DHU_EBI_NWE   AVR32_EBI_NWE0
 
#define ET024006DHU_EBI_NRD   AVR32_EBI_NRD
 
#define ET024006DHU_EBI_NCS   AVR32_EBI_NCS_0
 

#define AT45DBX_SPI   (&AVR32_SPI1)
#define AT45DBX_SPI_MISO_FUNCTION   AVR32_SPI1_MISO_0_1_FUNCTION
#define AT45DBX_SPI_MISO_PIN   AVR32_SPI1_MISO_0_1_PIN
#define AT45DBX_SPI_MOSI_FUNCTION   AVR32_SPI1_MOSI_0_1_FUNCTION
#define AT45DBX_SPI_MOSI_PIN   AVR32_SPI1_MOSI_0_1_PIN
#define AT45DBX_SPI_NPCS   1
#define AT45DBX_SPI_NPCS0_FUNCTION   AVR32_SPI1_NPCS_1_2_FUNCTION
#define AT45DBX_SPI_NPCS0_PIN   AVR32_SPI1_NPCS_1_2_PIN
#define AT45DBX_SPI_SCK_FUNCTION   AVR32_SPI1_SCK_0_1_FUNCTION
#define AT45DBX_SPI_SCK_PIN   AVR32_SPI1_SCK_0_1_PIN
#define ET024006DHU_BL_FUNCTION   AVR32_TC0_B0_0_2_FUNCTION
#define ET024006DHU_BL_PIN   AVR32_TC0_B0_0_2_PIN
#define ET024006DHU_DNC_FUNCTION   AVR32_EBI_ADDR_22_FUNCTION
#define ET024006DHU_DNC_PIN   AVR32_EBI_ADDR_22_PIN
#define ET024006DHU_EBI_ADDR_21   AVR32_EBI_ADDR_22
#define ET024006DHU_EBI_DATA_0   AVR32_EBI_DATA_0
#define ET024006DHU_EBI_DATA_1   AVR32_EBI_DATA_1
#define ET024006DHU_EBI_DATA_10   AVR32_EBI_DATA_10
#define ET024006DHU_EBI_DATA_11   AVR32_EBI_DATA_11
#define ET024006DHU_EBI_DATA_12   AVR32_EBI_DATA_12
#define ET024006DHU_EBI_DATA_13   AVR32_EBI_DATA_13
#define ET024006DHU_EBI_DATA_14   AVR32_EBI_DATA_14
#define ET024006DHU_EBI_DATA_15   AVR32_EBI_DATA_15
#define ET024006DHU_EBI_DATA_2   AVR32_EBI_DATA_2
#define ET024006DHU_EBI_DATA_3   AVR32_EBI_DATA_3
#define ET024006DHU_EBI_DATA_4   AVR32_EBI_DATA_4
#define ET024006DHU_EBI_DATA_5   AVR32_EBI_DATA_5
#define ET024006DHU_EBI_DATA_6   AVR32_EBI_DATA_6
#define ET024006DHU_EBI_DATA_7   AVR32_EBI_DATA_7
#define ET024006DHU_EBI_DATA_8   AVR32_EBI_DATA_8
#define ET024006DHU_EBI_DATA_9   AVR32_EBI_DATA_9
#define ET024006DHU_EBI_NCS   AVR32_EBI_NCS_0
#define ET024006DHU_EBI_NCS_FUNCTION   AVR32_EBI_NCS_FUNCTION
#define ET024006DHU_EBI_NCS_PIN   AVR32_EBI_NCS_PIN
#define ET024006DHU_EBI_NRD   AVR32_EBI_NRD
#define ET024006DHU_EBI_NWE   AVR32_EBI_NWE0
#define ET024006DHU_RESET_PIN   AVR32_PIN_PD16
#define ET024006DHU_SMC_COMPONENT_CS   "smc_et024006dhu.h"
#define ET024006DHU_SMC_USE_NCS   0
#define ET024006DHU_SPI   (&AVR32_SPI1)
#define ET024006DHU_SPI_MISO_FUNCTION   AVR32_SPI1_MISO_0_1_FUNCTION
#define ET024006DHU_SPI_MISO_PIN   AVR32_SPI1_MISO_0_1_PIN
#define ET024006DHU_SPI_MOSI_FUNCTION   AVR32_SPI1_MOSI_0_1_FUNCTION
#define ET024006DHU_SPI_MOSI_PIN   AVR32_SPI1_MOSI_0_1_PIN
#define ET024006DHU_SPI_NPCS   1
#define ET024006DHU_SPI_NPCS_FUNCTION   AVR32_SPI1_NPCS_2_2_FUNCTION
#define ET024006DHU_SPI_NPCS_PIN   AVR32_SPI1_NPCS_2_2_PIN
#define ET024006DHU_SPI_SCK_FUNCTION   AVR32_SPI1_SCK_0_1_FUNCTION
#define ET024006DHU_SPI_SCK_PIN   AVR32_SPI1_SCK_0_1_PIN
#define ET024006DHU_TE_PIN   AVR32_PIN_PD19
#define FOSC0   16000000

Osc0 frequency: Hz.

#define FOSC32   AVR32_SCIF_OSC32_FREQUENCY

Osc32 frequency: Hz.

#define GPIO_PUSH_BUTTON_SW0   AVR32_PIN_PB24
#define GPIO_PUSH_BUTTON_SW0_PRESSED   0
#define GPIO_PUSH_BUTTON_SW1   AVR32_PIN_PB25
#define GPIO_PUSH_BUTTON_SW1_PRESSED   0
#define GPIO_PUSH_BUTTON_SW2   AVR32_PIN_PB26
#define GPIO_PUSH_BUTTON_SW2_PRESSED   0
#define GPIO_PUSH_BUTTON_SW3   AVR32_PIN_PB27
#define GPIO_PUSH_BUTTON_SW3_PRESSED   0
#define GPIO_PUSH_BUTTON_SW4   AVR32_PIN_PB28
#define GPIO_PUSH_BUTTON_SW4_PRESSED   0
#define GPIO_PUSH_BUTTON_SW5   AVR32_PIN_PB29
#define GPIO_PUSH_BUTTON_SW5_PRESSED   0
#define GPIO_PUSH_BUTTON_SW6   AVR32_PIN_PB30
#define GPIO_PUSH_BUTTON_SW6_PRESSED   0
#define GPIO_PUSH_BUTTON_SW7   AVR32_PIN_PB31
#define GPIO_PUSH_BUTTON_SW7_PRESSED   0
#define LED0_GPIO   AVR32_PIN_PB08
#define LED1_GPIO   AVR32_PIN_PB09
#define LED2_GPIO   AVR32_PIN_PB10
#define LED3_GPIO   AVR32_PIN_PB11
#define LED4_GPIO   AVR32_PIN_PB12
#define LED5_GPIO   AVR32_PIN_PB13
#define LED6_GPIO   AVR32_PIN_PB14
#define LED7_GPIO   AVR32_PIN_PB15
#define LED_COUNT   8

Number of LEDs.

#define OSC0_STARTUP   AVR32_SCIF_OSCCTRL0_STARTUP_2048_RCOSC

Osc0 startup time: RCOsc periods.

#define OSC32_STARTUP   AVR32_SCIF_OSCCTRL32_STARTUP_8192_RCOSC

Osc32 startup time: RCOsc periods.

#define SDRAM_DBW   16

Data bus width to use the SDRAM(s) with (16 or 32 bits; always 16 bits on UC3).

#define SDRAM_PART_HDR   "mt48lc16m16a2tg7e/mt48lc16m16a2tg7e.h"

Part header file of used SDRAM(s).