Remove stm32f100rc_generic board configuration
This commit is contained in:
parent
ed4978da54
commit
46e45619c0
@ -734,15 +734,6 @@ config ARCH_BOARD_STM3240G_EVAL
|
|||||||
microcontroller (ARM Cortex-M4 with FPU). This port uses a GNU Cortex-M4
|
microcontroller (ARM Cortex-M4 with FPU). This port uses a GNU Cortex-M4
|
||||||
toolchain (such as CodeSourcery).
|
toolchain (such as CodeSourcery).
|
||||||
|
|
||||||
config ARCH_BOARD_STM32F100RC_GENERIC
|
|
||||||
bool "STMicro STM32F100RC generic board"
|
|
||||||
depends on ARCH_CHIP_STM32F100RC
|
|
||||||
select ARCH_HAVE_LEDS
|
|
||||||
select ARCH_HAVE_BUTTONS
|
|
||||||
select ARCH_HAVE_IRQBUTTONS
|
|
||||||
---help---
|
|
||||||
STMicro STM32F100RC generic board.
|
|
||||||
|
|
||||||
config ARCH_BOARD_STM32F3_DISCOVERY
|
config ARCH_BOARD_STM32F3_DISCOVERY
|
||||||
bool "STMicro STM32F3-Discovery board"
|
bool "STMicro STM32F3-Discovery board"
|
||||||
depends on ARCH_CHIP_STM32F303VC
|
depends on ARCH_CHIP_STM32F303VC
|
||||||
@ -1085,7 +1076,6 @@ config ARCH_BOARD
|
|||||||
default "stm3210e-eval" if ARCH_BOARD_STM3210E_EVAL
|
default "stm3210e-eval" if ARCH_BOARD_STM3210E_EVAL
|
||||||
default "stm3220g-eval" if ARCH_BOARD_STM3220G_EVAL
|
default "stm3220g-eval" if ARCH_BOARD_STM3220G_EVAL
|
||||||
default "stm3240g-eval" if ARCH_BOARD_STM3240G_EVAL
|
default "stm3240g-eval" if ARCH_BOARD_STM3240G_EVAL
|
||||||
default "stm32f100rc_generic" if ARCH_BOARD_STM32F100RC_GENERIC
|
|
||||||
default "stm32f3discovery" if ARCH_BOARD_STM32F3_DISCOVERY
|
default "stm32f3discovery" if ARCH_BOARD_STM32F3_DISCOVERY
|
||||||
default "stm32f4discovery" if ARCH_BOARD_STM32F4_DISCOVERY
|
default "stm32f4discovery" if ARCH_BOARD_STM32F4_DISCOVERY
|
||||||
default "stm32f429i-disco" if ARCH_BOARD_STM32F429I_DISCO
|
default "stm32f429i-disco" if ARCH_BOARD_STM32F429I_DISCO
|
||||||
@ -1378,9 +1368,6 @@ endif
|
|||||||
if ARCH_BOARD_STM3240G_EVAL
|
if ARCH_BOARD_STM3240G_EVAL
|
||||||
source "configs/stm3240g-eval/Kconfig"
|
source "configs/stm3240g-eval/Kconfig"
|
||||||
endif
|
endif
|
||||||
if ARCH_BOARD_STM32F100RC_GENERIC
|
|
||||||
source "configs/stm32f100rc_generic/Kconfig"
|
|
||||||
endif
|
|
||||||
if ARCH_BOARD_STM32F4_DISCOVERY
|
if ARCH_BOARD_STM32F4_DISCOVERY
|
||||||
source "configs/stm32f4discovery/Kconfig"
|
source "configs/stm32f4discovery/Kconfig"
|
||||||
endif
|
endif
|
||||||
|
@ -543,12 +543,6 @@ configs/stm3240g-eval
|
|||||||
microcontroller (ARM Cortex-M4 with FPU). This port uses a GNU Cortex-M4
|
microcontroller (ARM Cortex-M4 with FPU). This port uses a GNU Cortex-M4
|
||||||
toolchain (such as CodeSourcery).
|
toolchain (such as CodeSourcery).
|
||||||
|
|
||||||
configs/stm32f100rc_generic
|
|
||||||
STMicro STM32F100RC generic board based on STM32F100RC high-density value line
|
|
||||||
chip. This "generic" configuration is not very usable out-of-box, but can be
|
|
||||||
used as a starting point to creating new configs with similar STM32
|
|
||||||
high-density value line chips.
|
|
||||||
|
|
||||||
configs/stm32f4discovery
|
configs/stm32f4discovery
|
||||||
STMicro STM32F4-Discovery board based on the STMIcro STM32F407VGT6 MCU.
|
STMicro STM32F4-Discovery board based on the STMIcro STM32F407VGT6 MCU.
|
||||||
|
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
#
|
|
||||||
# For a description of the syntax of this configuration file,
|
|
||||||
# see misc/tools/kconfig-language.txt.
|
|
||||||
#
|
|
||||||
|
|
||||||
if ARCH_BOARD_STM32F100RC_GENERIC
|
|
||||||
comment "STM32F100RC Generic Hardware Configuration"
|
|
||||||
|
|
||||||
config PM_BUTTONS
|
|
||||||
bool "PM Button support"
|
|
||||||
default n
|
|
||||||
depends on PM && ARCH_IRQBUTTONS
|
|
||||||
---help---
|
|
||||||
Enable PM button EXTI interrupts to support PM testing
|
|
||||||
|
|
||||||
config PM_BUTTON_ACTIVITY
|
|
||||||
int "Button PM activity weight"
|
|
||||||
default 10
|
|
||||||
depends on PM_BUTTONS
|
|
||||||
---help---
|
|
||||||
The activity weight to report to the power management subsystem when a button is pressed.
|
|
||||||
|
|
||||||
config PM_ALARM_SEC
|
|
||||||
int "PM_STANDBY delay (seconds)"
|
|
||||||
default 15
|
|
||||||
depends on PM && RTC_ALARM
|
|
||||||
---help---
|
|
||||||
Number of seconds to wait in PM_STANDBY before going to PM_STANDBY mode.
|
|
||||||
|
|
||||||
config PM_ALARM_NSEC
|
|
||||||
int "PM_STANDBY delay (nanoseconds)"
|
|
||||||
default 0
|
|
||||||
depends on PM && RTC_ALARM
|
|
||||||
---help---
|
|
||||||
Number of additional nanoseconds to wait in PM_STANDBY before going to PM_STANDBY mode.
|
|
||||||
|
|
||||||
config PM_SLEEP_WAKEUP
|
|
||||||
bool "PM_SLEEP wake-up alarm"
|
|
||||||
default n
|
|
||||||
depends on PM && RTC_ALARM
|
|
||||||
---help---
|
|
||||||
Wake-up of PM_SLEEP mode after a delay and resume normal operation.
|
|
||||||
|
|
||||||
config PM_SLEEP_WAKEUP_SEC
|
|
||||||
int "PM_SLEEP delay (seconds)"
|
|
||||||
default 10
|
|
||||||
depends on PM && RTC_ALARM
|
|
||||||
---help---
|
|
||||||
Number of seconds to wait in PM_SLEEP before going to PM_STANDBY mode.
|
|
||||||
|
|
||||||
config PM_SLEEP_WAKEUP_NSEC
|
|
||||||
int "PM_SLEEP delay (nanoseconds)"
|
|
||||||
default 0
|
|
||||||
depends on PM && RTC_ALARM
|
|
||||||
---help---
|
|
||||||
Number of additional nanoseconds to wait in PM_SLEEP before going to PM_STANDBY mode.
|
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
@ -1,469 +0,0 @@
|
|||||||
README
|
|
||||||
======
|
|
||||||
|
|
||||||
This README discusses issues unique to NuttX configurations for the STMicro
|
|
||||||
STM32F100RC generic board. This "generic" configuration is not very usable
|
|
||||||
out-of-box, but can be used as a starting point to creating new configs with
|
|
||||||
similar STM32 high-density value line chips. As a bare-minimum this config only
|
|
||||||
specifies one LED (on PA0) and one button (on PA1), you should change that to
|
|
||||||
match your hardware (some details below and in source files).
|
|
||||||
|
|
||||||
Contents
|
|
||||||
========
|
|
||||||
|
|
||||||
- Development Environment
|
|
||||||
- GNU Toolchain Options
|
|
||||||
- IDEs
|
|
||||||
- NuttX EABI "buildroot" Toolchain
|
|
||||||
- NuttX OABI "buildroot" Toolchain
|
|
||||||
- NXFLAT Toolchain
|
|
||||||
- LEDs
|
|
||||||
- UARTs
|
|
||||||
- "STMicro STM32F100RC generic" specific Configuration Options
|
|
||||||
- Configurations
|
|
||||||
|
|
||||||
Development Environment
|
|
||||||
=======================
|
|
||||||
|
|
||||||
Either Linux or Cygwin on Windows can be used for the development environment.
|
|
||||||
The source has been built only using the GNU toolchain (see below). Other
|
|
||||||
toolchains will likely cause problems.
|
|
||||||
|
|
||||||
GNU Toolchain Options
|
|
||||||
=====================
|
|
||||||
|
|
||||||
Toolchain Configurations
|
|
||||||
------------------------
|
|
||||||
The NuttX make system has been modified to support the following different
|
|
||||||
toolchain options.
|
|
||||||
|
|
||||||
1. The CodeSourcery GNU toolchain,
|
|
||||||
2. The Atollic Toolchain,
|
|
||||||
3. The devkitARM GNU toolchain,
|
|
||||||
4. Raisonance GNU toolchain, or
|
|
||||||
5. The NuttX buildroot Toolchain (see below).
|
|
||||||
|
|
||||||
All testing has been conducted using the CodeSourcery toolchain for Windows. To use
|
|
||||||
the Atollic, devkitARM, Raisonance GNU, or NuttX buildroot toolchain, you simply need to
|
|
||||||
add one of the following configuration options to your .config (or defconfig)
|
|
||||||
file:
|
|
||||||
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
|
|
||||||
|
|
||||||
If you change the default toolchain, then you may also have to modify the PATH in
|
|
||||||
the setenv.sh file if your make cannot find the tools.
|
|
||||||
|
|
||||||
NOTE: the CodeSourcery (for Windows), Atollic, devkitARM, and Raisonance toolchains are
|
|
||||||
Windows native toolchains. The CodeSourcey (for Linux) and NuttX buildroot
|
|
||||||
toolchains are Cygwin and/or Linux native toolchains. There are several limitations
|
|
||||||
to using a Windows based toolchain in a Cygwin environment. The three biggest are:
|
|
||||||
|
|
||||||
1. The Windows toolchain cannot follow Cygwin paths. Path conversions are
|
|
||||||
performed automatically in the Cygwin makefiles using the 'cygpath' utility
|
|
||||||
but you might easily find some new path problems. If so, check out 'cygpath -w'
|
|
||||||
|
|
||||||
2. Windows toolchains cannot follow Cygwin symbolic links. Many symbolic links
|
|
||||||
are used in Nuttx (e.g., include/arch). The make system works around these
|
|
||||||
problems for the Windows tools by copying directories instead of linking them.
|
|
||||||
But this can also cause some confusion for you: For example, you may edit
|
|
||||||
a file in a "linked" directory and find that your changes had no effect.
|
|
||||||
That is because you are building the copy of the file in the "fake" symbolic
|
|
||||||
directory. If you use a Windows toolchain, you should get in the habit of
|
|
||||||
making like this:
|
|
||||||
|
|
||||||
make clean_context all
|
|
||||||
|
|
||||||
An alias in your .bashrc file might make that less painful.
|
|
||||||
|
|
||||||
3. Dependencies are not made when using Windows versions of the GCC. This is
|
|
||||||
because the dependencies are generated using Windows pathes which do not
|
|
||||||
work with the Cygwin make.
|
|
||||||
|
|
||||||
MKDEP = $(TOPDIR)/tools/mknulldeps.sh
|
|
||||||
|
|
||||||
The CodeSourcery Toolchain (2009q1)
|
|
||||||
-----------------------------------
|
|
||||||
The CodeSourcery toolchain (2009q1) does not work with default optimization
|
|
||||||
level of -Os (See Make.defs). It will work with -O0, -O1, or -O2, but not with
|
|
||||||
-Os.
|
|
||||||
|
|
||||||
The Atollic "Pro" and "Lite" Toolchain
|
|
||||||
--------------------------------------
|
|
||||||
One problem that I had with the Atollic toolchains is that the provide a gcc.exe
|
|
||||||
and g++.exe in the same bin/ file as their ARM binaries. If the Atollic bin/ path
|
|
||||||
appears in your PATH variable before /usr/bin, then you will get the wrong gcc
|
|
||||||
when you try to build host executables. This will cause to strange, uninterpretable
|
|
||||||
errors build some host binaries in tools/ when you first make.
|
|
||||||
|
|
||||||
The Atollic "Lite" Toolchain
|
|
||||||
----------------------------
|
|
||||||
The free, "Lite" version of the Atollic toolchain does not support C++ nor
|
|
||||||
does it support ar, nm, objdump, or objdcopy. If you use the Atollic "Lite"
|
|
||||||
toolchain, you will have to set:
|
|
||||||
|
|
||||||
CONFIG_HAVE_CXX=n
|
|
||||||
|
|
||||||
In order to compile successfully. Otherwise, you will get errors like:
|
|
||||||
|
|
||||||
"C++ Compiler only available in TrueSTUDIO Professional"
|
|
||||||
|
|
||||||
The make may then fail in some of the post link processing because of some of
|
|
||||||
the other missing tools. The Make.defs file replaces the ar and nm with
|
|
||||||
the default system x86 tool versions and these seem to work okay. Disable all
|
|
||||||
of the following to avoid using objcopy:
|
|
||||||
|
|
||||||
CONFIG_RRLOAD_BINARY=n
|
|
||||||
CONFIG_INTELHEX_BINARY=n
|
|
||||||
CONFIG_MOTOROLA_SREC=n
|
|
||||||
CONFIG_RAW_BINARY=n
|
|
||||||
|
|
||||||
devkitARM
|
|
||||||
---------
|
|
||||||
The devkitARM toolchain includes a version of MSYS make. Make sure that the
|
|
||||||
the paths to Cygwin's /bin and /usr/bin directories appear BEFORE the devkitARM
|
|
||||||
path or will get the wrong version of make.
|
|
||||||
|
|
||||||
IDEs
|
|
||||||
====
|
|
||||||
|
|
||||||
NuttX is built using command-line make. It can be used with an IDE, but some
|
|
||||||
effort will be required to create the project.
|
|
||||||
|
|
||||||
Makefile Build
|
|
||||||
--------------
|
|
||||||
Under Eclipse, it is pretty easy to set up an "empty makefile project" and
|
|
||||||
simply use the NuttX makefile to build the system. That is almost for free
|
|
||||||
under Linux. Under Windows, you will need to set up the "Cygwin GCC" empty
|
|
||||||
makefile project in order to work with Windows (Google for "Eclipse Cygwin" -
|
|
||||||
there is a lot of help on the internet).
|
|
||||||
|
|
||||||
Native Build
|
|
||||||
------------
|
|
||||||
Here are a few tips before you start that effort:
|
|
||||||
|
|
||||||
1) Select the toolchain that you will be using in your .config file
|
|
||||||
2) Start the NuttX build at least one time from the Cygwin command line
|
|
||||||
before trying to create your project. This is necessary to create
|
|
||||||
certain auto-generated files and directories that will be needed.
|
|
||||||
3) Set up include pathes: You will need include/, arch/arm/src/stm32,
|
|
||||||
arch/arm/src/common, arch/arm/src/armv7-m, and sched/.
|
|
||||||
4) All assembly files need to have the definition option -D __ASSEMBLY__
|
|
||||||
on the command line.
|
|
||||||
|
|
||||||
Startup files will probably cause you some headaches. The NuttX startup file
|
|
||||||
is arch/arm/src/stm32/stm32_vectors.S. With RIDE, I have to build NuttX
|
|
||||||
one time from the Cygwin command line in order to obtain the pre-built
|
|
||||||
startup object needed by RIDE.
|
|
||||||
|
|
||||||
NuttX EABI "buildroot" Toolchain
|
|
||||||
================================
|
|
||||||
|
|
||||||
A GNU GCC-based toolchain is assumed. The files */setenv.sh should
|
|
||||||
be modified to point to the correct path to the Cortex-M3 GCC toolchain (if
|
|
||||||
different from the default in your PATH variable).
|
|
||||||
|
|
||||||
If you have no Cortex-M3 toolchain, one can be downloaded from the NuttX
|
|
||||||
SourceForge download site (https://sourceforge.net/projects/nuttx/files/buildroot/).
|
|
||||||
This GNU toolchain builds and executes in the Linux or Cygwin environment.
|
|
||||||
|
|
||||||
1. You must have already configured Nuttx in <some-dir>/nuttx.
|
|
||||||
|
|
||||||
cd tools
|
|
||||||
./configure.sh stm32f100rc_generic/<sub-dir>
|
|
||||||
|
|
||||||
2. Download the latest buildroot package into <some-dir>
|
|
||||||
|
|
||||||
3. unpack the buildroot tarball. The resulting directory may
|
|
||||||
have versioning information on it like buildroot-x.y.z. If so,
|
|
||||||
rename <some-dir>/buildroot-x.y.z to <some-dir>/buildroot.
|
|
||||||
|
|
||||||
4. cd <some-dir>/buildroot
|
|
||||||
|
|
||||||
5. cp configs/cortexm3-eabi-defconfig-4.6.3 .config
|
|
||||||
|
|
||||||
6. make oldconfig
|
|
||||||
|
|
||||||
7. make
|
|
||||||
|
|
||||||
8. Edit setenv.h, if necessary, so that the PATH variable includes
|
|
||||||
the path to the newly built binaries.
|
|
||||||
|
|
||||||
See the file configs/README.txt in the buildroot source tree. That has more
|
|
||||||
details PLUS some special instructions that you will need to follow if you are
|
|
||||||
building a Cortex-M3 toolchain for Cygwin under Windows.
|
|
||||||
|
|
||||||
NOTE: Unfortunately, the 4.6.3 EABI toolchain is not compatible with the
|
|
||||||
the NXFLAT tools. See the top-level TODO file (under "Binary loaders") for
|
|
||||||
more information about this problem. If you plan to use NXFLAT, please do not
|
|
||||||
use the GCC 4.6.3 EABI toochain; instead use the GCC 4.3.3 OABI toolchain.
|
|
||||||
See instructions below.
|
|
||||||
|
|
||||||
NuttX OABI "buildroot" Toolchain
|
|
||||||
================================
|
|
||||||
|
|
||||||
The older, OABI buildroot toolchain is also available. To use the OABI
|
|
||||||
toolchain:
|
|
||||||
|
|
||||||
1. When building the buildroot toolchain, either (1) modify the cortexm3-eabi-defconfig-4.6.3
|
|
||||||
configuration to use EABI (using 'make menuconfig'), or (2) use an exising OABI
|
|
||||||
configuration such as cortexm3-defconfig-4.3.3
|
|
||||||
|
|
||||||
2. Modify the Make.defs file to use the OABI conventions:
|
|
||||||
|
|
||||||
+CROSSDEV = arm-nuttx-elf-
|
|
||||||
+ARCHCPUFLAGS = -mtune=cortex-m3 -march=armv7-m -mfloat-abi=soft
|
|
||||||
+NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-gotoff.ld -no-check-sections
|
|
||||||
-CROSSDEV = arm-nuttx-eabi-
|
|
||||||
-ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
|
|
||||||
-NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-pcrel.ld -no-check-sections
|
|
||||||
|
|
||||||
NXFLAT Toolchain
|
|
||||||
================
|
|
||||||
|
|
||||||
If you are *not* using the NuttX buildroot toolchain and you want to use
|
|
||||||
the NXFLAT tools, then you will still have to build a portion of the buildroot
|
|
||||||
tools -- just the NXFLAT tools. The buildroot with the NXFLAT tools can
|
|
||||||
be downloaded from the NuttX SourceForge download site
|
|
||||||
(https://sourceforge.net/projects/nuttx/files/).
|
|
||||||
|
|
||||||
This GNU toolchain builds and executes in the Linux or Cygwin environment.
|
|
||||||
|
|
||||||
1. You must have already configured Nuttx in <some-dir>/nuttx.
|
|
||||||
|
|
||||||
cd tools
|
|
||||||
./configure.sh lpcxpresso-lpc1768/<sub-dir>
|
|
||||||
|
|
||||||
2. Download the latest buildroot package into <some-dir>
|
|
||||||
|
|
||||||
3. unpack the buildroot tarball. The resulting directory may
|
|
||||||
have versioning information on it like buildroot-x.y.z. If so,
|
|
||||||
rename <some-dir>/buildroot-x.y.z to <some-dir>/buildroot.
|
|
||||||
|
|
||||||
4. cd <some-dir>/buildroot
|
|
||||||
|
|
||||||
5. cp configs/cortexm3-defconfig-nxflat .config
|
|
||||||
|
|
||||||
6. make oldconfig
|
|
||||||
|
|
||||||
7. make
|
|
||||||
|
|
||||||
8. Edit setenv.h, if necessary, so that the PATH variable includes
|
|
||||||
the path to the newly builtNXFLAT binaries.
|
|
||||||
|
|
||||||
LEDs
|
|
||||||
====
|
|
||||||
|
|
||||||
It is asumed that STMicro STM32F100RC generic board board has one LED on PA0.
|
|
||||||
You should configure the port and pin number in
|
|
||||||
configs/stm32f100rc_generic/src/stm32f100rc_internal.h. This LED is 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/up_leds.c. The LED is used
|
|
||||||
to encode OS-related events as follows:
|
|
||||||
|
|
||||||
SYMBOL Meaning LED1*
|
|
||||||
green
|
|
||||||
------------------- ----------------------- -------
|
|
||||||
LED_STARTED NuttX has been started ON
|
|
||||||
LED_HEAPALLOCATE Heap has been allocated ON
|
|
||||||
LED_IRQSENABLED Interrupts enabled ON
|
|
||||||
LED_STACKCREATED Idle stack created ON
|
|
||||||
LED_INIRQ In an interrupt ON
|
|
||||||
LED_SIGNAL In a signal handler ON
|
|
||||||
LED_ASSERTION An assertion failed OFF
|
|
||||||
LED_PANIC The system has crashed OFF
|
|
||||||
|
|
||||||
So basically if the LED is off it means that there is a problem.
|
|
||||||
|
|
||||||
UART
|
|
||||||
====
|
|
||||||
|
|
||||||
Default USART/UART Configuration
|
|
||||||
--------------------------------
|
|
||||||
|
|
||||||
USART2 is enabled in all configurations (see */defconfig). RX and TX are
|
|
||||||
configured on pins PA3 and PA2, respectively.
|
|
||||||
|
|
||||||
"STMicro STM32F100RC generic" specific Configuration Options
|
|
||||||
============================================================
|
|
||||||
|
|
||||||
CONFIG_ARCH - Identifies the arch/ subdirectory. This should
|
|
||||||
be set to:
|
|
||||||
|
|
||||||
CONFIG_ARCH=arm
|
|
||||||
|
|
||||||
CONFIG_ARCH_family - For use in C code:
|
|
||||||
|
|
||||||
CONFIG_ARCH_ARM=y
|
|
||||||
|
|
||||||
CONFIG_ARCH_architecture - For use in C code:
|
|
||||||
|
|
||||||
CONFIG_ARCH_CORTEXM3=y
|
|
||||||
|
|
||||||
CONFIG_ARCH_CHIP - Identifies the arch/*/chip subdirectory
|
|
||||||
|
|
||||||
CONFIG_ARCH_CHIP=stm32
|
|
||||||
|
|
||||||
CONFIG_ARCH_CHIP_name - For use in C code to identify the exact
|
|
||||||
chip:
|
|
||||||
|
|
||||||
CONFIG_ARCH_CHIP_STM32F100RC=y
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG - Enables special STM32 clock
|
|
||||||
configuration features.
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG=n
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD - Identifies the configs subdirectory and
|
|
||||||
hence, the board that supports the particular chip or SoC.
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD=stm32f100rc_generic
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD_name - For use in C code
|
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD_STM32F100RC_GENERIC=y
|
|
||||||
|
|
||||||
CONFIG_ARCH_LOOPSPERMSEC - Must be calibrated for correct operation
|
|
||||||
of delay loops
|
|
||||||
|
|
||||||
CONFIG_ENDIAN_BIG - define if big endian (default is little
|
|
||||||
endian)
|
|
||||||
|
|
||||||
CONFIG_RAM_SIZE - Describes the installed DRAM (SRAM in this case):
|
|
||||||
|
|
||||||
CONFIG_RAM_SIZE=24576 (24kB)
|
|
||||||
|
|
||||||
CONFIG_RAM_START - The start address of installed DRAM
|
|
||||||
|
|
||||||
CONFIG_RAM_START=0x20000000
|
|
||||||
|
|
||||||
CONFIG_ARCH_LEDS - Use LED to show state. Unique to boards that have LED(s)
|
|
||||||
|
|
||||||
CONFIG_ARCH_INTERRUPTSTACK - This architecture supports an interrupt
|
|
||||||
stack. If defined, this symbol is the size of the interrupt
|
|
||||||
stack in bytes. If not defined, the user task stacks will be
|
|
||||||
used during interrupt handling.
|
|
||||||
|
|
||||||
CONFIG_ARCH_STACKDUMP - Do stack dumps after assertions
|
|
||||||
|
|
||||||
CONFIG_ARCH_CALIBRATION - when used togeter with CONFIG_DEBUG enables some
|
|
||||||
build in instrumentation that cause a 100 second delay during boot-up.
|
|
||||||
This 100 second delay serves no purpose other than it allows you to
|
|
||||||
calibratre CONFIG_ARCH_LOOPSPERMSEC. You simply use a stop watch to
|
|
||||||
measure the 100 second delay then adjust CONFIG_ARCH_LOOPSPERMSEC until
|
|
||||||
the delay actually is 100 seconds.
|
|
||||||
|
|
||||||
Individual subsystems can be enabled:
|
|
||||||
|
|
||||||
AHB
|
|
||||||
----
|
|
||||||
CONFIG_STM32_CRC
|
|
||||||
CONFIG_STM32_DMA1
|
|
||||||
CONFIG_STM32_DMA2
|
|
||||||
|
|
||||||
APB1
|
|
||||||
----
|
|
||||||
CONFIG_STM32_TIM2
|
|
||||||
CONFIG_STM32_TIM3
|
|
||||||
CONFIG_STM32_TIM4
|
|
||||||
CONFIG_STM32_TIM5
|
|
||||||
CONFIG_STM32_TIM6
|
|
||||||
CONFIG_STM32_TIM7
|
|
||||||
CONFIG_STM32_TIM12
|
|
||||||
CONFIG_STM32_TIM13
|
|
||||||
CONFIG_STM32_TIM14
|
|
||||||
CONFIG_STM32_RTC
|
|
||||||
CONFIG_STM32_WWDG
|
|
||||||
CONFIG_STM32_IWDG
|
|
||||||
CONFIG_STM32_SPI2
|
|
||||||
CONFIG_STM32_SPI3
|
|
||||||
CONFIG_STM32_USART2
|
|
||||||
CONFIG_STM32_USART3
|
|
||||||
CONFIG_STM32_UART4
|
|
||||||
CONFIG_STM32_UART5
|
|
||||||
CONFIG_STM32_I2C1
|
|
||||||
CONFIG_STM32_I2C2
|
|
||||||
CONFIG_STM32_PWR -- Required for RTC
|
|
||||||
CONFIG_STM32_BKP -- Required for RTC
|
|
||||||
CONFIG_STM32_DAC1
|
|
||||||
CONFIG_STM32_DAC2
|
|
||||||
CONFIG_STM32_CEC
|
|
||||||
|
|
||||||
APB2
|
|
||||||
----
|
|
||||||
CONFIG_STM32_ADC1
|
|
||||||
CONFIG_STM32_TIM1
|
|
||||||
CONFIG_STM32_SPI1
|
|
||||||
CONFIG_STM32_USART1
|
|
||||||
CONFIG_STM32_TIM15
|
|
||||||
CONFIG_STM32_TIM16
|
|
||||||
CONFIG_STM32_TIM17
|
|
||||||
|
|
||||||
Timer devices may be used for different purposes. One special purpose is
|
|
||||||
to generate modulated outputs for such things as motor control. If CONFIG_STM32_TIMn
|
|
||||||
is defined (as above) then the following may also be defined to indicate that
|
|
||||||
the timer is intended to be used for pulsed output modulation, ADC conversion,
|
|
||||||
or DAC conversion. Note that ADC/DAC require two definition: Not only do you have
|
|
||||||
to assign the timer (n) for used by the ADC or DAC, but then you also have to
|
|
||||||
configure which ADC or DAC (m) it is assigned to.
|
|
||||||
|
|
||||||
CONFIG_STM32_TIMn_PWM Reserve timer n for use by PWM, n=1,..,17
|
|
||||||
CONFIG_STM32_TIMn_ADC Reserve timer n for use by ADC, n=1,..,17
|
|
||||||
CONFIG_STM32_TIMn_ADC1 Reserve timer n to trigger ADCm, n=1,..,17
|
|
||||||
CONFIG_STM32_TIMn_DAC Reserve timer n for use by DAC, n=1,..,17
|
|
||||||
CONFIG_STM32_TIMn_DACm Reserve timer n to trigger DACm, n=1,..,17, m=1,..,2
|
|
||||||
|
|
||||||
For each timer that is enabled for PWM usage, we need the following additional
|
|
||||||
configuration settings:
|
|
||||||
|
|
||||||
CONFIG_STM32_TIMx_CHANNEL - Specifies the timer output channel {1,..,4}
|
|
||||||
|
|
||||||
NOTE: The STM32 timers are each capable of generating different signals on
|
|
||||||
each of the four channels with different duty cycles. That capability is
|
|
||||||
not supported by this driver: Only one output channel per timer.
|
|
||||||
|
|
||||||
JTAG Enable settings (by default full SWJ is enabled):
|
|
||||||
|
|
||||||
CONFIG_STM32_JTAG_FULL_ENABLE - Enables full SWJ (JTAG-DP + SW-DP)
|
|
||||||
CONFIG_STM32_JTAG_NOJNTRST_ENABLE - Enables full SWJ (JTAG-DP + SW-DP)
|
|
||||||
but without JNTRST.
|
|
||||||
CONFIG_STM32_JTAG_SW_ENABLE - Set JTAG-DP disabled and SW-DP enabled
|
|
||||||
|
|
||||||
STMicro STM32F100RC generic specific device driver settings
|
|
||||||
|
|
||||||
CONFIG_U[S]ARTn_SERIAL_CONSOLE - selects the USARTn (n=1,2,3) or UART
|
|
||||||
m (m=4,5) for the console and ttys0 (default is the USART1).
|
|
||||||
CONFIG_U[S]ARTn_RXBUFSIZE - Characters are buffered as received.
|
|
||||||
This specific the size of the receive buffer
|
|
||||||
CONFIG_U[S]ARTn_TXBUFSIZE - Characters are buffered before
|
|
||||||
being sent. This specific the size of the transmit buffer
|
|
||||||
CONFIG_U[S]ARTn_BAUD - The configure BAUD of the UART. Must be
|
|
||||||
CONFIG_U[S]ARTn_BITS - The number of bits. Must be either 7 or 8.
|
|
||||||
CONFIG_U[S]ARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
|
|
||||||
CONFIG_U[S]ARTn_2STOP - Two stop bits
|
|
||||||
|
|
||||||
Configurations
|
|
||||||
==============
|
|
||||||
|
|
||||||
Each STMicro STM32F100RC generic configuration is maintained in a sub-directory
|
|
||||||
and can be selected as follow:
|
|
||||||
|
|
||||||
cd tools
|
|
||||||
./configure.sh stm32f100rc_generic/<subdir>
|
|
||||||
cd -
|
|
||||||
. ./setenv.sh
|
|
||||||
|
|
||||||
Where <subdir> is one of the following:
|
|
||||||
|
|
||||||
nsh:
|
|
||||||
---
|
|
||||||
Configures the NuttShell (nsh) located at apps/examples/nsh. The
|
|
||||||
Configuration enables only the serial NSH interfaces.
|
|
||||||
|
|
||||||
Default toolchain:
|
|
||||||
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux / Mac OS X
|
|
@ -1,192 +0,0 @@
|
|||||||
/************************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/include/board.h
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#ifndef __ARCH_BOARD_BOARD_H
|
|
||||||
#define __ARCH_BOARD_BOARD_H
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Included Files
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#include <nuttx/config.h>
|
|
||||||
#ifndef __ASSEMBLY__
|
|
||||||
# include <stdint.h>
|
|
||||||
#endif
|
|
||||||
#include "stm32_rcc.h"
|
|
||||||
#include "stm32.h"
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Definitions
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
/* Clocking *************************************************************************/
|
|
||||||
|
|
||||||
/* On-board crystal frequency is 8MHz (HSE) */
|
|
||||||
|
|
||||||
#define STM32_BOARD_XTAL 8000000ul
|
|
||||||
|
|
||||||
/* PLL source is HSE / 1, PLL multiplier is 3: PLL output frequency is 8MHz (XTAL) x 3 = 24MHz */
|
|
||||||
|
|
||||||
#define STM32_CFGR2_PREDIV1 RCC_CFGR2_PREDIV1d1
|
|
||||||
#define STM32_CFGR_PLLSRC RCC_CFGR_PLLSRC
|
|
||||||
#define STM32_CFGR_PLLXTPRE 0
|
|
||||||
#define STM32_CFGR_PLLMUL RCC_CFGR_PLLMUL_CLKx3
|
|
||||||
#define STM32_PLL_FREQUENCY (3 * STM32_BOARD_XTAL)
|
|
||||||
|
|
||||||
/* Use the PLL and set the SYSCLK source to be the PLL */
|
|
||||||
|
|
||||||
#define STM32_SYSCLK_SW RCC_CFGR_SW_PLL
|
|
||||||
#define STM32_SYSCLK_SWS RCC_CFGR_SWS_PLL
|
|
||||||
#define STM32_SYSCLK_FREQUENCY STM32_PLL_FREQUENCY
|
|
||||||
|
|
||||||
/* AHB clock (HCLK) is SYSCLK (24MHz) */
|
|
||||||
|
|
||||||
#define STM32_RCC_CFGR_HPRE RCC_CFGR_HPRE_SYSCLK
|
|
||||||
#define STM32_HCLK_FREQUENCY STM32_PLL_FREQUENCY
|
|
||||||
|
|
||||||
/* APB2 clock (PCLK2) is HCLK (24MHz) */
|
|
||||||
|
|
||||||
#define STM32_RCC_CFGR_PPRE2 RCC_CFGR_PPRE2_HCLK
|
|
||||||
#define STM32_PCLK2_FREQUENCY STM32_HCLK_FREQUENCY
|
|
||||||
|
|
||||||
/* APB2 timers (1, 15-17) will receive PCLK2. */
|
|
||||||
|
|
||||||
#define STM32_APB2_TIM1_CLKIN STM32_PCLK2_FREQUENCY
|
|
||||||
#define STM32_APB2_TIM15_CLKIN STM32_PCLK2_FREQUENCY
|
|
||||||
#define STM32_APB2_TIM16_CLKIN STM32_PCLK2_FREQUENCY
|
|
||||||
#define STM32_APB2_TIM17_CLKIN STM32_PCLK2_FREQUENCY
|
|
||||||
|
|
||||||
/* APB1 clock (PCLK1) is HCLK (24MHz) */
|
|
||||||
|
|
||||||
#define STM32_RCC_CFGR_PPRE1 RCC_CFGR_PPRE1_HCLK
|
|
||||||
#define STM32_PCLK1_FREQUENCY STM32_HCLK_FREQUENCY
|
|
||||||
|
|
||||||
/* APB1 timers (2-7, 12-14) will receive PCLK1. */
|
|
||||||
|
|
||||||
#define STM32_APB1_TIM2_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM3_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM4_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM5_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM6_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM7_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM12_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM13_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
#define STM32_APB1_TIM14_CLKIN STM32_PCLK1_FREQUENCY
|
|
||||||
|
|
||||||
/* Timer Frequencies, if APBx is set to 1, frequency is same to APBx
|
|
||||||
* otherwise frequency is 2xAPBx.
|
|
||||||
* Note: TIM1,15-17 are on APB2, others on APB1 */
|
|
||||||
|
|
||||||
#define STM32_TIM18_FREQUENCY STM32_HCLK_FREQUENCY
|
|
||||||
#define STM32_TIM27_FREQUENCY STM32_HCLK_FREQUENCY
|
|
||||||
|
|
||||||
/* LED definitions ******************************************************************/
|
|
||||||
|
|
||||||
/* It is assumed that a generic board has 1 LED. Thus only two different states
|
|
||||||
* can be shown. Statuses defined as "1" will light the LED, the ones defined as
|
|
||||||
* "0" will turn the LED off. */
|
|
||||||
|
|
||||||
#define LED_STARTED 1
|
|
||||||
#define LED_HEAPALLOCATE 1
|
|
||||||
#define LED_IRQSENABLED 1
|
|
||||||
#define LED_STACKCREATED 1
|
|
||||||
#define LED_INIRQ 1
|
|
||||||
#define LED_SIGNAL 1
|
|
||||||
#define LED_ASSERTION 0
|
|
||||||
#define LED_PANIC 0
|
|
||||||
|
|
||||||
/* Button definitions ***************************************************************/
|
|
||||||
|
|
||||||
/* It is assumed that a generic board has 1 button. */
|
|
||||||
|
|
||||||
#define BUTTON_0 0
|
|
||||||
|
|
||||||
#define NUM_BUTTONS 1
|
|
||||||
|
|
||||||
#define BUTTON_0_BIT (1 << BUTTON_0)
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Public Data
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLY__
|
|
||||||
|
|
||||||
#undef EXTERN
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
#define EXTERN extern "C"
|
|
||||||
extern "C" {
|
|
||||||
#else
|
|
||||||
#define EXTERN extern
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Public Function Prototypes
|
|
||||||
************************************************************************************/
|
|
||||||
/************************************************************************************
|
|
||||||
* Name: stm32_boardinitialize
|
|
||||||
*
|
|
||||||
* Description:
|
|
||||||
* All STM32 architectures must provide the following entry point. This entry point
|
|
||||||
* is called early in the intitialization -- after all memory has been configured
|
|
||||||
* and mapped but before any devices have been initialized.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
EXTERN void stm32_boardinitialize(void);
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Name: stm32_ledinit, stm32_setled, and stm32_setleds
|
|
||||||
*
|
|
||||||
* Description:
|
|
||||||
* If CONFIG_ARCH_LEDS is defined, then NuttX will control the on-board LEDs. If
|
|
||||||
* CONFIG_ARCH_LEDS is not defined, then the following interfacesare available to
|
|
||||||
* control the LEDs from user applications.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#ifndef CONFIG_ARCH_LEDS
|
|
||||||
EXTERN void stm32_ledinit(void);
|
|
||||||
EXTERN void stm32_setled(int led, bool ledon);
|
|
||||||
EXTERN void stm32_setleds(uint8_t ledset);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#undef EXTERN
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __ASSEMBLY__ */
|
|
||||||
#endif /* __ARCH_BOARD_BOARD_H */
|
|
@ -1,112 +0,0 @@
|
|||||||
############################################################################
|
|
||||||
# configs/stm32f100rc_generic/nsh/Make.defs
|
|
||||||
#
|
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
# Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in
|
|
||||||
# the documentation and/or other materials provided with the
|
|
||||||
# distribution.
|
|
||||||
# 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
# used to endorse or promote products derived from this software
|
|
||||||
# without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
# POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
#
|
|
||||||
############################################################################
|
|
||||||
|
|
||||||
include ${TOPDIR}/.config
|
|
||||||
include ${TOPDIR}/tools/Config.mk
|
|
||||||
include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs
|
|
||||||
|
|
||||||
LDSCRIPT = ld.script
|
|
||||||
|
|
||||||
ifeq ($(WINTOOL),y)
|
|
||||||
# Windows-native toolchains
|
|
||||||
DIRLINK = $(TOPDIR)/tools/copydir.sh
|
|
||||||
DIRUNLINK = $(TOPDIR)/tools/unlink.sh
|
|
||||||
MKDEP = $(TOPDIR)/tools/mknulldeps.sh
|
|
||||||
ARCHINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}"
|
|
||||||
ARCHXXINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" -isystem "${shell cygpath -w $(TOPDIR)/include/cxx}"
|
|
||||||
ARCHSCRIPT = -T "${shell cygpath -w $(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT)}"
|
|
||||||
else
|
|
||||||
# Linux/Cygwin-native toolchain
|
|
||||||
MKDEP = $(TOPDIR)/tools/mkdeps.sh
|
|
||||||
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
|
|
||||||
ARCHXXINCLUDES = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx
|
|
||||||
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT)
|
|
||||||
endif
|
|
||||||
|
|
||||||
CC = $(CROSSDEV)gcc
|
|
||||||
CXX = $(CROSSDEV)g++
|
|
||||||
CPP = $(CROSSDEV)gcc -E
|
|
||||||
LD = $(CROSSDEV)ld
|
|
||||||
AR = $(CROSSDEV)ar rcs
|
|
||||||
NM = $(CROSSDEV)nm
|
|
||||||
OBJCOPY = $(CROSSDEV)objcopy
|
|
||||||
OBJDUMP = $(CROSSDEV)objdump
|
|
||||||
|
|
||||||
ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
|
|
||||||
ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
|
|
||||||
|
|
||||||
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
|
||||||
ARCHOPTIMIZATION = -g
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(CONFIG_DEBUG_NOOPT),y)
|
|
||||||
ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer
|
|
||||||
endif
|
|
||||||
|
|
||||||
ARCHCFLAGS = -fno-builtin
|
|
||||||
ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fno-rtti
|
|
||||||
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
|
|
||||||
ARCHWARNINGSXX = -Wall -Wshadow
|
|
||||||
ARCHDEFINES =
|
|
||||||
ARCHPICFLAGS = -fpic -msingle-pic-base -mpic-register=r10
|
|
||||||
|
|
||||||
CFLAGS = $(ARCHCFLAGS) $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe
|
|
||||||
CPICFLAGS = $(ARCHPICFLAGS) $(CFLAGS)
|
|
||||||
CXXFLAGS = $(ARCHCXXFLAGS) $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHXXINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe
|
|
||||||
CXXPICFLAGS = $(ARCHPICFLAGS) $(CXXFLAGS)
|
|
||||||
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
|
||||||
AFLAGS = $(CFLAGS) -D__ASSEMBLY__
|
|
||||||
|
|
||||||
NXFLATLDFLAGS1 = -r -d -warn-common
|
|
||||||
NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-pcrel.ld -no-check-sections
|
|
||||||
LDNXFLATFLAGS = -e main -s 2048
|
|
||||||
|
|
||||||
OBJEXT = .o
|
|
||||||
LIBEXT = .a
|
|
||||||
EXEEXT =
|
|
||||||
|
|
||||||
ifneq ($(CROSSDEV),arm-nuttx-elf-)
|
|
||||||
LDFLAGS = -nostartfiles -nodefaultlibs
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
|
|
||||||
LDFLAGS = -g
|
|
||||||
endif
|
|
||||||
|
|
||||||
HOSTCC = gcc
|
|
||||||
HOSTINCLUDES = -I.
|
|
||||||
HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -g -pipe
|
|
||||||
HOSTLDFLAGS =
|
|
||||||
|
|
@ -1,627 +0,0 @@
|
|||||||
#
|
|
||||||
# Automatically generated file; DO NOT EDIT.
|
|
||||||
# Nuttx/ Configuration
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Build Setup
|
|
||||||
#
|
|
||||||
# CONFIG_EXPERIMENTAL is not set
|
|
||||||
CONFIG_DEFAULT_SMALL=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Build Configuration
|
|
||||||
#
|
|
||||||
# CONFIG_APPS_DIR="../apps"
|
|
||||||
# CONFIG_BUILD_2PASS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Binary Output Formats
|
|
||||||
#
|
|
||||||
# CONFIG_RRLOAD_BINARY is not set
|
|
||||||
CONFIG_INTELHEX_BINARY=y
|
|
||||||
# CONFIG_MOTOROLA_SREC is not set
|
|
||||||
CONFIG_RAW_BINARY=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Customize Header Files
|
|
||||||
#
|
|
||||||
# CONFIG_ARCH_STDBOOL_H is not set
|
|
||||||
# CONFIG_ARCH_MATH_H is not set
|
|
||||||
# CONFIG_ARCH_FLOAT_H is not set
|
|
||||||
# CONFIG_ARCH_STDARG_H is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Debug Options
|
|
||||||
#
|
|
||||||
# CONFIG_DEBUG is not set
|
|
||||||
# CONFIG_DEBUG_SYMBOLS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# System Type
|
|
||||||
#
|
|
||||||
CONFIG_ARCH_ARM=y
|
|
||||||
# CONFIG_ARCH_AVR is not set
|
|
||||||
# CONFIG_ARCH_HC is not set
|
|
||||||
# CONFIG_ARCH_MIPS is not set
|
|
||||||
# CONFIG_ARCH_RGMP is not set
|
|
||||||
# CONFIG_ARCH_SH is not set
|
|
||||||
# CONFIG_ARCH_SIM is not set
|
|
||||||
# CONFIG_ARCH_X86 is not set
|
|
||||||
# CONFIG_ARCH_Z16 is not set
|
|
||||||
# CONFIG_ARCH_Z80 is not set
|
|
||||||
CONFIG_ARCH="arm"
|
|
||||||
|
|
||||||
#
|
|
||||||
# ARM Options
|
|
||||||
#
|
|
||||||
# CONFIG_ARCH_CHIP_C5471 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_CALYPSO is not set
|
|
||||||
# CONFIG_ARCH_CHIP_DM320 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_IMX is not set
|
|
||||||
# CONFIG_ARCH_CHIP_KINETIS is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LM3S is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LPC17XX is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LPC214X is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LPC2378 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LPC31XX is not set
|
|
||||||
# CONFIG_ARCH_CHIP_LPC43XX is not set
|
|
||||||
# CONFIG_ARCH_CHIP_SAM3U is not set
|
|
||||||
CONFIG_ARCH_CHIP_STM32=y
|
|
||||||
# CONFIG_ARCH_CHIP_STR71X is not set
|
|
||||||
CONFIG_ARCH_CORTEXM3=y
|
|
||||||
CONFIG_ARCH_HAVE_CMNVECTOR=y
|
|
||||||
CONFIG_ARCH_FAMILY="armv7-m"
|
|
||||||
CONFIG_ARCH_CHIP="stm32"
|
|
||||||
CONFIG_ARMV7M_CMNVECTOR=y
|
|
||||||
CONFIG_ARCH_HAVE_MPU=y
|
|
||||||
# CONFIG_ARMV7M_MPU is not set
|
|
||||||
# CONFIG_ARCH_IRQPRIO is not set
|
|
||||||
CONFIG_BOARD_LOOPSPERMSEC=2398
|
|
||||||
# CONFIG_ARCH_CALIBRATION is not set
|
|
||||||
# CONFIG_SERIAL_TERMIOS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# STM32 Configuration Options
|
|
||||||
#
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100C8 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100CB is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100R8 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100RB is not set
|
|
||||||
CONFIG_ARCH_CHIP_STM32F100RC=y
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100RD is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100RE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100V8 is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100VB is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100VC is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100VD is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F100VE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F103RE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F103VC is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F103VE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F103ZE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F105VB is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F107VC is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F207IG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F405RG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F405VG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F405ZG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407VE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407VG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407ZE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407ZG is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407IE is not set
|
|
||||||
# CONFIG_ARCH_CHIP_STM32F407IG is not set
|
|
||||||
CONFIG_STM32_STM32F10XX=y
|
|
||||||
CONFIG_STM32_VALUELINE=y
|
|
||||||
CONFIG_STM32_HIGHDENSITY=y
|
|
||||||
# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
|
|
||||||
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y
|
|
||||||
# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
|
|
||||||
# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
|
|
||||||
# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
|
|
||||||
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
|
|
||||||
# CONFIG_STM32_DFU is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# STM32 Peripheral Support
|
|
||||||
#
|
|
||||||
# CONFIG_STM32_ADC1 is not set
|
|
||||||
CONFIG_STM32_BKP=y
|
|
||||||
# CONFIG_STM32_CEC is not set
|
|
||||||
# CONFIG_STM32_CRC is not set
|
|
||||||
# CONFIG_STM32_DMA1 is not set
|
|
||||||
# CONFIG_STM32_DMA2 is not set
|
|
||||||
# CONFIG_STM32_DAC1 is not set
|
|
||||||
# CONFIG_STM32_DAC2 is not set
|
|
||||||
# CONFIG_STM32_FSMC is not set
|
|
||||||
# CONFIG_STM32_I2C1 is not set
|
|
||||||
# CONFIG_STM32_I2C2 is not set
|
|
||||||
# CONFIG_STM32_IWDG is not set
|
|
||||||
CONFIG_STM32_PWR=y
|
|
||||||
# CONFIG_STM32_SPI1 is not set
|
|
||||||
# CONFIG_STM32_SPI2 is not set
|
|
||||||
# CONFIG_STM32_SPI3 is not set
|
|
||||||
# CONFIG_STM32_TIM1 is not set
|
|
||||||
# CONFIG_STM32_TIM2 is not set
|
|
||||||
# CONFIG_STM32_TIM3 is not set
|
|
||||||
# CONFIG_STM32_TIM4 is not set
|
|
||||||
# CONFIG_STM32_TIM5 is not set
|
|
||||||
# CONFIG_STM32_TIM6 is not set
|
|
||||||
# CONFIG_STM32_TIM7 is not set
|
|
||||||
# CONFIG_STM32_TIM12 is not set
|
|
||||||
# CONFIG_STM32_TIM13 is not set
|
|
||||||
# CONFIG_STM32_TIM14 is not set
|
|
||||||
# CONFIG_STM32_TIM15 is not set
|
|
||||||
# CONFIG_STM32_TIM16 is not set
|
|
||||||
# CONFIG_STM32_TIM17 is not set
|
|
||||||
# CONFIG_STM32_USART1 is not set
|
|
||||||
CONFIG_STM32_USART2=y
|
|
||||||
# CONFIG_STM32_USART3 is not set
|
|
||||||
# CONFIG_STM32_UART4 is not set
|
|
||||||
# CONFIG_STM32_UART5 is not set
|
|
||||||
# CONFIG_STM32_WWDG is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Alternate Pin Mapping
|
|
||||||
#
|
|
||||||
# CONFIG_STM32_USART2_REMAP is not set
|
|
||||||
# CONFIG_STM32_JTAG_DISABLE is not set
|
|
||||||
CONFIG_STM32_JTAG_FULL_ENABLE=y
|
|
||||||
# CONFIG_STM32_JTAG_NOJNTRST_ENABLE is not set
|
|
||||||
# CONFIG_STM32_JTAG_SW_ENABLE is not set
|
|
||||||
# CONFIG_STM32_FORCEPOWER is not set
|
|
||||||
# CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# USB Host Configuration
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Architecture Options
|
|
||||||
#
|
|
||||||
# CONFIG_ARCH_NOINTC is not set
|
|
||||||
# CONFIG_ARCH_DMA is not set
|
|
||||||
CONFIG_ARCH_STACKDUMP=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Board Settings
|
|
||||||
#
|
|
||||||
CONFIG_RAM_START=0x20000000
|
|
||||||
CONFIG_RAM_SIZE=24576
|
|
||||||
CONFIG_ARCH_HAVE_INTERRUPTSTACK=y
|
|
||||||
CONFIG_ARCH_INTERRUPTSTACK=0
|
|
||||||
|
|
||||||
#
|
|
||||||
# Boot options
|
|
||||||
#
|
|
||||||
# CONFIG_BOOT_RUNFROMEXTSRAM is not set
|
|
||||||
CONFIG_BOOT_RUNFROMFLASH=y
|
|
||||||
# CONFIG_BOOT_RUNFROMISRAM is not set
|
|
||||||
# CONFIG_BOOT_RUNFROMSDRAM is not set
|
|
||||||
# CONFIG_BOOT_COPYTORAM is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Board Selection
|
|
||||||
#
|
|
||||||
CONFIG_ARCH_BOARD_STM32F100RC_GENERIC=y
|
|
||||||
# CONFIG_ARCH_BOARD_CUSTOM is not set
|
|
||||||
CONFIG_ARCH_BOARD="stm32f100rc_generic"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Common Board Options
|
|
||||||
#
|
|
||||||
CONFIG_ARCH_HAVE_LEDS=y
|
|
||||||
CONFIG_ARCH_LEDS=y
|
|
||||||
CONFIG_ARCH_HAVE_BUTTONS=y
|
|
||||||
# CONFIG_ARCH_BUTTONS is not set
|
|
||||||
CONFIG_ARCH_HAVE_IRQBUTTONS=y
|
|
||||||
CONFIG_NSH_MMCSDMINOR=0
|
|
||||||
|
|
||||||
#
|
|
||||||
# Board-Specific Options
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# STM32F100RC Generic Hardware Configuration
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# RTOS Features
|
|
||||||
#
|
|
||||||
CONFIG_USEC_PER_TICK=10000
|
|
||||||
CONFIG_RR_INTERVAL=200
|
|
||||||
# CONFIG_SCHED_INSTRUMENTATION is not set
|
|
||||||
CONFIG_TASK_NAME_SIZE=0
|
|
||||||
# CONFIG_JULIAN_TIME is not set
|
|
||||||
CONFIG_START_YEAR=2012
|
|
||||||
CONFIG_START_MONTH=11
|
|
||||||
CONFIG_START_DAY=1
|
|
||||||
CONFIG_DEV_CONSOLE=y
|
|
||||||
# CONFIG_MUTEX_TYPES is not set
|
|
||||||
# CONFIG_PRIORITY_INHERITANCE is not set
|
|
||||||
# CONFIG_FDCLONE_DISABLE is not set
|
|
||||||
# CONFIG_FDCLONE_STDIO is not set
|
|
||||||
CONFIG_SDCLONE_DISABLE=y
|
|
||||||
CONFIG_SCHED_WORKQUEUE=y
|
|
||||||
CONFIG_SCHED_HPWORKPRIORITY=192
|
|
||||||
CONFIG_SCHED_HPWORKPERIOD=50000
|
|
||||||
CONFIG_SCHED_HPWORKSTACKSIZE=1024
|
|
||||||
CONFIG_SIG_SIGWORK=17
|
|
||||||
# CONFIG_SCHED_LPWORK is not set
|
|
||||||
CONFIG_SCHED_WAITPID=y
|
|
||||||
# CONFIG_SCHED_ATEXIT is not set
|
|
||||||
# CONFIG_SCHED_ONEXIT is not set
|
|
||||||
CONFIG_USER_ENTRYPOINT="nsh_main"
|
|
||||||
CONFIG_DISABLE_OS_API=y
|
|
||||||
# CONFIG_DISABLE_POSIX_TIMERS is not set
|
|
||||||
# CONFIG_DISABLE_PTHREAD is not set
|
|
||||||
# CONFIG_DISABLE_SIGNALS is not set
|
|
||||||
# CONFIG_DISABLE_MQUEUE is not set
|
|
||||||
# CONFIG_DISABLE_MOUNTPOINT is not set
|
|
||||||
# CONFIG_DISABLE_ENVIRON is not set
|
|
||||||
CONFIG_DISABLE_POLL=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Sizes of configurable things (0 disables)
|
|
||||||
#
|
|
||||||
CONFIG_MAX_TASKS=16
|
|
||||||
CONFIG_MAX_TASK_ARGS=4
|
|
||||||
CONFIG_NPTHREAD_KEYS=4
|
|
||||||
CONFIG_NFILE_DESCRIPTORS=8
|
|
||||||
CONFIG_NFILE_STREAMS=8
|
|
||||||
CONFIG_NAME_MAX=32
|
|
||||||
CONFIG_PREALLOC_MQ_MSGS=4
|
|
||||||
CONFIG_MQ_MAXMSGSIZE=32
|
|
||||||
CONFIG_MAX_WDOGPARMS=2
|
|
||||||
CONFIG_PREALLOC_WDOGS=4
|
|
||||||
CONFIG_WDOG_INTRESERVE=0
|
|
||||||
CONFIG_PREALLOC_TIMERS=4
|
|
||||||
|
|
||||||
#
|
|
||||||
# Stack and heap information
|
|
||||||
#
|
|
||||||
CONFIG_IDLETHREAD_STACKSIZE=1024
|
|
||||||
CONFIG_USERMAIN_STACKSIZE=2048
|
|
||||||
CONFIG_PTHREAD_STACK_MIN=256
|
|
||||||
CONFIG_PTHREAD_STACK_DEFAULT=2048
|
|
||||||
|
|
||||||
#
|
|
||||||
# Device Drivers
|
|
||||||
#
|
|
||||||
CONFIG_DEV_NULL=y
|
|
||||||
# CONFIG_DEV_ZERO is not set
|
|
||||||
# CONFIG_LOOP is not set
|
|
||||||
# CONFIG_RAMDISK is not set
|
|
||||||
# CONFIG_CAN is not set
|
|
||||||
# CONFIG_PWM is not set
|
|
||||||
# CONFIG_I2C is not set
|
|
||||||
CONFIG_ARCH_HAVE_I2CRESET=y
|
|
||||||
# CONFIG_SPI is not set
|
|
||||||
CONFIG_RTC=y
|
|
||||||
# CONFIG_RTC_DATETIME is not set
|
|
||||||
# CONFIG_RTC_HIRES is not set
|
|
||||||
# CONFIG_RTC_ALARM is not set
|
|
||||||
# CONFIG_WATCHDOG is not set
|
|
||||||
# CONFIG_ANALOG is not set
|
|
||||||
# CONFIG_BCH is not set
|
|
||||||
# CONFIG_INPUT is not set
|
|
||||||
# CONFIG_LCD is not set
|
|
||||||
# CONFIG_MMCSD is not set
|
|
||||||
# CONFIG_MTD is not set
|
|
||||||
# CONFIG_PIPES is not set
|
|
||||||
# CONFIG_PM is not set
|
|
||||||
# CONFIG_POWER is not set
|
|
||||||
# CONFIG_SENSORS is not set
|
|
||||||
# CONFIG_SERCOMM_CONSOLE is not set
|
|
||||||
CONFIG_SERIAL=y
|
|
||||||
# CONFIG_DEV_LOWCONSOLE is not set
|
|
||||||
# CONFIG_16550_UART is not set
|
|
||||||
CONFIG_ARCH_HAVE_USART2=y
|
|
||||||
CONFIG_MCU_SERIAL=y
|
|
||||||
CONFIG_STANDARD_SERIAL=y
|
|
||||||
CONFIG_USART2_SERIAL_CONSOLE=y
|
|
||||||
# CONFIG_NO_SERIAL_CONSOLE is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# USART2 Configuration
|
|
||||||
#
|
|
||||||
CONFIG_USART2_RXBUFSIZE=128
|
|
||||||
CONFIG_USART2_TXBUFSIZE=128
|
|
||||||
CONFIG_USART2_BAUD=115200
|
|
||||||
CONFIG_USART2_BITS=8
|
|
||||||
CONFIG_USART2_PARITY=0
|
|
||||||
CONFIG_USART2_2STOP=0
|
|
||||||
# CONFIG_USBDEV is not set
|
|
||||||
# CONFIG_USBHOST is not set
|
|
||||||
# CONFIG_WIRELESS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# System Logging Device Options
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# System Logging
|
|
||||||
#
|
|
||||||
# CONFIG_RAMLOG is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Networking Support
|
|
||||||
#
|
|
||||||
# CONFIG_NET is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# File Systems
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# File system configuration
|
|
||||||
#
|
|
||||||
CONFIG_FS_FAT=y
|
|
||||||
CONFIG_FAT_LCNAMES=y
|
|
||||||
CONFIG_FAT_LFN=y
|
|
||||||
CONFIG_FAT_MAXFNAME=32
|
|
||||||
# CONFIG_FS_FATTIME is not set
|
|
||||||
# CONFIG_FAT_DMAMEMORY is not set
|
|
||||||
# CONFIG_FS_RAMMAP is not set
|
|
||||||
# CONFIG_FS_NXFFS is not set
|
|
||||||
# CONFIG_FS_ROMFS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# System Logging
|
|
||||||
#
|
|
||||||
# CONFIG_SYSLOG is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Graphics Support
|
|
||||||
#
|
|
||||||
# CONFIG_NX is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Memory Management
|
|
||||||
#
|
|
||||||
# CONFIG_MM_SMALL is not set
|
|
||||||
CONFIG_MM_REGIONS=1
|
|
||||||
# CONFIG_GRAN is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Binary Formats
|
|
||||||
#
|
|
||||||
# CONFIG_BINFMT_DISABLE is not set
|
|
||||||
# CONFIG_NXFLAT is not set
|
|
||||||
# CONFIG_ELF is not set
|
|
||||||
CONFIG_BUILTIN=y
|
|
||||||
CONFIG_SYMTAB_ORDEREDBYNAME=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Library Routines
|
|
||||||
#
|
|
||||||
CONFIG_STDIO_BUFFER_SIZE=64
|
|
||||||
CONFIG_STDIO_LINEBUFFER=y
|
|
||||||
CONFIG_NUNGET_CHARS=2
|
|
||||||
CONFIG_LIB_HOMEDIR="/"
|
|
||||||
# CONFIG_LIBM is not set
|
|
||||||
# CONFIG_NOPRINTF_FIELDWIDTH is not set
|
|
||||||
# CONFIG_LIBC_FLOATINGPOINT is not set
|
|
||||||
# CONFIG_EOL_IS_CR is not set
|
|
||||||
# CONFIG_EOL_IS_LF is not set
|
|
||||||
# CONFIG_EOL_IS_BOTH_CRLF is not set
|
|
||||||
CONFIG_EOL_IS_EITHER_CRLF=y
|
|
||||||
# CONFIG_LIBC_STRERROR is not set
|
|
||||||
# CONFIG_LIBC_PERROR_STDOUT is not set
|
|
||||||
CONFIG_ARCH_LOWPUTC=y
|
|
||||||
CONFIG_LIB_SENDFILE_BUFSIZE=512
|
|
||||||
# CONFIG_ARCH_ROMGETC is not set
|
|
||||||
# CONFIG_ARCH_OPTIMIZED_FUNCTIONS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Basic CXX Support
|
|
||||||
#
|
|
||||||
# CONFIG_HAVE_CXX is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Application Configuration
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Named Applications
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Examples
|
|
||||||
#
|
|
||||||
# CONFIG_EXAMPLES_BUTTONS is not set
|
|
||||||
# CONFIG_EXAMPLES_CAN is not set
|
|
||||||
# CONFIG_SYSTEM_CDCACM is not set
|
|
||||||
# CONFIG_SYSTEM_COMPOSITE is not set
|
|
||||||
# CONFIG_EXAMPLES_DHCPD is not set
|
|
||||||
# CONFIG_EXAMPLES_ELF is not set
|
|
||||||
# CONFIG_EXAMPLES_FTPC is not set
|
|
||||||
# CONFIG_EXAMPLES_FTPD is not set
|
|
||||||
# CONFIG_EXAMPLES_HELLO is not set
|
|
||||||
# CONFIG_EXAMPLES_HELLOXX is not set
|
|
||||||
# CONFIG_EXAMPLES_JSON is not set
|
|
||||||
# CONFIG_EXAMPLES_HIDKBD is not set
|
|
||||||
# CONFIG_EXAMPLES_IGMP is not set
|
|
||||||
# CONFIG_EXAMPLES_LCDRW is not set
|
|
||||||
# CONFIG_EXAMPLES_MM is not set
|
|
||||||
# CONFIG_EXAMPLES_MOUNT is not set
|
|
||||||
# CONFIG_EXAMPLES_MODBUS is not set
|
|
||||||
# CONFIG_EXAMPLES_NETTEST is not set
|
|
||||||
CONFIG_EXAMPLES_NSH=y
|
|
||||||
# CONFIG_EXAMPLES_NULL is not set
|
|
||||||
# CONFIG_EXAMPLES_NX is not set
|
|
||||||
# CONFIG_EXAMPLES_NXTERM is not set
|
|
||||||
# CONFIG_EXAMPLES_NXFFS is not set
|
|
||||||
# CONFIG_EXAMPLES_NXFLAT is not set
|
|
||||||
# CONFIG_EXAMPLES_NXHELLO is not set
|
|
||||||
# CONFIG_EXAMPLES_NXIMAGE is not set
|
|
||||||
# CONFIG_EXAMPLES_NXLINES is not set
|
|
||||||
# CONFIG_EXAMPLES_NXTEXT is not set
|
|
||||||
# CONFIG_EXAMPLES_OSTEST is not set
|
|
||||||
# CONFIG_EXAMPLES_PASHELLO is not set
|
|
||||||
# CONFIG_EXAMPLES_PIPE is not set
|
|
||||||
# CONFIG_EXAMPLES_POLL is not set
|
|
||||||
# CONFIG_EXAMPLES_QENCODER is not set
|
|
||||||
# CONFIG_EXAMPLES_RGMP is not set
|
|
||||||
# CONFIG_EXAMPLES_ROMFS is not set
|
|
||||||
# CONFIG_EXAMPLES_SENDMAIL is not set
|
|
||||||
# CONFIG_EXAMPLES_SERLOOP is not set
|
|
||||||
# CONFIG_EXAMPLES_TELNETD is not set
|
|
||||||
# CONFIG_EXAMPLES_THTTPD is not set
|
|
||||||
# CONFIG_EXAMPLES_TIFF is not set
|
|
||||||
# CONFIG_EXAMPLES_TOUCHSCREEN is not set
|
|
||||||
# CONFIG_EXAMPLES_UDP is not set
|
|
||||||
# CONFIG_EXAMPLES_WEBSERVER is not set
|
|
||||||
# CONFIG_EXAMPLES_USBSERIAL is not set
|
|
||||||
# CONFIG_SYSTEM_USBMSC is not set
|
|
||||||
# CONFIG_EXAMPLES_USBTERM is not set
|
|
||||||
# CONFIG_EXAMPLES_WATCHDOG is not set
|
|
||||||
# CONFIG_EXAMPLES_WLAN is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Interpreters
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Interpreters
|
|
||||||
#
|
|
||||||
# CONFIG_INTERPRETERS_FICL is not set
|
|
||||||
# CONFIG_INTERPRETERS_PCODE is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Network Utilities
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Networking Utilities
|
|
||||||
#
|
|
||||||
# CONFIG_NETUTILS_CODECS is not set
|
|
||||||
# CONFIG_NETUTILS_DHCPC is not set
|
|
||||||
# CONFIG_NETUTILS_DHCPD is not set
|
|
||||||
# CONFIG_NETUTILS_FTPC is not set
|
|
||||||
# CONFIG_NETUTILS_FTPD is not set
|
|
||||||
# CONFIG_NETUTILS_JSON is not set
|
|
||||||
# CONFIG_NETUTILS_DNSCLIENT is not set
|
|
||||||
# CONFIG_NETUTILS_SMTP is not set
|
|
||||||
# CONFIG_NETUTILS_TELNETD is not set
|
|
||||||
# CONFIG_NETUTILS_TFTPC is not set
|
|
||||||
# CONFIG_NETUTILS_THTTPD is not set
|
|
||||||
# CONFIG_NETUTILS_NETLIB is not set
|
|
||||||
# CONFIG_NETUTILS_WEBCLIENT is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# ModBus
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# FreeModbus
|
|
||||||
#
|
|
||||||
# CONFIG_MODBUS is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# NSH Library
|
|
||||||
#
|
|
||||||
CONFIG_NSH_LIBRARY=y
|
|
||||||
CONFIG_NSH_READLINE=y
|
|
||||||
# CONFIG_NSH_CLE is not set
|
|
||||||
CONFIG_NSH_BUILTIN_APPS=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Disable Individual commands
|
|
||||||
#
|
|
||||||
# CONFIG_NSH_DISABLE_CAT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_CD is not set
|
|
||||||
# CONFIG_NSH_DISABLE_CP is not set
|
|
||||||
# CONFIG_NSH_DISABLE_DD is not set
|
|
||||||
# CONFIG_NSH_DISABLE_ECHO is not set
|
|
||||||
# CONFIG_NSH_DISABLE_EXEC is not set
|
|
||||||
# CONFIG_NSH_DISABLE_EXIT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_FREE is not set
|
|
||||||
# CONFIG_NSH_DISABLE_GET is not set
|
|
||||||
# CONFIG_NSH_DISABLE_HELP is not set
|
|
||||||
# CONFIG_NSH_DISABLE_IFCONFIG is not set
|
|
||||||
# CONFIG_NSH_DISABLE_KILL is not set
|
|
||||||
# CONFIG_NSH_DISABLE_LOSETUP is not set
|
|
||||||
# CONFIG_NSH_DISABLE_LS is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MB is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MKDIR is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MKFATFS is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MKFIFO is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MKRD is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MH is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MOUNT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_MW is not set
|
|
||||||
# CONFIG_NSH_DISABLE_NSFMOUNT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_PS is not set
|
|
||||||
# CONFIG_NSH_DISABLE_PING is not set
|
|
||||||
# CONFIG_NSH_DISABLE_PUT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_PWD is not set
|
|
||||||
# CONFIG_NSH_DISABLE_RM is not set
|
|
||||||
# CONFIG_NSH_DISABLE_RMDIR is not set
|
|
||||||
# CONFIG_NSH_DISABLE_SET is not set
|
|
||||||
# CONFIG_NSH_DISABLE_SH is not set
|
|
||||||
# CONFIG_NSH_DISABLE_SLEEP is not set
|
|
||||||
# CONFIG_NSH_DISABLE_TEST is not set
|
|
||||||
# CONFIG_NSH_DISABLE_UMOUNT is not set
|
|
||||||
# CONFIG_NSH_DISABLE_UNSET is not set
|
|
||||||
# CONFIG_NSH_DISABLE_USLEEP is not set
|
|
||||||
# CONFIG_NSH_DISABLE_WGET is not set
|
|
||||||
# CONFIG_NSH_DISABLE_XD is not set
|
|
||||||
CONFIG_NSH_CODECS_BUFSIZE=128
|
|
||||||
CONFIG_NSH_FILEIOSIZE=512
|
|
||||||
CONFIG_NSH_LINELEN=64
|
|
||||||
CONFIG_NSH_NESTDEPTH=3
|
|
||||||
# CONFIG_NSH_DISABLESCRIPT is not set
|
|
||||||
# CONFIG_NSH_DISABLEBG is not set
|
|
||||||
CONFIG_NSH_CONSOLE=y
|
|
||||||
# CONFIG_NSH_ALTCONDEV is not set
|
|
||||||
# CONFIG_NSH_ARCHINIT is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# NxWidgets/NxWM
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# System NSH Add-Ons
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# Custom Free Memory Command
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_FREE is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# I2C tool
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# FLASH Program Installation
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_INSTALL is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# readline()
|
|
||||||
#
|
|
||||||
CONFIG_SYSTEM_READLINE=y
|
|
||||||
CONFIG_READLINE_ECHO=y
|
|
||||||
|
|
||||||
#
|
|
||||||
# Power Off
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_POWEROFF is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# RAMTRON
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_RAMTRON is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# SD Card
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_SDCARD is not set
|
|
||||||
|
|
||||||
#
|
|
||||||
# Sysinfo
|
|
||||||
#
|
|
||||||
# CONFIG_SYSTEM_SYSINFO is not set
|
|
@ -1,76 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# configs/stm32f100rc_generic/nsh/setenv.sh
|
|
||||||
#
|
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
# Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in
|
|
||||||
# the documentation and/or other materials provided with the
|
|
||||||
# distribution.
|
|
||||||
# 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
# used to endorse or promote products derived from this software
|
|
||||||
# without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
# POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
#
|
|
||||||
|
|
||||||
if [ "$_" = "$0" ] ; then
|
|
||||||
echo "You must source this script, not run it!" 1>&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
WD=`pwd`
|
|
||||||
if [ ! -x "setenv.sh" ]; then
|
|
||||||
echo "This script must be executed from the top-level NuttX build directory"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "${PATH_ORIG}" ]; then
|
|
||||||
export PATH_ORIG="${PATH}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# This is the Cygwin path to the location where I installed the RIDE
|
|
||||||
# toolchain under windows. You will also have to edit this if you install
|
|
||||||
# the RIDE toolchain in any other location
|
|
||||||
#export TOOLCHAIN_BIN="/cygdrive/c/Program Files (x86)/Raisonance/Ride/arm-gcc/bin"
|
|
||||||
|
|
||||||
# This is the Cygwin path to the location where I installed the CodeSourcery
|
|
||||||
# toolchain under windows. You will also have to edit this if you install
|
|
||||||
# the CodeSourcery toolchain in any other location
|
|
||||||
export TOOLCHAIN_BIN="/cygdrive/c/Program Files (x86)/CodeSourcery/Sourcery G++ Lite/bin"
|
|
||||||
|
|
||||||
# These are the Cygwin paths to the locations where I installed the Atollic
|
|
||||||
# toolchain under windows. You will also have to edit this if you install
|
|
||||||
# the Atollic toolchain in any other location. /usr/bin is added before
|
|
||||||
# the Atollic bin path because there is are binaries named gcc.exe and g++.exe
|
|
||||||
# at those locations as well.
|
|
||||||
#export TOOLCHAIN_BIN="/usr/bin:/cygdrive/c/Program Files (x86)/Atollic/TrueSTUDIO for ARM Pro 2.3.0/ARMTools/bin"
|
|
||||||
#export TOOLCHAIN_BIN="/usr/bin:/cygdrive/c/Program Files (x86)/Atollic/TrueSTUDIO for STMicroelectronics STM32 Lite 2.3.0/ARMTools/bin"
|
|
||||||
|
|
||||||
# This is the Cygwin path to the location where I build the buildroot
|
|
||||||
# toolchain.
|
|
||||||
#export TOOLCHAIN_BIN="${WD}/../misc/buildroot/build_arm_nofpu/staging_dir/bin"
|
|
||||||
|
|
||||||
# Add the path to the toolchain to the PATH varialble
|
|
||||||
export PATH="${TOOLCHAIN_BIN}:/sbin:/usr/sbin:${PATH_ORIG}"
|
|
||||||
|
|
||||||
echo "PATH : ${PATH}"
|
|
@ -1,118 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/scripts/ld.script
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/* The STM32F100RC has 256kB of FLASH beginning at address 0x08000000 and 24kB
|
|
||||||
* of SRAM beginning at address 0x20000000. When booting from FLASH, FLASH
|
|
||||||
* memory is aliased to address 0x00000000 where the code expects to begin
|
|
||||||
* execution by jumping to the entry point in the 0x08000000 address range.
|
|
||||||
*/
|
|
||||||
|
|
||||||
MEMORY
|
|
||||||
{
|
|
||||||
flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K
|
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 24K
|
|
||||||
}
|
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
|
||||||
EXTERN(_vectors)
|
|
||||||
ENTRY(_stext)
|
|
||||||
|
|
||||||
SECTIONS
|
|
||||||
{
|
|
||||||
.text : {
|
|
||||||
_stext = ABSOLUTE(.);
|
|
||||||
*(.vectors)
|
|
||||||
*(.text .text.*)
|
|
||||||
*(.fixup)
|
|
||||||
*(.gnu.warning)
|
|
||||||
*(.rodata .rodata.*)
|
|
||||||
*(.gnu.linkonce.t.*)
|
|
||||||
*(.glue_7)
|
|
||||||
*(.glue_7t)
|
|
||||||
*(.got)
|
|
||||||
*(.gcc_except_table)
|
|
||||||
*(.gnu.linkonce.r.*)
|
|
||||||
_etext = ABSOLUTE(.);
|
|
||||||
} > flash
|
|
||||||
|
|
||||||
.init_section : {
|
|
||||||
_sinit = ABSOLUTE(.);
|
|
||||||
*(.init_array .init_array.*)
|
|
||||||
_einit = ABSOLUTE(.);
|
|
||||||
} > flash
|
|
||||||
|
|
||||||
.ARM.extab : {
|
|
||||||
*(.ARM.extab*)
|
|
||||||
} > flash
|
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
|
||||||
.ARM.exidx : {
|
|
||||||
*(.ARM.exidx*)
|
|
||||||
} > flash
|
|
||||||
__exidx_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
|
||||||
|
|
||||||
.data : {
|
|
||||||
_sdata = ABSOLUTE(.);
|
|
||||||
*(.data .data.*)
|
|
||||||
*(.gnu.linkonce.d.*)
|
|
||||||
CONSTRUCTORS
|
|
||||||
_edata = ABSOLUTE(.);
|
|
||||||
} > sram AT > flash
|
|
||||||
|
|
||||||
.bss : {
|
|
||||||
_sbss = ABSOLUTE(.);
|
|
||||||
*(.bss .bss.*)
|
|
||||||
*(.gnu.linkonce.b.*)
|
|
||||||
*(COMMON)
|
|
||||||
_ebss = ABSOLUTE(.);
|
|
||||||
} > sram
|
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
|
||||||
.stab 0 : { *(.stab) }
|
|
||||||
.stabstr 0 : { *(.stabstr) }
|
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
|
||||||
.stab.index 0 : { *(.stab.index) }
|
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
|
||||||
.comment 0 : { *(.comment) }
|
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
|
||||||
.debug_info 0 : { *(.debug_info) }
|
|
||||||
.debug_line 0 : { *(.debug_line) }
|
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
|
||||||
}
|
|
2
configs/stm32f100rc_generic/src/.gitignore
vendored
2
configs/stm32f100rc_generic/src/.gitignore
vendored
@ -1,2 +0,0 @@
|
|||||||
/.depend
|
|
||||||
/Make.dep
|
|
@ -1,82 +0,0 @@
|
|||||||
############################################################################
|
|
||||||
# configs/stm32f100rc_generic/src/Makefile
|
|
||||||
#
|
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
# Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in
|
|
||||||
# the documentation and/or other materials provided with the
|
|
||||||
# distribution.
|
|
||||||
# 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
# used to endorse or promote products derived from this software
|
|
||||||
# without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
# POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
#
|
|
||||||
############################################################################
|
|
||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
|
||||||
|
|
||||||
ASRCS =
|
|
||||||
AOBJS = $(ASRCS:.S=$(OBJEXT))
|
|
||||||
|
|
||||||
CSRCS = up_boot.c up_leds.c up_buttons.c
|
|
||||||
COBJS = $(CSRCS:.c=$(OBJEXT))
|
|
||||||
|
|
||||||
SRCS = $(ASRCS) $(CSRCS)
|
|
||||||
OBJS = $(AOBJS) $(COBJS)
|
|
||||||
|
|
||||||
ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
|
|
||||||
ifeq ($(WINTOOL),y)
|
|
||||||
CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
|
|
||||||
-I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
|
|
||||||
-I "${shell cygpath -w $(ARCH_SRCDIR)/armv7-m}"
|
|
||||||
else
|
|
||||||
CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(ARCH_SRCDIR)/armv7-m
|
|
||||||
endif
|
|
||||||
|
|
||||||
all: libboard$(LIBEXT)
|
|
||||||
|
|
||||||
$(AOBJS): %$(OBJEXT): %.S
|
|
||||||
$(call ASSEMBLE, $<, $@)
|
|
||||||
|
|
||||||
$(COBJS) $(LINKOBJS): %$(OBJEXT): %.c
|
|
||||||
$(call COMPILE, $<, $@)
|
|
||||||
|
|
||||||
libboard$(LIBEXT): $(OBJS)
|
|
||||||
$(call ARCHIVE, $@, $(OBJS))
|
|
||||||
|
|
||||||
.depend: Makefile $(SRCS)
|
|
||||||
$(Q) $(MKDEP) $(CC) -- $(CFLAGS) -- $(SRCS) >Make.dep
|
|
||||||
$(Q) touch $@
|
|
||||||
|
|
||||||
depend: .depend
|
|
||||||
|
|
||||||
clean:
|
|
||||||
$(call DELFILE, libboard$(LIBEXT))
|
|
||||||
$(call CLEAN)
|
|
||||||
|
|
||||||
distclean: clean
|
|
||||||
$(call DELFILE, Make.dep)
|
|
||||||
$(call DELFILE, .depend)
|
|
||||||
|
|
||||||
-include Make.dep
|
|
@ -1,57 +0,0 @@
|
|||||||
/************************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/src/stm32f100rc_internal.h
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#ifndef __CONFIGS_STM32F100RC_GENERIC_SRC_STM32F100RC_INTERNAL_H
|
|
||||||
#define __CONFIGS_STM32F100RC_GENERIC_SRC_STM32F100RC_INTERNAL_H
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Definitions
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
/* LED - assume it is on PA0 */
|
|
||||||
|
|
||||||
#define GPIO_LED1 (GPIO_OUTPUT | GPIO_CNF_OUTPP | GPIO_MODE_50MHz | GPIO_OUTPUT_CLEAR | GPIO_PORTA | GPIO_PIN0)
|
|
||||||
|
|
||||||
/* BUTTON - assume it is on PA1 */
|
|
||||||
|
|
||||||
#define MIN_IRQBUTTON BUTTON_0
|
|
||||||
#define MAX_IRQBUTTON BUTTON_0
|
|
||||||
#define NUM_IRQBUTTONS 1
|
|
||||||
|
|
||||||
#define GPIO_BTN_0 (GPIO_INPUT | GPIO_CNF_INFLOAT | GPIO_MODE_INPUT | GPIO_PORTA | GPIO_PIN1)
|
|
||||||
|
|
||||||
#endif /* __CONFIGS_STM32F100RC_GENERIC_SRC_STM32F100RC_INTERNAL_H */
|
|
||||||
|
|
@ -1,70 +0,0 @@
|
|||||||
/************************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/src/up_boot.c
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Included Files
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#include <nuttx/config.h>
|
|
||||||
|
|
||||||
#include <debug.h>
|
|
||||||
|
|
||||||
#include <arch/board/board.h>
|
|
||||||
|
|
||||||
#include "up_arch.h"
|
|
||||||
#include "stm32f100rc_internal.h"
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Public Functions
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Name: stm32_boardinitialize
|
|
||||||
*
|
|
||||||
* Description:
|
|
||||||
* All STM32 architectures must provide the following entry point. This entry point
|
|
||||||
* is called early in the intitialization -- after all memory has been configured
|
|
||||||
* and mapped but before any devices have been initialized.
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
void stm32_boardinitialize(void)
|
|
||||||
{
|
|
||||||
/* Configure on-board LEDs if LED support has been selected. */
|
|
||||||
#ifdef CONFIG_ARCH_LEDS
|
|
||||||
board_led_initialize();
|
|
||||||
#endif
|
|
||||||
}
|
|
@ -1,119 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/src/board_buttons.c
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Included Files
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
#include <nuttx/config.h>
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
|
|
||||||
#include <nuttx/arch.h>
|
|
||||||
#include <arch/board/board.h>
|
|
||||||
|
|
||||||
#include "stm32f100rc_internal.h"
|
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_BUTTONS
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Public Functions
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Name: board_button_initialize
|
|
||||||
*
|
|
||||||
* Description:
|
|
||||||
* board_button_initialize() must be called to initialize button resources. After
|
|
||||||
* that, board_buttons() may be called to collect the current state of all
|
|
||||||
* buttons or board_button_irq() may be called to register button interrupt
|
|
||||||
* handlers.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
void board_button_initialize(void)
|
|
||||||
{
|
|
||||||
stm32_configgpio(GPIO_BTN_0); /* Configure the GPIO pins as inputs. */
|
|
||||||
}
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Name: board_buttons
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
uint8_t board_buttons(void)
|
|
||||||
{
|
|
||||||
uint8_t ret = 0;
|
|
||||||
|
|
||||||
ret = (stm32_gpioread(g_buttons[i]) == false ? 1 : 0);
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
/************************************************************************************
|
|
||||||
* Button support.
|
|
||||||
*
|
|
||||||
* Description:
|
|
||||||
* board_button_initialize() must be called to initialize button resources. After
|
|
||||||
* that, board_buttons() may be called to collect the current state of all
|
|
||||||
* buttons or board_button_irq() may be called to register button interrupt
|
|
||||||
* handlers.
|
|
||||||
*
|
|
||||||
* After board_button_initialize() has been called, board_buttons() may be called to
|
|
||||||
* collect the state of all buttons. board_buttons() returns an 8-bit bit set
|
|
||||||
* with each bit associated with a button. See the BUTTON_*_BIT and JOYSTICK_*_BIT
|
|
||||||
* definitions in board.h for the meaning of each bit.
|
|
||||||
*
|
|
||||||
* board_button_irq() may be called to register an interrupt handler that will
|
|
||||||
* be called when a button is depressed or released. The ID value is a
|
|
||||||
* button enumeration value that uniquely identifies a button resource. See the
|
|
||||||
* BUTTON_* and JOYSTICK_* definitions in board.h for the meaning of enumeration
|
|
||||||
* value. The previous interrupt handler address is returned (so that it may
|
|
||||||
* restored, if so desired).
|
|
||||||
*
|
|
||||||
************************************************************************************/
|
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_IRQBUTTONS
|
|
||||||
xcpt_t board_button_irq(int id, xcpt_t irqhandler)
|
|
||||||
{
|
|
||||||
xcpt_t oldhandler = NULL;
|
|
||||||
|
|
||||||
if (id == 0)
|
|
||||||
oldhandler = stm32_gpiosetevent(GPIO_BTN_0, true, true, true, irqhandler);
|
|
||||||
|
|
||||||
return oldhandler;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#endif /* CONFIG_ARCH_BUTTONS */
|
|
@ -1,106 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
* configs/stm32f100rc_generic/src/up_leds.c
|
|
||||||
*
|
|
||||||
* Copyright (C) 2012-2013 Gregory Nutt. All rights reserved.
|
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
|
||||||
* Freddie Chopin <freddie_chopin@op.pl>
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
|
||||||
* used to endorse or promote products derived from this software
|
|
||||||
* without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
||||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
||||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Included Files
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
#include <nuttx/config.h>
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
#include <stdbool.h>
|
|
||||||
#include <debug.h>
|
|
||||||
|
|
||||||
#include <arch/board/board.h>
|
|
||||||
#include <nuttx/power/pm.h>
|
|
||||||
|
|
||||||
#include "chip.h"
|
|
||||||
#include "up_arch.h"
|
|
||||||
#include "up_internal.h"
|
|
||||||
#include "stm32.h"
|
|
||||||
#include "stm32f100rc_internal.h"
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Definitions
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/* CONFIG_DEBUG_LEDS enables debug output from this file (needs CONFIG_DEBUG
|
|
||||||
* with CONFIG_DEBUG_VERBOSE too)
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG_LEDS
|
|
||||||
# define leddbg lldbg
|
|
||||||
# define ledvdbg llvdbg
|
|
||||||
#else
|
|
||||||
# define leddbg(x...)
|
|
||||||
# define ledvdbg(x...)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Public Functions
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Name: board_led_initialize
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_LEDS
|
|
||||||
void board_led_initialize(void)
|
|
||||||
{
|
|
||||||
stm32_configgpio(GPIO_LED1); /* Configure LED1 GPIO for output */
|
|
||||||
}
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Name: board_led_on
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
void board_led_on(int led)
|
|
||||||
{
|
|
||||||
if (led == 1)
|
|
||||||
stm32_gpiowrite(GPIO_LED1, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
/****************************************************************************
|
|
||||||
* Name: board_led_off
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
void board_led_off(int led)
|
|
||||||
{
|
|
||||||
if (led == 0)
|
|
||||||
stm32_gpiowrite(GPIO_LED1, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* CONFIG_ARCH_LEDS */
|
|
@ -170,7 +170,7 @@ NuttX EABI "buildroot" Toolchain
|
|||||||
1. You must have already configured Nuttx in <some-dir>/nuttx.
|
1. You must have already configured Nuttx in <some-dir>/nuttx.
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh stm32f100rc_generic/<sub-dir>
|
./configure.sh stm32vldiscovery/<sub-dir>
|
||||||
|
|
||||||
2. Download the latest buildroot package into <some-dir>
|
2. Download the latest buildroot package into <some-dir>
|
||||||
|
|
||||||
@ -256,7 +256,7 @@ LEDs
|
|||||||
|
|
||||||
It is asumed that STMicro STM32F100RC generic board board has one LED on PA0.
|
It is asumed that STMicro STM32F100RC generic board board has one LED on PA0.
|
||||||
You should configure the port and pin number in
|
You should configure the port and pin number in
|
||||||
configs/stm32f100rc_generic/src/stm32f100rc_internal.h. This LED is not used by
|
configs/stm32vldiscovery/src/stm32f100rc_internal.h. This LED is not used by
|
||||||
the board port unless CONFIG_ARCH_LEDS is defined. In that case, the usage 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/up_leds.c. The LED is used
|
the board port is defined in include/board.h and src/up_leds.c. The LED is used
|
||||||
to encode OS-related events as follows:
|
to encode OS-related events as follows:
|
||||||
@ -451,7 +451,7 @@ Each STMicro STM32F100RC generic configuration is maintained in a sub-directory
|
|||||||
and can be selected as follow:
|
and can be selected as follow:
|
||||||
|
|
||||||
cd tools
|
cd tools
|
||||||
./configure.sh stm32f100rc_generic/<subdir>
|
./configure.sh stm32vldiscovery/<subdir>
|
||||||
cd -
|
cd -
|
||||||
. ./setenv.sh
|
. ./setenv.sh
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user