a1c991d921
Move boards to boards folder * boards: rename configs folder to boards This is the proposed layout after the change: boards: - folder containing board folders <board>: - name of each board drivers: - extra drivers specific for platform include: - header files for the boars scripts: - extra scripts specific for platform src: - board specific code tools: - extra tools specific for platform <config>: - board specific configuration(s) Note: <xxx> names are dependent on platform This is a logical change to aim to the arch layout but this is a huge change it should be done in several steps to lower the risk. Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * Kconfig: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * Makefile: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * Makefile.*: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * Make.defs: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * .sh: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * .mk: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * .c & .h: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> * .bat: replace configs with boards The change is needed after the path change Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com> Approved-by: Gregory Nutt <gnutt@nuttx.org> |
||
---|---|---|
.. | ||
hello | ||
include | ||
nsh | ||
scripts | ||
src | ||
Kconfig | ||
README.txt |
README ====== This is the README file for the port of NuttX to the Arduino Mega 2560 Rev3. https://www.arduino.cc/en/Main/ArduinoBoardMega2560 The board is based on ATMega2560 chip from Atmel http://www.atmel.com/devices/atmega2560.aspx Contents ======== o Toolchain o Serial Console o Configurations Toolchain ========= Right now only Atmel's AVR8 Toolchain is supported. You can get it from http://www.atmel.com/tools/atmelavrtoolchainforwindows.aspx It is basically WinAVR compatible so sub-projects may define WinAVR as a tool-chain but specify path to the Atmel AVR8 in path. See arduino-mega2560/hello for example. Serial Console ============== The serial console is available on USART0. You will need to connect an RS-232 shield or an external RS-232 driver as follows: TXD: TX0->1 RXD: RX0->0 GND: Power GND +5V: Power +5V You will then need to use a terminal program configured at 38400 8N1. Configurations ============== Common Configuration Notes -------------------------- 1. Each Arduino MEGA2560 configuration is maintained in a sub-directory and can be selected as follow: tools/configure.sh arduino-mega2560/<subdir> Where <subdir> is one of the configuration sub-directories described in the following paragraph. 2. These configurations use the mconf-based configuration tool. To change a 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. 3. By default, all configurations assume the Atmel Studio AVR8 toolchain under Cygwin with Windows. This is easily reconfigured: CONFIG_HOST_WINDOWS=y CONFIG_WINDOWS_CYGWIN=y CONFIG_AVR_BUILDROOT_TOOLCHAIN=y Configuration Sub-Directories ----------------------------- hello: The simple apps/examples/hello "Hello, World!" example. nsh: This is a reduce NuttShell (NSH) configuration using apps/example/nsh. The serial console is provided on USART0 and can be accessed via an external RS-232 driver as described above under "Serial Console". NOTES: 1. As of 2015-01-16, the default static memory usage is: $ size nuttx.elf text data bss dec hex filename 34348 2117 944 37409 9221 nuttx.elf And dynamic, heap usage: nsh> free total used free largest Mem: 4736 1768 2968 2968 There is plenty of FLASH space but not a lot of free SRAM. This SRAM usage is due primarily to constant strings defined by NSH. NOTE: I investigated the possibility of adding IPTR/IOBJ qualifiers in the NSH library and moving the strings to FLASH. This is still a possibility but would requires some extensive changes to NSH.