diff --git a/STM32F1XX/variants/microduino/board.cpp b/STM32F1XX/variants/microduino/board.cpp index 90ebd3b..f8b2c12 100644 --- a/STM32F1XX/variants/microduino/board.cpp +++ b/STM32F1XX/variants/microduino/board.cpp @@ -2,6 +2,7 @@ * The MIT License * * Copyright (c) 2011 LeafLabs, LLC. + * Modifications Copyright (c) 2014 Ian Harvey * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation @@ -25,9 +26,9 @@ *****************************************************************************/ /** - * @file wirish/boards/maple_mini/board.cpp - * @author Marti Bolivar - * @brief Maple Mini board file. + * @file variants/microduino/board.cpp + * @author Ian Harvey + * @brief Board pin definitions for Microduino STM32 */ #include @@ -48,57 +49,48 @@ void boardInit(void) { extern const stm32_pin_info PIN_MAP[BOARD_NR_GPIO_PINS] = { - /* Top header */ - {GPIOB, NULL, NULL, 11, 0, ADCx}, /* D0/PB11 */ - {GPIOB, NULL, NULL, 10, 0, ADCx}, /* D1/PB10 */ - {GPIOB, NULL, NULL, 2, 0, ADCx}, /* D2/PB2 */ - {GPIOB, TIMER3, ADC1, 0, 3, 8}, /* D3/PB0 */ - {GPIOA, TIMER3, ADC1, 7, 2, 7}, /* D4/PA7 */ - {GPIOA, TIMER3, ADC1, 6, 1, 6}, /* D5/PA6 */ - {GPIOA, NULL, ADC1, 5, 0, 5}, /* D6/PA5 */ - {GPIOA, NULL, ADC1, 4, 0, 4}, /* D7/PA4 */ - {GPIOA, TIMER2, ADC1, 3, 4, 3}, /* D8/PA3 */ - {GPIOA, TIMER2, ADC1, 2, 3, 2}, /* D9/PA2 */ - {GPIOA, TIMER2, ADC1, 1, 2, 1}, /* D10/PA1 */ - {GPIOA, TIMER2, ADC1, 0, 1, 0}, /* D11/PA0 */ - {GPIOC, NULL, NULL, 15, 0, ADCx}, /* D12/PC15 */ - {GPIOC, NULL, NULL, 14, 0, ADCx}, /* D13/PC14 */ - {GPIOC, NULL, NULL, 13, 0, ADCx}, /* D14/PC13 */ + {GPIOA, TIMER1, NULL, 10, 3, ADCx}, /* D0(RxD0)/PA10 */ + {GPIOA, TIMER1, NULL, 9, 2, ADCx}, /* D1(TxD1)/PA9 */ + {GPIOB, NULL, NULL, 11, 0, ADCx}, /* D2/PB11 */ + {GPIOB, NULL, NULL, 10, 0, ADCx}, /* D3/PB10 */ + {GPIOA, TIMER1, NULL, 8, 1, ADCx}, /* D4/PA8 */ + {GPIOA, NULL, NULL, 13, 0, ADCx}, /* D5/PA13 */ + {GPIOA, NULL, NULL, 14, 0, ADCx}, /* D6/PA14 */ + {GPIOA, NULL, NULL, 15, 0, ADCx}, /* D7/PA15 */ + {GPIOB, NULL, NULL, 3, 0, ADCx}, /* D8/PB3 */ + {GPIOB, NULL, NULL, 4, 0, ADCx}, /* D9/PB4 */ + {GPIOA, NULL, ADC1, 4, 0, 4}, /* D10/PA4 */ + {GPIOA, TIMER3, ADC1, 7, 2, 7}, /* D11/PA7 */ + {GPIOA, TIMER3, ADC1, 6, 1, 6}, /* D12/PA6 */ + {GPIOA, NULL, ADC1, 5, 0, 5}, /* D13/PA5 */ - /* Bottom header */ + {GPIOA, TIMER2, ADC1, 0, 1, 0}, /* D14(A0)/PA0 */ + {GPIOA, TIMER2, ADC1, 1, 2, 1}, /* D15(A1)/PA1 */ + {GPIOA, TIMER2, ADC1, 2, 3, 2}, /* D16(A2)/PA2 */ + {GPIOA, TIMER2, ADC1, 3, 4, 3}, /* D17(A3)/PA3 */ + {GPIOB, TIMER4, NULL, 7, 2, ADCx}, /* D18(A4)/PB7 */ + {GPIOB, TIMER4, NULL, 6, 1, ADCx}, /* D19(A5)/PB6 */ + {GPIOB, TIMER3, ADC1, 0, 3, 8}, /* D20(A6)/PB0 */ + {GPIOB, TIMER3, ADC1, 1, 4, 9}, /* D21(A7)/PB1 */ - {GPIOB, TIMER4, NULL, 7, 2, ADCx}, /* D15/PB7 */ - {GPIOB, TIMER4, NULL, 6, 1, ADCx}, /* D16/PB6 */ - {GPIOB, NULL, NULL, 5, 0, ADCx}, /* D17/PB5 */ - {GPIOB, NULL, NULL, 4, 0, ADCx}, /* D18/PB4 */ - {GPIOB, NULL, NULL, 3, 0, ADCx}, /* D19/PB3 */ - {GPIOA, NULL, NULL, 15, 0, ADCx}, /* D20/PA15 */ - {GPIOA, NULL, NULL, 14, 0, ADCx}, /* D21/PA14 */ - {GPIOA, NULL, NULL, 13, 0, ADCx}, /* D22/PA13 */ - {GPIOA, NULL, NULL, 12, 0, ADCx}, /* D23/PA12 */ - {GPIOA, TIMER1, NULL, 11, 4, ADCx}, /* D24/PA11 */ - {GPIOA, TIMER1, NULL, 10, 3, ADCx}, /* D25/PA10 */ - {GPIOA, TIMER1, NULL, 9, 2, ADCx}, /* D26/PA9 */ - {GPIOA, TIMER1, NULL, 8, 1, ADCx}, /* D27/PA8 */ - {GPIOB, NULL, NULL, 15, 0, ADCx}, /* D28/PB15 */ - {GPIOB, NULL, NULL, 14, 0, ADCx}, /* D29/PB14 */ - {GPIOB, NULL, NULL, 13, 0, ADCx}, /* D30/PB13 */ - {GPIOB, NULL, NULL, 12, 0, ADCx}, /* D31/PB12 */ - {GPIOB, TIMER4, NULL, 8, 3, ADCx}, /* D32/PB8 */ - {GPIOB, TIMER3, ADC1, 1, 4, 9}, /* D33/PB1 */ + {GPIOA, NULL, NULL, 12, 0, ADCx}, /* D22/PA12/USB D+ */ + {GPIOA, TIMER1, NULL, 11, 4, ADCx}, /* D23/PA11/USB D- */ + + // FIXME: find out which pin is the button, if any + {GPIOB, NULL, NULL, 8, 0, ADCx}, /* D24/PB8??/Button */ }; extern const uint8 boardPWMPins[BOARD_NR_PWM_PINS] __FLASH__ = { - 3, 4, 5, 8, 9, 10, 11, 15, 16, 25, 26, 27 + 0, 1, 4, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 23 }; extern const uint8 boardADCPins[BOARD_NR_ADC_PINS] __FLASH__ = { - 3, 4, 5, 6, 7, 8, 9, 10, 11 + 14, 15, 16, 17, 18, 19, 20, 21, 10, 11, 12, 13 }; -#define USB_DP 23 -#define USB_DM 24 +#define USB_DP 22 +#define USB_DM 23 extern const uint8 boardUsedPins[BOARD_NR_USED_PINS] __FLASH__ = { BOARD_LED_PIN, BOARD_BUTTON_PIN, USB_DP, USB_DM diff --git a/STM32F1XX/variants/microduino/board/board.h b/STM32F1XX/variants/microduino/board/board.h index ac2e5e5..49092b5 100644 --- a/STM32F1XX/variants/microduino/board/board.h +++ b/STM32F1XX/variants/microduino/board/board.h @@ -2,6 +2,7 @@ * The MIT License * * Copyright (c) 2011 LeafLabs, LLC. + * Modifications Copyright (c) 2014 Ian Harvey * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation @@ -25,59 +26,57 @@ *****************************************************************************/ /** - * @file wirish/boards/maple_mini/include/board/board.h - * @author Marti Bolivar - * @brief Maple Mini board header. + * @file variants/microduino/board/board.h + * @author Ian Harvey + * @brief Private include file for Microduino STM32 * * See wirish/boards/maple/include/board/board.h for more information * on these definitions. */ -#ifndef _BOARD_MAPLE_MINI_H_ -#define _BOARD_MAPLE_MINI_H_ +#ifndef _BOARD_MICRODUINO_STM32_H_ +#define _BOARD_MICRODUINO_STM32_H_ #define CYCLES_PER_MICROSECOND 72 #define SYSTICK_RELOAD_VAL 71999 /* takes a cycle to reload */ -#define BOARD_BUTTON_PIN 32 -#define BOARD_LED_PIN 33 +#define BOARD_BUTTON_PIN 24 +#define BOARD_LED_PIN 4 #define BOARD_NR_USARTS 3 -#define BOARD_USART1_TX_PIN 26 -#define BOARD_USART1_RX_PIN 25 -#define BOARD_USART2_TX_PIN 9 -#define BOARD_USART2_RX_PIN 8 -#define BOARD_USART3_TX_PIN 1 -#define BOARD_USART3_RX_PIN 0 +#define BOARD_USART1_TX_PIN 1 +#define BOARD_USART1_RX_PIN 0 +#define BOARD_USART2_TX_PIN 16 +#define BOARD_USART2_RX_PIN 17 +#define BOARD_USART3_TX_PIN 3 +#define BOARD_USART3_RX_PIN 2 -#define BOARD_NR_SPI 2 -#define BOARD_SPI1_NSS_PIN 7 -#define BOARD_SPI1_MOSI_PIN 4 -#define BOARD_SPI1_MISO_PIN 5 -#define BOARD_SPI1_SCK_PIN 6 -#define BOARD_SPI2_NSS_PIN 31 -#define BOARD_SPI2_MOSI_PIN 28 -#define BOARD_SPI2_MISO_PIN 29 -#define BOARD_SPI2_SCK_PIN 30 +#define BOARD_NR_SPI 1 +#define BOARD_SPI1_NSS_PIN 10 +#define BOARD_SPI1_MOSI_PIN 11 +#define BOARD_SPI1_MISO_PIN 12 +#define BOARD_SPI1_SCK_PIN 13 -#define BOARD_NR_GPIO_PINS 34 -#define BOARD_NR_PWM_PINS 12 -#define BOARD_NR_ADC_PINS 9 +#define BOARD_NR_GPIO_PINS 25 +#define BOARD_NR_PWM_PINS 14 +#define BOARD_NR_ADC_PINS 12 #define BOARD_NR_USED_PINS 4 -#define BOARD_JTMS_SWDIO_PIN 22 -#define BOARD_JTCK_SWCLK_PIN 21 -#define BOARD_JTDI_PIN 20 -#define BOARD_JTDO_PIN 19 -#define BOARD_NJTRST_PIN 18 +#define BOARD_JTMS_SWDIO_PIN 5 +#define BOARD_JTCK_SWCLK_PIN 6 +#define BOARD_JTDI_PIN 7 +#define BOARD_JTDO_PIN 8 +#define BOARD_NJTRST_PIN 9 -#define BOARD_USB_DISC_DEV GPIOB -#define BOARD_USB_DISC_BIT 9 +#define BOARD_USB_DISC_DEV GPIOB // FIXME +#define BOARD_USB_DISC_BIT 9 // FIXME enum { - PB11, PB10, PB2, PB0, PA7, PA6, PA5, PA4, PA3, PA2, PA1, PA0, PC15, PC14, - PC13, PB7, PB6, PB5, PB4, PB3, PA15, PA14, PA13, PA12, PA11, PA10, PA9, - PA8, PB15, PB14, PB13, PB12, PB8, PB1 + PA10, PA9, PB11, PB10, PA8, PA13, PA14, PA15, + PB3, PB4, PA4, PA7, PA6, PA5, + + PA0, PA1, PA2, PA3, PB7, PB6, PB0, + PA12, PA11 //FIXME - button pin }; #endif