aboutsummaryrefslogtreecommitdiff
path: root/include/libopenstm32
diff options
context:
space:
mode:
authorUwe Hermann2009-07-18 16:20:32 +0200
committerUwe Hermann2009-07-18 16:20:32 +0200
commit3262983d27ee15fefeaa2efbe9a903f5364d7ee2 (patch)
tree6f78b972dcede164571e79df470a53adeeabf02c /include/libopenstm32
parentd43224acfbb31e23c2b3a6b7ea38626a7d4fbe21 (diff)
Add initial GPIO API implementation.
This currently includes a number of basic functions. Example usage: gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO12); gpio_set(GPIOB, GPIO4); gpio_clear(GPIOG, GPIO2 | GPIO9); gpio_toggle(GPIOA, GPIO7); reg16 = gpio_port_read(GPIOD); gpio_port_write(GPIOF, 0xc8fe);
Diffstat (limited to 'include/libopenstm32')
-rw-r--r--include/libopenstm32/gpio.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/include/libopenstm32/gpio.h b/include/libopenstm32/gpio.h
index fb8cb8b..7654d17 100644
--- a/include/libopenstm32/gpio.h
+++ b/include/libopenstm32/gpio.h
@@ -136,9 +136,13 @@
#define GPIO13 (1 << 13)
#define GPIO14 (1 << 14)
#define GPIO15 (1 << 15)
-
-void gpio_set(unsigned int gpio);
-void gpio_clear(unsigned int gpio);
-void gpio_toggle(unsigned int gpio);
+#define GPIO_ALL 0xffff
+
+void gpio_set_mode(u32 gpioport, u8 mode, u8 cnf, u16 gpios);
+void gpio_set(u32 gpioport, u16 gpios);
+void gpio_clear(u32 gpioport, u16 gpios);
+void gpio_toggle(u32 gpioport, u16 gpios);
+u16 gpio_port_read(u32 gpioport);
+void gpio_port_write(u32 gpioport, u16 data);
#endif