Skip to content

Commit

Permalink
nonworking NUCLE-F412ZG board definition
Browse files Browse the repository at this point in the history
  • Loading branch information
turbinenreiter committed Oct 10, 2016
1 parent a181340 commit 68d1b48
Show file tree
Hide file tree
Showing 6 changed files with 673 additions and 0 deletions.
70 changes: 70 additions & 0 deletions stmhal/boards/NUCLEO_F412ZG/mpconfigboard.h
@@ -0,0 +1,70 @@
#define MICROPY_HW_BOARD_NAME "NUCLEO-F411RE"
#define MICROPY_HW_MCU_NAME "STM32F411xE"

#define MICROPY_HW_HAS_SWITCH (1)
#define MICROPY_HW_HAS_FLASH (1)
#define MICROPY_HW_ENABLE_RTC (1)

// HSE is 8MHz, CPU freq set to 96MHz
#define MICROPY_HW_CLK_PLLM (8)
#define MICROPY_HW_CLK_PLLN (192)
#define MICROPY_HW_CLK_PLLP (RCC_PLLP_DIV2)
#define MICROPY_HW_CLK_PLLQ (4)

// UART config
#define MICROPY_HW_UART2_PORT (GPIOA)
#define MICROPY_HW_UART2_PINS (GPIO_PIN_2 | GPIO_PIN_3)
#define MICROPY_HW_UART6_PORT (GPIOC)
#define MICROPY_HW_UART6_PINS (GPIO_PIN_6 | GPIO_PIN_7)

// UART 2 connects to the STM32F103 (STLINK) on the Nucleo board
// and this is exposed as a USB Serial port.
#define MICROPY_HW_UART_REPL PYB_UART_2
#define MICROPY_HW_UART_REPL_BAUD 115200

// I2C busses
#define MICROPY_HW_I2C1_SCL (pin_B6) // Arduino D10, pin 17 on CN10
#define MICROPY_HW_I2C1_SDA (pin_B7) // pin 21 on CN7
#define MICROPY_HW_I2C2_SCL (pin_B10) // Arduino D6, pin 25 on CN10
#define MICROPY_HW_I2C2_SDA (pin_B3) // Arduino D3, pin 31 on CN10
#define MICROPY_HW_I2C3_SCL (pin_A8) // Arduino D7, pin 23 on CN10
#define MICROPY_HW_I2C3_SDA (pin_C9) // pin 1 on CN10

// SPI busses
#define MICROPY_HW_SPI1_NSS (pin_A15) // pin 17 on CN7
#define MICROPY_HW_SPI1_SCK (pin_A5) // Arduino D13, pin 11 on CN10
#define MICROPY_HW_SPI1_MISO (pin_A6) // Arduino D12, pin 13 on CN10
#define MICROPY_HW_SPI1_MOSI (pin_A7) // Arduino D11, pin 15 on CN10

#define MICROPY_HW_SPI2_NSS (pin_B12) // pin 16 on CN10
#define MICROPY_HW_SPI2_SCK (pin_B13) // pin 30 on CN10
#define MICROPY_HW_SPI2_MISO (pin_B14) // pin 28 on CN10
#define MICROPY_HW_SPI2_MOSI (pin_B15) // pin 26 on CN10

#define MICROPY_HW_SPI3_NSS (pin_A4) // Arduino A2, pin 32 on CN7
#define MICROPY_HW_SPI3_SCK (pin_B3) // Arduino D3, pin 31 on CN10
#define MICROPY_HW_SPI3_MISO (pin_B4) // Arduino D5, pin 27 on CN10
#define MICROPY_HW_SPI3_MOSI (pin_B5) // Arduino D4, pin 29 on CN10

#define MICROPY_HW_SPI4_NSS (pin_B12) // pin 16 on CN10
#define MICROPY_HW_SPI4_SCK (pin_B13) // pin 30 on CN10
#define MICROPY_HW_SPI4_MISO (pin_A1) // pin 30 on CN7
#define MICROPY_HW_SPI4_MOSI (pin_A11) // pin 14 on CN10


#define MICROPY_HW_SPI5_NSS (pin_B1) // pin 24 on CN10
#define MICROPY_HW_SPI5_SCK (pin_A10) // pin 33 on CN10
#define MICROPY_HW_SPI5_MISO (pin_A12) // pin 12 on CN10
#define MICROPY_HW_SPI5_MOSI (pin_B0) // pin 34 on CN7

// USRSW is pulled low. Pressing the button makes the input go high.
#define MICROPY_HW_USRSW_PIN (pin_C13)
#define MICROPY_HW_USRSW_PULL (GPIO_NOPULL)
#define MICROPY_HW_USRSW_EXTI_MODE (GPIO_MODE_IT_FALLING)
#define MICROPY_HW_USRSW_PRESSED (0)

// LEDs
#define MICROPY_HW_LED1 (pin_A5) // Green LD2 LED on Nucleo
#define MICROPY_HW_LED_OTYPE (GPIO_MODE_OUTPUT_PP)
#define MICROPY_HW_LED_ON(pin) (pin->gpio->BSRRL = pin->pin_mask)
#define MICROPY_HW_LED_OFF(pin) (pin->gpio->BSRRH = pin->pin_mask)
4 changes: 4 additions & 0 deletions stmhal/boards/NUCLEO_F412ZG/mpconfigboard.mk
@@ -0,0 +1,4 @@
MCU_SERIES = f4
CMSIS_MCU = STM32F412xG
AF_FILE = boards/stm32f412_af.csv
LD_FILE = boards/stm32f412.ld
75 changes: 75 additions & 0 deletions stmhal/boards/NUCLEO_F412ZG/pins.csv
@@ -0,0 +1,75 @@
D0,PA3
D1,PA2
D2,PA10
D3,PB3
D4,PB5
D5,PB4
D6,PB10
D7,PA8
D8,PA9
D9,PC7
D10,PB6
D11,PA7
D12,PA6
D13,PA5
D14,PB9
D15,PB8
A0,PA0
A1,PA1
A2,PA4
A3,PB0
A4,PC1
A5,PC0
PA0,PA0
PA1,PA1
PA2,PA2
PA3,PA3
PA4,PA4
PA5,PA5
PA6,PA6
PA7,PA7
PA8,PA8
PA9,PA9
PA10,PA10
PA11,PA11
PA12,PA12
PA15,PA15
PB0,PB0
PB1,PB1
PB2,PB2
PB3,PB3
PB4,PB4
PB5,PB5
PB6,PB6
PB7,PB7
PB8,PB8
PB9,PB9
PB10,PB10
PB12,PB12
PB13,PB13
PB14,PB14
PB15,PB15
PC0,PC0
PC1,PC1
PC2,PC2
PC3,PC3
PC4,PC4
PC5,PC5
PC6,PC6
PC7,PC7
PC8,PC8
PC9,PC9
PC10,PC10
PC11,PC11
PC12,PC12
PC13,PC13
PC14,PC14
PC15,PC15
PD2,PD2
PH0,PH0
PH1,PH1
LED_GREEN,PA5
LED_ORANGE,PA5
LED_RED,PA5
LED_BLUE,PA4
SW,PC13

0 comments on commit 68d1b48

Please sign in to comment.