Fix some issues with LPC1766-STK button support (there are more)

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4245 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2011-12-31 20:47:53 +00:00
parent 8dc1600b39
commit 00a6650df1
14 changed files with 370 additions and 78 deletions

View File

@ -53,6 +53,7 @@
<li><a href="http://www.2g-eng.com" target="top">2G Engineering</a></li>
<li><a href="http://isotel.eu/Home/" target="top">ISOTEL Research</a></li>
<li><a href="http://www.dspworks.in/" target="top">DSPWorks</a></li>
<li><a href="http://www.nx-engineering.com/products.html" target="top">NXWidgets</a></li>
</tr>
<tr>
<td colspan="2" align="center" valign="top">

View File

@ -28,7 +28,7 @@
<tr>
<td>&nbsp</td>
<td>
<li><a href="NuttxGettingStarted.html" target="main">Getting Started</a></li>
<li><a href="NuttXGettingStarted.html" target="main">Getting Started</a></li>
<li><a href="NuttxUserGuide.html" target="main">User Guide</a></li>
<li><a href="NuttxPortingGuide.html" target="main">Porting Guide</a></li>
<li><a href="NuttShell.html" target="main">NuttShell (NSH)</a></li>

View File

@ -537,11 +537,18 @@ Using OpenOCD and GDB with an FT2232 JTAG emulator
arm-elf-gdb
(gdb) target remote localhost:3333
And you can load the NuttX ELF file:
NOTE: The name of your GDB program may differ. For example, with the
CodeSourcery toolchain, the ARM GDB would be called arm-none-eabi-gdb.
After starting GDB, you can load the NuttX ELF file:
(gdb) symbol-file nuttx
(gdb) load nuttx
Loading the symbol-file is only useful if you have built NuttX to
inclulde debug symbols (by setting CONFIG_DEBUG_SYMBOLS=y in the
.config file).
OpenOCD will support several special 'monitor' commands. These
GDB commands will send comments to the OpenOCD monitor. Here
are a couple that you will need to use:

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -876,6 +882,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -769,6 +775,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -722,6 +728,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -787,6 +793,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -878,6 +884,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -714,6 +720,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -829,6 +835,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -40,10 +40,14 @@
#include <nuttx/config.h>
#include <stdint.h>
#include <stdbool.h>
#include <nuttx/arch.h>
#include <nuttx/irq.h>
#include <arch/board/board.h>
#include "lpc17_internal.h"
#include "lpc1766stk_internal.h"
#ifdef CONFIG_ARCH_BUTTONS
@ -190,7 +194,7 @@ xcpt_t up_irqbutton(int id, xcpt_t irqhandler)
/* Return the current button handler and set the new interrupt handler */
oldhandler = g_buttonisr[id];
g_buttonisr = irqhandler;
g_buttonisr[id] = irqhandler;
/* Disable interrupts until we are done */

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -821,6 +827,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -714,6 +720,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#

View File

@ -133,6 +133,12 @@ CONFIG_LPC17_ADC=n
CONFIG_LPC17_DAC=n
CONFIG_LPC17_GPDMA=n
#
# LPC17xx Button interrupt support
#
CONFIG_GPIO_IRQ=n
CONFIG_ARCH_IRQBUTTONS=n
#
# LPC17xx specific serial device driver settings
#
@ -714,6 +720,28 @@ CONFIG_EXAMPLES_OSTEST_LOOPS=1
CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048
CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
#
# Settings for examples/buttons
#
# CONFIG_EXAMPLE_BUTTONS_MIN and CONFIG_EXAMPLE_BUTTONS_MAX
# Lowest and highest button number (0-7)
# CONFIG_EXAMPLE_IRQBUTTONS_MIN and CONFIG_EXAMPLE_IRQBUTTONS_MAX
# Lowest and highest interrupting button number (-7)
# CONFIG_EXAMPLE_BUTTONS_NAMEn - Name for button n
#
CONFIG_EXAMPLE_BUTTONS_MIN=0
CONFIG_EXAMPLE_BUTTONS_MAX=7
CONFIG_EXAMPLE_IRQBUTTONS_MIN=0
CONFIG_EXAMPLE_IRQBUTTONS_MAX=7
CONFIG_EXAMPLE_BUTTONS_NAME0="BUT1"
CONFIG_EXAMPLE_BUTTONS_NAME1="BUT2"
CONFIG_EXAMPLE_BUTTONS_NAME2="WAKE-UP"
CONFIG_EXAMPLE_BUTTONS_NAME3="CENTER"
CONFIG_EXAMPLE_BUTTONS_NAME4="UP"
CONFIG_EXAMPLE_BUTTONS_NAME5="DOWN"
CONFIG_EXAMPLE_BUTTONS_NAME6="LEFT"
CONFIG_EXAMPLE_BUTTONS_NAME7="RIGHT"
#
# Settings for apps/nshlib
#