aboutsummaryrefslogtreecommitdiffstats
path: root/libmaple
diff options
context:
space:
mode:
Diffstat (limited to 'libmaple')
-rw-r--r--libmaple/libmaple.h75
1 files changed, 55 insertions, 20 deletions
diff --git a/libmaple/libmaple.h b/libmaple/libmaple.h
index fa6c8a1..0b0494f 100644
--- a/libmaple/libmaple.h
+++ b/libmaple/libmaple.h
@@ -33,7 +33,7 @@
#include "libmaple_types.h"
-// General configuration
+/* General configuration */
#define DEBUG_NONE 0
#define DEBUG_FAULT 1
#define DEBUG_ALL 2
@@ -42,30 +42,31 @@
#define DEBUG_LEVEL DEBUG_ALL
#endif
-// MCU-specific configuration
+/* MCU-specific configuration */
#ifdef MCU_STM32F103RB
- // eg, LeafLabs Maple
+ /* e.g., LeafLabs Maple */
- // Number of GPIO ports (GPIOA, GPIOB, etc), definately used
+ /* Number of GPIO ports (GPIOA, GPIOB, etc.) */
#define NR_GPIO_PORTS 4
- // Total number of GPIO pins
+ /* Total number of GPIO pins */
#define NR_GPIO_PINS 39
- // Number of timer devices ports, definately used
+ /* Number of timer devices ports, definitely used */
#define NR_TIMERS 4
- // Number of USART ports
+ /* Number of USART ports */
#define NR_USART 3
- // Has an FSMC bus?
+ /* Has an FSMC bus? */
#define NR_FSMC 0
- // Has an FSMC bus?
+ /* Has an FSMC bus? */
#define NR_DAC_PINS 0
- // USB Identifier numbers
- // Descriptor strings must be modified by hand in usb/descriptors.c for now
+ /* USB Identifier numbers */
+ /* Descriptor strings must be modified by hand in
+ usb/descriptors.c for now */
#define VCOM_ID_VENDOR 0x1EAF
#define VCOM_ID_PRODUCT 0x0004
#define USB_DISC_BANK GPIOC_BASE
@@ -73,25 +74,25 @@
#define USB_CONFIG_MAX_POWER (100 >> 1)
#define RESET_DELAY (100)
- // Where to put usercode (based on space reserved for bootloader)
+ /* Where to put usercode (based on space reserved for bootloader) */
#define USER_ADDR_ROM 0x08005000
#define USER_ADDR_RAM 0x20000C00
#define STACK_TOP 0x20000800
- // Debug port settings (from ASSERT)
+ /* Debug port settings (from ASSERT) */
#define ERROR_LED_PORT GPIOA_BASE
#define ERROR_LED_PIN 5
#define ERROR_USART_NUM USART2
#define ERROR_USART_BAUD 9600
- #define ERROR_TX_PIN 2
#define ERROR_TX_PORT GPIOA_BASE
+ #define ERROR_TX_PIN 2
- // Just in case, most boards have at least some memory
+ /* Just in case, most boards have at least some memory */
#ifndef RAMSIZE
# define RAMSIZE (caddr_t)0x50000
#endif
- // Bitbanded Memory sections
+ /* Bitbanded Memory sections */
#define BITBAND_SRAM_REF 0x20000000
#define BITBAND_SRAM_BASE 0x22000000
#define BITBAND_PERI_REF 0x40000000
@@ -99,7 +100,8 @@
#endif
#ifdef MCU_STM32F103ZE
- // eg, LeafLabs Maple Native
+ /* e.g., LeafLabs Maple Native */
+
#define NR_GPIO_PORTS 7
#define NR_GPIO_PINS 63
#define NR_TIMERS 8
@@ -122,8 +124,8 @@
#define ERROR_LED_PIN 15
#define ERROR_USART_NUM USART1
#define ERROR_USART_BAUD 9600
- #define ERROR_TX_PIN 10
#define ERROR_TX_PORT GPIOA_BASE
+ #define ERROR_TX_PIN 10
#ifndef RAMSIZE
# define RAMSIZE (caddr_t)0x50000
@@ -135,13 +137,46 @@
#define BITBAND_PERI_BASE 0x42000000
#endif
-// Make sure MCU-specific settings were defined
+#ifdef MCU_STM32F103CB
+ /* e.g., LeafLabs Maple Mini */
+
+ #define NR_GPIO_PORTS 3
+ #define NR_GPIO_PINS 34
+ #define NR_TIMERS 4
+ #define NR_USART 3
+ #define NR_FSMC 0
+ #define NR_DAC_PINS 0
+
+ #define VCOM_ID_VENDOR 0x1EAF
+ #define VCOM_ID_PRODUCT 0x0005
+ #define USB_DISC_BANK GPIOB_BASE
+ #define USB_DISC_PIN 9
+ #define USB_CONFIG_MAX_POWER (100 >> 1) /* WTF does this mean */
+ #define RESET_DELAY 100
+
+ #define USER_ADDR_ROM 0x08005000
+ #define USER_ADDR_RAM 0x20000C00
+ #define STACK_TOP 0x20000800
+
+ #define ERROR_LED_PORT GPIOB_BASE
+ #define ERROR_LED_PIN 12
+ #define ERROR_USART_NUM USART2
+ #define ERROR_USART_BAUD 9600
+ #define ERROR_TX_PORT GPIOA_BASE
+ #define ERROR_TX_PIN 2
+
+ #ifndef RAMSIZE
+ # define RAMSIZE (caddr_t)0x50000
+ #endif
+#endif
+
+/* Make sure MCU-specific settings were defined */
#ifndef NR_GPIO_PORTS
#error "No MCU type specified. Add something like -DMCU_STM32F103RB " \
"to your compiler arguments (probably in a Makefile)."
#endif
-// Requires board configuration info
+/* Requires board configuration info */
#include "util.h"
#endif