XMC4500 Relax: Add README.txt file. Fix some comments.

This commit is contained in:
Gregory Nutt 2017-03-21 10:02:23 -06:00
parent 805a4f65e9
commit 1e9bc166d4
5 changed files with 174 additions and 19 deletions

View File

@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttX README Files</i></font></big></h1>
<p>Last Updated: February 19, 2017</p>
<p>Last Updated: March 21, 2017</p>
</td>
</tr>
</table>
@ -297,6 +297,8 @@ nuttx/
| | `- <a href="https://bitbucket.org/nuttx/nuttx/src/master/configs/us7032evb1/README.txt" target="_blank"><b><i>README.txt</i></b></a>
| |- viewtool-stm32f107/
| | `- <a href="https://bitbucket.org/nuttx/nuttx/src/master/configs/viewtool-stm32f107/README.txt" target="_blank"><b><i>README.txt</i></b></a>
| |- xmc4500-relax/
| | `- <a href="https://bitbucket.org/nuttx/nuttx/src/master/configs/xmc4500-relax/README.txt" target="_blank"><b><i>README.txt</i></b></a>
| |- xtrs/
| | `- <a href="https://bitbucket.org/nuttx/nuttx/src/master/configs/xtrs/README.txt" target="_blank"><b><i>README.txt</i></b></a>
| |- z16f2800100zcog/

View File

@ -1681,6 +1681,8 @@ nuttx/
| | `- README.txt
| |- viewtool-stm32f107/
| | `- README.txt
| |- xmc5400-relax/
| | `- README.txt
| |- xtrs/
| | `- README.txt
| |- z16f2800100zcog/

View File

@ -0,0 +1,154 @@
README for the XMC4500 Relax
============================
The directory provides board support for the Infinion XMC4500 Relax v1
boards. There are to variants of this board: There is a Lite version
that has fewer features, for example, no 32.768KHz crystal.
The current configurations support only the Lite version of the board.
Serial Console
==============
Be default, UART0 (aka, USIC0, channel 0) is used as the serial console.
The RX and TX pins is available:
RX - P1.4, Connector X2, pin 17
TX - P1.5, Connector X2, pin 17
GND - Available on pins 1-4 of either connector X1 or X2
VDD3.3 - Available on pins 37-38 of either connector X1 or X2
VDD5 - Available on pins 39-40 of either connector X1 or X2
LEDs
====
The XMC4500 Relax Lite v1 board has two LEDs:
LED1 P1.1 High output illuminates
LED2 P1.0 High output illuminates
If CONFIG_ARCH_LEDS is not defined, then the user can control the LEDs in
any way. The definitions provided in the board.h header file can be used
to access individual LEDs.
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_autoleds.c. The LEDs are used to encode
OS-related events as follows:
SYMBOL Meaning LED state
LED1 LED2
------------------ ------------------------ ------ ------
LED_STARTED NuttX has been started OFF OFF
LED_HEAPALLOCATE Heap has been allocated OFF OFF
LED_IRQSENABLED Interrupts enabled OFF OFF
LED_STACKCREATED Idle stack created ON OFF
LED_INIRQ In an interrupt No change
LED_SIGNAL In a signal handler No change
LED_ASSERTION An assertion failed No change
LED_PANIC The system has crashed N/C Blinking
LED_IDLE MCU is is sleep mode Not used
Thus if LED1 is statically on, NuttX has successfully booted and is,
apparently, running normally. If LED2 is flashing at approximately
2Hz, then a fatal error has been detected and the system has halted.
Buttons
=======
The XMC4500 Relax Lite v1 board has two buttons:
BUTTON1 P1.14 Low input sensed when button pressed
BUTTON2 P1.15 Low input sensed when button pressed
Configurations
==============
Information Common to All Configurations
----------------------------------------
Each XMC4500 Relax configuration is maintained in a sub-directory and
can be selected as follow:
cd tools
./configure.sh xmc5400-relax/<subdir>
cd -
. ./setenv.sh
Before sourcing the setenv.sh file above, you should examine it and
perform edits as necessary so that TOOLCHAIN_BIN is the correct path
to the directory than holds your toolchain binaries.
And then build NuttX by simply typing the following. At the conclusion of
the make, the nuttx binary will reside in an ELF file called, simply, nuttx.
make oldconfig
make
The <subdir> that is provided above as an argument to the tools/configure.sh
must be is one of the following.
NOTES:
1. These configurations use the mconf-based configuration tool. To
change any of these configurations using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. Unless stated otherwise, all configurations generate console
output on UART0 (aka USIC0, channel 0) as described above under
"Serial Console". The relevant configuration settings are listed
below:
CONFIG_XMC4_USIC0=y
CONFIG_XMC4_USIC0_CHAN0_ISUART=y
CONFIG_XMC4_USIC0_CHAN1_NONE=y
CONFIG_UART0_SERIALDRIVER=y
CONFIG_UART0_SERIAL_CONSOLE=y
CONFIG_UART0_RXBUFSIZE=256
CONFIG_UART0_TXBUFSIZE=256
CONFIG_UART0_BAUD=115200
CONFIG_UART0_BITS=8
CONFIG_UART0_PARITY=0
CONFIG_UART0_2STOP=0
3. All of these configurations are set up to build under Windows using the
"GNU Tools for ARM Embedded Processors" that is maintained by ARM
(unless stated otherwise in the description of the configuration).
https://launchpad.net/gcc-arm-embedded
That toolchain selection can easily be reconfigured using
'make menuconfig'. Here are the relevant current settings:
Build Setup:
CONFIG_HOST_WINDOWS=y : Window environment
CONFIG_WINDOWS_CYGWIN=y : Cywin under Windows
System Type -> Toolchain:
CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW=y : GNU ARM EABI toolchain
Configuration sub-directories
-----------------------------
nsh:
Configures the NuttShell (nsh) located at examples/nsh. This
configuration is focused on low level, command-line driver testing. It
has no network.
NOTES:
1. NSH built-in applications are supported.
Binary Formats:
CONFIG_BUILTIN=y : Enable support for built-in programs
Application Configuration:
CONFIG_NSH_BUILTIN_APPS=y : Enable starting apps from NSH command line

