forked from Archive/PX4-Autopilot
Add APIs to support user access to the STM3240G-EVAL LEDs
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4263 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
parent
550a7ef561
commit
d880b5c4b5
|
@ -2344,3 +2344,5 @@
|
||||||
* arch/arm/src/lm3s: Add support for the LM3S6432S2E (Contributed by Mike Smith)
|
* arch/arm/src/lm3s: Add support for the LM3S6432S2E (Contributed by Mike Smith)
|
||||||
* configs/lm3s6432-s2: Add support for the TI RDK-S2E (LM3S6432S2E) board
|
* configs/lm3s6432-s2: Add support for the TI RDK-S2E (LM3S6432S2E) board
|
||||||
(Contributed by Mike Smith)
|
(Contributed by Mike Smith)
|
||||||
|
* configs/stm3240g-eval/src: Add APIs support to support user access to the
|
||||||
|
LEDs
|
||||||
|
|
|
@ -1642,6 +1642,7 @@
|
||||||
Refer to the <a href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=KWIKSTIK-K40">Freescale web site</a> for further information about this board.
|
Refer to the <a href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=KWIKSTIK-K40">Freescale web site</a> for further information about this board.
|
||||||
The Kwikstik is used with the FreeScale Tower System (mostly just to provide a simple UART connection)
|
The Kwikstik is used with the FreeScale Tower System (mostly just to provide a simple UART connection)
|
||||||
</p>
|
</p>
|
||||||
|
<ul>
|
||||||
<p>
|
<p>
|
||||||
<b>STATUS:</b>
|
<b>STATUS:</b>
|
||||||
The unverified KwikStik K40 first appeared in NuttX-6.8
|
The unverified KwikStik K40 first appeared in NuttX-6.8
|
||||||
|
@ -1652,6 +1653,7 @@
|
||||||
(4) develop support for USB host and device, and (2) develop an LCD driver.
|
(4) develop support for USB host and device, and (2) develop an LCD driver.
|
||||||
NOTE: Some of these remaining tasks are shared with the K60 work described below.
|
NOTE: Some of these remaining tasks are shared with the K60 work described below.
|
||||||
</p>
|
</p>
|
||||||
|
</ul>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1667,6 +1669,7 @@
|
||||||
Refer to the <a href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=TWR-K60N512-KIT">Freescale web site</a> for further information about this board.
|
Refer to the <a href="http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=TWR-K60N512-KIT">Freescale web site</a> for further information about this board.
|
||||||
The TWR-K60N51 includes with the FreeScale Tower System which provides (among other things) a DBP UART connection.
|
The TWR-K60N51 includes with the FreeScale Tower System which provides (among other things) a DBP UART connection.
|
||||||
</p>
|
</p>
|
||||||
|
<ul>
|
||||||
<p>
|
<p>
|
||||||
<b>STATUS:</b>
|
<b>STATUS:</b>
|
||||||
As of this writing, the basic port is complete and passes the NuttX OS test.
|
As of this writing, the basic port is complete and passes the NuttX OS test.
|
||||||
|
@ -1679,6 +1682,7 @@
|
||||||
Additional work remaining includes: (1) integrate the Ethernet and SDHC drivers, and (2) develop support for USB host and device.
|
Additional work remaining includes: (1) integrate the Ethernet and SDHC drivers, and (2) develop support for USB host and device.
|
||||||
NOTE: Most of these remaining tasks (excluding the Ethernet driver) are the same as the pending K40 tasks described above.
|
NOTE: Most of these remaining tasks (excluding the Ethernet driver) are the same as the pending K40 tasks described above.
|
||||||
</p>
|
</p>
|
||||||
|
</ul>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1693,6 +1697,7 @@
|
||||||
This port uses the Freescale STMicro STM3240G-EVAL board featuring the STM32F407IGH6 MCU.
|
This port uses the Freescale STMicro STM3240G-EVAL board featuring the STM32F407IGH6 MCU.
|
||||||
Refer to the <a href="http://www.st.com/internet/evalboard/product/252216.jsp">STMicro web site</a> for further information about this board.
|
Refer to the <a href="http://www.st.com/internet/evalboard/product/252216.jsp">STMicro web site</a> for further information about this board.
|
||||||
</p>
|
</p>
|
||||||
|
<ul>
|
||||||
<p>
|
<p>
|
||||||
<b>STATUS:</b>
|
<b>STATUS:</b>
|
||||||
As of this writing, the basic port is complete and first appeared in NuttX-6.12.
|
As of this writing, the basic port is complete and first appeared in NuttX-6.12.
|
||||||
|
@ -1705,6 +1710,7 @@
|
||||||
Networking intensions include support for Telnet NSH sessions and new configurations for DHPCD and the networking test (nettest).
|
Networking intensions include support for Telnet NSH sessions and new configurations for DHPCD and the networking test (nettest).
|
||||||
A more complete port would include support for SDIO and USB OTG which are not available in NuttX 6.13.
|
A more complete port would include support for SDIO and USB OTG which are not available in NuttX 6.13.
|
||||||
</p>
|
</p>
|
||||||
|
</ul>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1720,11 +1726,13 @@
|
||||||
It will used the STMicor STM32F4-Discovery board featuring the STM32F407VGT6 MCU.
|
It will used the STMicor STM32F4-Discovery board featuring the STM32F407VGT6 MCU.
|
||||||
Refer to the <a href="http://www.st.com/internet/evalboard/product/252419.jsp">STMicro web site</a> for further information about this board.
|
Refer to the <a href="http://www.st.com/internet/evalboard/product/252419.jsp">STMicro web site</a> for further information about this board.
|
||||||
</p>
|
</p>
|
||||||
|
<ul>
|
||||||
<p>
|
<p>
|
||||||
<b>STATUS:</b>
|
<b>STATUS:</b>
|
||||||
This is really a vapor ware, pre-announcement.
|
This is really a vapor ware, pre-announcement.
|
||||||
I have the hardware and the motivation and I expect to announce the availability of support the STM32F4-Discovery in a later NuttX release.
|
I have the hardware and the motivation and I expect to announce the availability of support the STM32F4-Discovery in a later NuttX release.
|
||||||
</p>
|
</p>
|
||||||
|
</ul>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1738,7 +1746,7 @@
|
||||||
<b>Development Environments:</b>
|
<b>Development Environments:</b>
|
||||||
1) Linux with native Linux GNU toolchain, 2) Cygwin with Cygwin GNU Cortex-M3 or 4toolchain, or 3) Cygwin with Windows native GNU Cortex-M3 or M4 toolchain (CodeSourcery or devkitARM). A DIY toolchain for Linux or Cygwin is provided by the NuttX
|
1) Linux with native Linux GNU toolchain, 2) Cygwin with Cygwin GNU Cortex-M3 or 4toolchain, or 3) Cygwin with Windows native GNU Cortex-M3 or M4 toolchain (CodeSourcery or devkitARM). A DIY toolchain for Linux or Cygwin is provided by the NuttX
|
||||||
<a href="http://sourceforge.net/projects/nuttx/files/buildroot/">buildroot</a> package.
|
<a href="http://sourceforge.net/projects/nuttx/files/buildroot/">buildroot</a> package.
|
||||||
I use FreeScale's <i>CodeWarrior</i> IDE only to work with the JTAG debugger built into the boards.
|
I use FreeScale's <i>CodeWarrior</i> IDE only to work with the JTAG debugger built into the Kinetis boards.
|
||||||
</p>
|
</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -383,14 +383,14 @@ extern "C" {
|
||||||
EXTERN void lpc17_boardinitialize(void);
|
EXTERN void lpc17_boardinitialize(void);
|
||||||
|
|
||||||
/************************************************************************************
|
/************************************************************************************
|
||||||
* Name: lpc17_ledinit and lpc17_setled
|
* Name: lpc17_ledinit, lpc17_setled, and lpc17_setleds
|
||||||
*
|
*
|
||||||
* Description:
|
* Description:
|
||||||
* If CONFIG_ARCH_LEDS is defined, then NuttX will control the on-board LEDs. If
|
* 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
|
* CONFIG_ARCH_LEDS is not defined, then the following interfacesare available to
|
||||||
* control the LEDs from user applications.
|
* control the LEDs from user applications.
|
||||||
*
|
*
|
||||||
****************************************************************************/
|
************************************************************************************/
|
||||||
|
|
||||||
#ifndef CONFIG_ARCH_LEDS
|
#ifndef CONFIG_ARCH_LEDS
|
||||||
EXTERN void lpc17_ledinit(void);
|
EXTERN void lpc17_ledinit(void);
|
||||||
|
@ -406,7 +406,7 @@ EXTERN void lpc17_setleds(uint8_t ledset);
|
||||||
* up_buttons() may be called to collect the current state of all buttons or
|
* up_buttons() may be called to collect the current state of all buttons or
|
||||||
* up_irqbutton() may be called to register button interrupt handlers.
|
* up_irqbutton() may be called to register button interrupt handlers.
|
||||||
*
|
*
|
||||||
****************************************************************************/
|
************************************************************************************/
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_BUTTONS
|
#ifdef CONFIG_ARCH_BUTTONS
|
||||||
EXTERN void up_buttoninit(void);
|
EXTERN void up_buttoninit(void);
|
||||||
|
@ -423,7 +423,7 @@ EXTERN void up_buttoninit(void);
|
||||||
* associated with a button. See the BOARD_BUTTON_*_BIT and BOARD_JOYSTICK_*_BIT
|
* associated with a button. See the BOARD_BUTTON_*_BIT and BOARD_JOYSTICK_*_BIT
|
||||||
* definitions above for the meaning of each bit.
|
* definitions above for the meaning of each bit.
|
||||||
*
|
*
|
||||||
****************************************************************************/
|
************************************************************************************/
|
||||||
|
|
||||||
EXTERN uint8_t up_buttons(void);
|
EXTERN uint8_t up_buttons(void);
|
||||||
|
|
||||||
|
|
|
@ -212,7 +212,28 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* LED definitions ******************************************************************/
|
/* LED definitions ******************************************************************/
|
||||||
/* The STM3240G-EVAL board has 4 LEDs that we will encode as: */
|
/* If CONFIG_ARCH_LEDS is not defined, then the user can control the LEDs in any
|
||||||
|
* way. The following definitions are used to access individual LEDs.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* LED index values for use with stm32_setled() */
|
||||||
|
|
||||||
|
#define BOARD_LED1 0
|
||||||
|
#define BOARD_LED2 1
|
||||||
|
#define BOARD_LED3 2
|
||||||
|
#define BOARD_LED4 3
|
||||||
|
#define BOARD_NLEDS 4
|
||||||
|
|
||||||
|
/* LED bits for use with stm32_setleds() */
|
||||||
|
|
||||||
|
#define BOARD_LED1_BIT (1 << BOARD_LED1)
|
||||||
|
#define BOARD_LED2_BIT (1 << BOARD_LED2)
|
||||||
|
#define BOARD_LED3_BIT (1 << BOARD_LED3)
|
||||||
|
#define BOARD_LED4_BIT (1 << BOARD_LED4)
|
||||||
|
|
||||||
|
/* If CONFIG_ARCH_LEDs is defined, then NuttX will control the 4 LEDs on board the
|
||||||
|
* STM3240G-EVAL. The following definitions describe how NuttX controls the LEDs:
|
||||||
|
*/
|
||||||
|
|
||||||
#define LED_STARTED 0 /* LED1 */
|
#define LED_STARTED 0 /* LED1 */
|
||||||
#define LED_HEAPALLOCATE 1 /* LED2 */
|
#define LED_HEAPALLOCATE 1 /* LED2 */
|
||||||
|
@ -356,6 +377,22 @@ extern "C" {
|
||||||
|
|
||||||
EXTERN void stm32_boardinitialize(void);
|
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
|
||||||
|
|
||||||
/************************************************************************************
|
/************************************************************************************
|
||||||
* Button support.
|
* Button support.
|
||||||
*
|
*
|
||||||
|
|
|
@ -40,7 +40,17 @@ CFLAGS += -I$(TOPDIR)/sched
|
||||||
ASRCS =
|
ASRCS =
|
||||||
AOBJS = $(ASRCS:.S=$(OBJEXT))
|
AOBJS = $(ASRCS:.S=$(OBJEXT))
|
||||||
|
|
||||||
CSRCS = up_boot.c up_leds.c up_buttons.c up_spi.c
|
CSRCS = up_boot.c up_spi.c
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_ARCH_LEDS),y)
|
||||||
|
CSRCS += up_autoleds.c
|
||||||
|
else
|
||||||
|
CSRCS += up_userleds.c
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_ARCH_BUTTONS),y)
|
||||||
|
CSRCS += up_buttons.c
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ADC),y)
|
ifeq ($(CONFIG_ADC),y)
|
||||||
CSRCS += up_adc.c
|
CSRCS += up_adc.c
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* configs/stm3240g_eval/src/up_leds.c
|
* configs/stm3240g_eval/src/up_autoleds.c
|
||||||
* arch/arm/src/board/up_leds.c
|
* arch/arm/src/board/up_autoleds.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
@ -52,6 +52,8 @@
|
||||||
#include "stm32_internal.h"
|
#include "stm32_internal.h"
|
||||||
#include "stm3240g-internal.h"
|
#include "stm3240g-internal.h"
|
||||||
|
|
||||||
|
#ifdef CONFIG_ARCH_LEDS
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Definitions
|
* Definitions
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
@ -227,7 +229,6 @@ static void led_setonoff(unsigned int bits)
|
||||||
* Name: up_ledinit
|
* Name: up_ledinit
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_LEDS
|
|
||||||
void up_ledinit(void)
|
void up_ledinit(void)
|
||||||
{
|
{
|
||||||
/* Configure LED1-4 GPIOs for output */
|
/* Configure LED1-4 GPIOs for output */
|
Loading…
Reference in New Issue