mirror of
https://github.com/apache/nuttx.git
synced 2026-06-06 00:14:22 +08:00
Update SAMA5D3x-EK board configuration to support on-board UART connections, LEDs, and push buttons
This commit is contained in:
@@ -145,17 +145,77 @@
|
||||
#define BOARD_FWS 3
|
||||
|
||||
/* LED definitions ******************************************************************/
|
||||
/* There are two LEDs on the SAMA5D3 series-CM board that can be controlled
|
||||
* by software. A blue LED is controlled via GPIO pins. A red LED normally
|
||||
* provides an indication that power is supplied to the board but can also
|
||||
* be controlled via software.
|
||||
*
|
||||
* PE25. This blue LED is pulled high and is illuminated by pulling PE25
|
||||
* low.
|
||||
*
|
||||
* PE24. The red LED is also pulled high but is driven by a transistor so
|
||||
* that it is illuminated when power is applied even if PE24 is not
|
||||
* configured as an output. If PE24 is configured as an output, then the
|
||||
* LCD is illuminated by a low output.
|
||||
*/
|
||||
|
||||
#define LED_STARTED 0
|
||||
#define LED_HEAPALLOCATE 1
|
||||
#define LED_IRQSENABLED 2
|
||||
#define LED_STACKCREATED 3
|
||||
#define LED_INIRQ 4
|
||||
#define LED_SIGNAL 5
|
||||
#define LED_ASSERTION 6
|
||||
#define LED_PANIC 7
|
||||
/* LED index values for use with sam_setled() */
|
||||
|
||||
#define BOARD_BLUE 0
|
||||
#define BOARD_RED 1
|
||||
#define BOARD_NLEDS 2
|
||||
|
||||
/* LED bits for use with sam_setleds() */
|
||||
|
||||
#define BOARD_BLUE_BIT (1 << BOARD_BLUE)
|
||||
#define BOARD_RED_BIT (1 << BOARD_RED)
|
||||
|
||||
|
||||
/* 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/sam_leds.c. The LEDs are used to encode OS-related
|
||||
* events as follows:
|
||||
*
|
||||
* SYMBOL Val Meaning LED state
|
||||
* Blue Red
|
||||
* ----------------- --- ----------------------- -------- -------- */
|
||||
#define LED_STARTED 0 /* NuttX has been started OFF OFF */
|
||||
#define LED_HEAPALLOCATE 0 /* Heap has been allocated OFF OFF */
|
||||
#define LED_IRQSENABLED 0 /* Interrupts enabled OFF OFF */
|
||||
#define LED_STACKCREATED 1 /* Idle stack created ON OFF */
|
||||
#define LED_INIRQ 2 /* In an interrupt No change */
|
||||
#define LED_SIGNAL 2 /* In a signal handler No change */
|
||||
#define LED_ASSERTION 2 /* An assertion failed No change */
|
||||
#define LED_PANIC 3 /* The system has crashed OFF Blinking */
|
||||
#undef LED_IDLE /* MCU is is sleep mode Not used */
|
||||
|
||||
/* Thus if the blue LED is statically on, NuttX has successfully booted and
|
||||
* is, apparently, running normmally. If the red is flashing at
|
||||
* approximately 2Hz, then a fatal error has been detected and the system
|
||||
* has halted.
|
||||
*/
|
||||
|
||||
/* Button definitions ***************************************************************/
|
||||
/* There are five push button switches on the SAMA5D3X-EK base board:
|
||||
*
|
||||
* 1. One Reset, board reset (BP1)
|
||||
* 2. One Wake up, push button to bring the processor out of low power mode
|
||||
* (BP2)
|
||||
* 3. One User momentary Push Button
|
||||
* 4. One Disable CS Push Button
|
||||
*
|
||||
* Only the momentary push button is controllable by software (labeled
|
||||
* "PB_USER1" on the board):
|
||||
*
|
||||
* - PE27. Pressing the switch connect PE27 to grounded. Therefore, PE27
|
||||
* must be pulled high internally. When the button is pressed the SAMA5
|
||||
* will sense "0" is on PE27.
|
||||
*/
|
||||
|
||||
#define BUTTON_USER1 0
|
||||
#define NUM_BUTTONS 1
|
||||
|
||||
#define BUTTON_USER1_BIT (1 << BUTTON_USER1)
|
||||
|
||||
/************************************************************************************
|
||||
* Public Data
|
||||
|
||||
Reference in New Issue
Block a user