nuttx/configs/olimex-stm32-p407/README.txt
2017-01-22 18:09:34 -06:00

104 lines
3.7 KiB
Plaintext

README
======
The NuttX configuration for the Olimex STM32-P407 is derives more or less
directly from the Olimex STM32-P207 board support. The P207 and P407 seem
to share the same board design. Other code comes from the STM3240G board
support (which has the same crystal and clocking) and from the STM32 F4
Discovery (which has the same STM32 part)
Note that CONFIG_STM32_DISABLE_IDLE_SLEEP_DURING_DEBUG is enabled so
that the JTAG connection is not disconnected by the idle loop.
The following peripherals are available in this configuration.
- LEDs: show the sytem status
- Buttons: TAMPER-button, WKUP-button, J1-Joystick (consists of RIGHT-,
UP-, LEFT-, DOWN-, and CENTER-button). Built in app
'buttons' works.
- ADC: ADC1 samples the red trim potentiometer AN_TR
Built in app 'adc' works.
- USB-FS-OTG: enabled but not really tested, since there is only a
USB-A-connector (host) connected to the full speed µC inputs.
The other connector (device) is connected to the high speed µC
inputs, but it seems that NuttX has currently no driver
for it.
- CAN: Built in app 'can' works, but apart from that not really tested.
- Ethernet: Ping to other station on the network works.
Configurations
==============
Each Olimex STM32-P407 configuration is maintained in a sub-directory and can be
selected as follow:
cd tools
./configure.sh olimex-stm32-p407/<subdir>
cd -
. ./setenv.sh
Where <subdir> is one of the following:
nsh:
This is the NuttShell (NSH) using the NSH startup logic at
apps/examples/nsh.
NOTES:
1. This configuration uses the mconf-based configuration tool. To
change this 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. Serial Output
This configuraiont produces all of its test output on the serial
console. This configuration has USART3 enabled as a serial console.
This is the connector labeled RS232_2. This can easily be changed
by reconfiguring with 'make menuconfig'.
3. Toolchain
By default, the host platform is set to be Linux using the NuttX
buildroot toolchain. The host and/or toolchain selection can easily
be changed with 'make menuconfig'.
4. Kernel Modules
I used this configuration for testing NuttX kernel modules with the
following configuration additions to the configuration file:
CONFIG_BOARDCTL_OS_SYMTAB=y
CONFIG_EXAMPLES_MODULE=y
CONFIG_EXAMPLES_MODULE_DEVMINOR=0
CONFIG_EXAMPLES_MODULE_DEVPATH="/dev/ram0"
CONFIG_FS_ROMFS=y
CONFIG_LIBC_ARCH_ELF=y
CONFIG_LIBC_DLLFCN=y
CONFIG_MODULE=y
CONFIG_MODULE_ALIGN_LOG2=2
CONFIG_MODULE_BUFFERINCR=32
CONFIG_MODULE_BUFFERSIZE=128
STATUS:
2016-12-21: This board configuration was ported from the Olimex STM32 P207
port. Note that none of the above features have been verified. USB, CAN,
ADC, and Ethernet are disabled in the base NSH configuration until they
can be verified. These features should be functional but may required
some tweaks due to the different clock configurations. The Olimex STM32
P207 nsh/defconfig would be a good starting place for restoring these
feature configurations.
CCM memory is not included in the heap (CONFIG_STM32_CCMEXCLUDE=y) because
it does no suport DMA, leaving only 128KiB for program usage.