aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTaylor Vesely2012-03-27 16:42:36 -0600
committerTaylor Vesely2012-03-27 16:42:36 -0600
commit66c5f91a870105aa1f70388d834fffe1bac9947c (patch)
treed4e2dff139a65ff94ca61ba74c0885ddbd063bc3
parentf7bf15343da05ab725c21819aceeb5e3ba80a2d9 (diff)
Implemented gpio_clear() for LPC17xx.
-rw-r--r--examples/lpc17xx/blueboard-lpc1768-h/miniblink/miniblink.c8
-rw-r--r--include/libopencm3/lpc17xx/gpio.h1
-rw-r--r--lib/lpc17xx/gpio.c5
3 files changed, 10 insertions, 4 deletions
diff --git a/examples/lpc17xx/blueboard-lpc1768-h/miniblink/miniblink.c b/examples/lpc17xx/blueboard-lpc1768-h/miniblink/miniblink.c
index c351581..33d413b 100644
--- a/examples/lpc17xx/blueboard-lpc1768-h/miniblink/miniblink.c
+++ b/examples/lpc17xx/blueboard-lpc1768-h/miniblink/miniblink.c
@@ -33,17 +33,17 @@ int main(void)
/* Blink LED0 (P3_0) on the board. */
while (1) {
/* Manually: */
- //GPIO1_SET = (1 << 29); /* LED off */
+ //GPIO1_SET = (1 << 29); /* LED on */
//for (i = 0; i < 800000; i++) /* Wait a bit. */
// __asm__("nop");
- //GPIO1_CLR = (1 << 29); /* LED on */
+ //GPIO1_CLR = (1 << 29); /* LED off */
//for (i = 0; i < 800000; i++) /* Wait a bit. */
// __asm__("nop");
- gpio_set(GPIO1, GPIOPIN29); /* LED off */
+ gpio_set(GPIO1, GPIOPIN29); /* LED on */
for (i = 0; i < 800000; i++) /* Wait a bit. */
__asm__("nop");
- GPIO1_CLR = (1 << 29); /* LED on */
+ gpio_clear(GPIO1, GPIOPIN29); /* LED off */
for (i = 0; i < 800000; i++) /* Wait a bit. */
__asm__("nop");
}
diff --git a/include/libopencm3/lpc17xx/gpio.h b/include/libopencm3/lpc17xx/gpio.h
index 567cd2c..7b07ac5 100644
--- a/include/libopencm3/lpc17xx/gpio.h
+++ b/include/libopencm3/lpc17xx/gpio.h
@@ -133,5 +133,6 @@
#define GPIO_IS MMIO32(GPIOINTERRPUT_BASE + 0x80)
void gpio_set(u32 gpioport, u32 gpios);
+void gpio_clear(u32 gpioport, u32 gpios);
#endif
diff --git a/lib/lpc17xx/gpio.c b/lib/lpc17xx/gpio.c
index 8913082..6c44081 100644
--- a/lib/lpc17xx/gpio.c
+++ b/lib/lpc17xx/gpio.c
@@ -23,3 +23,8 @@ void gpio_set(u32 gpioport, u32 gpios)
{
GPIO_SET(gpioport) = gpios;
}
+
+void gpio_clear(u32 gpioport, u32 gpios)
+{
+ GPIO_CLR(gpioport) = gpios;
+}