View File

@ -171,12 +171,9 @@
#define LED_PANIC 3 /* The system has crashed N/C Blinking */
#undef LED_IDLE /* MCU is is sleep mode Not used */
/* Thus if LED0 is statically on, NuttX has successfully booted and is,
* apparently, running normally. If LED1 is flashing at approximately
/* Thus if LED1 is statically on, NuttX has successfully booted and is,
* apparently, running normally. If LED2 is flashing at approximately
* 2Hz, then a fatal error has been detected and the system has halted.
*
* NOTE: That LED0 is not used after completion of booting and may
* be used by other board-specific logic.
*/
/* Button definitions ***************************************************************/

View File

@ -43,19 +43,19 @@
* include/board.h and src/sam_autoleds.c. The LEDs are used to encode
* OS-related events as follows:
*
* SYMBOL Meaning LED state
* LED2 LED1
* --------------------- -------------------------- ------ ------ */
#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 N/C Blinking */
#undef LED_IDLE /* MCU is is sleep mode Not used */
* SYMBOL Meaning LED state
* LED1 LED2
* ------------------ ------------------------ ------ ------
* LED_STARTED NuttX has been started OFF OFF
* LED_HEAPALLOCATE Heap has been allocated OFF OFF
* LED_IRQSENABLED Interrupts enabled OFF OFF
* LED_STACKCREATED Idle stack created ON OFF
* LED_INIRQ In an interrupt No change
* LED_SIGNAL In a signal handler No change
* LED_ASSERTION An assertion failed No change
* LED_PANIC The system has crashed N/C Blinking
* LED_IDLE MCU is is sleep mode Not used
*/
/****************************************************************************
* Included Files