8000 stm32/boards/NUCLEO_G0B1RE: Add NUCLEO_G0B1RE board definition. · sstobbe/micropython@9d08eb0 · GitHub 8000
[go: up one dir, main page]

Skip to content

Commit 9d08eb0

Browse files
AsensioLdpgeorge
authored andcommitted
stm32/boards/NUCLEO_G0B1RE: Add NUCLEO_G0B1RE board definition.
This commit adds a board definition for NUCLEO_G0B1RE. This board has the REPL on UART2 which is connected to the on-board ST-link USB-UART. Signed-off-by: Asensio Lorenzo Sempere <asensio.aerospace@gmail.com>
1 parent 010012c commit 9d08eb0

File tree

7 files changed

+333
-0
lines changed

7 files changed

+333
-0
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"deploy": [
3+
"../deploy.md"
4+
],
5+
"docs": "",
6+
"features": [],
7+
"images": [
8+
"nucleo_g0b1re.jpg"
9+
],
10+
"mcu": "stm32g0",
11+
"product": "Nucleo G0B1RE",
12+
"thumbnail": "",
13+
"url": "",
14+
"vendor": "ST Microelectronics"
15+
}
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
#define MICROPY_HW_BOARD_NAME "NUCLEO-G0B1RE"
2+
#define MICROPY_HW_MCU_NAME "STM32G0B1xE"
3+
4+
#define MICROPY_HW_HAS_SWITCH (1)
5+
#define MICROPY_HW_HAS_FLASH (1)
6+
#define MICROPY_HW_ENABLE_RNG (0)
7+
#define MICROPY_HW_ENABLE_RTC (1)
8+
#define MICROPY_HW_ENABLE_DAC (0)
9+
#define MICROPY_PY_PYB_LEGACY (0)
10+
11+
#define MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE (1)
12+
13+
// HSE is 8MHz, HSI is 16MHz CPU freq set to 64MHz
14+
// Default source for the clock is HSI.
15+
#define MICROPY_HW_CLK_USE_HSI (1)
16+
17+
#define MICROPY_HW_FLASH_LATENCY FLASH_LATENCY_2
18+
19+
#if MICROPY_HW_CLK_USE_HSI
20+
#define MICROPY_HW_CLK_PLLM (16)
21+
#else
22+
#define MICROPY_HW_CLK_PLLM (8)
23+
#endif
24+
#define MICROPY_HW_CLK_PLLN (336)
25+
#define MICROPY_HW_CLK_PLLP (RCC_PLLP_DIV4)
26+
#define MICROPY_HW_CLK_PLLQ (7)
27+
28+
// USART1 config
29+
#define MICROPY_HW_UART1_TX (pin_A9)
30+
#define MICROPY_HW_UART1_RX (pin_A10)
31+
// UART2 config
32+
#define MICROPY_HW_UART2_TX (pin_A2)
33+
#define MICROPY_HW_UART2_RX (pin_A3)
34+
// USART3 config
35+
#define MICROPY_HW_UART3_TX (pin_C4)
36+
#define MICROPY_HW_UART3_RX (pin_C5)
37+
#define MICROPY_HW_UART3_RTS (pin_B14)
38+
#define MICROPY_HW_UART3_CTS (pin_B13)
39+
// USART4 config
40+
#define MICROPY_HW_UART4_TX (pin_A0)
41+
#define MICROPY_HW_UART4_RX (pin_A1)
42+
// USART5 config
43+
#define MICROPY_HW_UART5_TX (pin_B0)
44+
#define MICROPY_HW_UART5_RX (pin_B1)
45+
// USART6 config
46+
#define MICROPY_HW_UART6_TX (pin_C0)
47+
#define MICROPY_HW_UART6_RX (pin_C1)
48+
// LPUART1 config
49+
#define MICROPY_HW_LPUART1_TX (pin_C1)
50+
#define MICROPY_HW_LPUART1_RX (pin_C0)
51+
// LPUART2 config
52+
#define MICROPY_HW_LPUART2_TX (pin_C6)
53+
#define MICROPY_HW_LPUART2_RX (pin_C7)
54+
// USART2 is connected to the virtual com port on the ST-Link
55+
#define MICROPY_HW_UART_REPL PYB_UART_2
56+
#define MICROPY_HW_UART_REPL_BAUD 115200
57+
58+
// I2C buses
59+
#define MICROPY_HW_I2C1_SCL (pin_B8)
60+
#define MICROPY_HW_I2C1_SDA (pin_B9)
61+
#define MICROPY_HW_I2C2_SCL (pin_B10)
62+
#define MICROPY_HW_I2C2_SDA (pin_B11)
63+
64+
// SPI buses
65+
#define MICROPY_HW_SPI1_NSS (pin_A4)
66+
#define MICROPY_HW_SPI1_SCK (pin_B3)
67+
#define MICROPY_HW_SPI1_MISO (pin_B4)
68+
#define MICROPY_HW_SPI1_MOSI (pin_B5)
69+
#define MICROPY_HW_SPI2_NSS (pin_B12)
70+
#define MICROPY_HW_SPI2_SCK (pin_B13)
71+
#define MICROPY_HW_SPI2_MISO (pin_B14)
72+
#define MICROPY_HW_SPI2_MOSI (pin_B15)
73+
74+
// CAN buses
75+
// #define MICROPY_HW_CAN1_TX (pin_A12)
76+
// #define MICROPY_HW_CAN1_RX (pin_A11)
77+
// #define MICROPY_HW_CAN2_TX (pin_C2)
78+
// #define MICROPY_HW_CAN2_RX (pin_C3)
79+
80+
// USRSW is pulled low. Pressing the button makes the input go high.
81+
#define MICROPY_HW_USRSW_PIN (pin_C13)
82+
#define MICROPY_HW_USRSW_PULL (GPIO_NOPULL)
83+
#define MICROPY_HW_USRSW_EXTI_MODE (GPIO_MODE_IT_FALLING)
84+
#define MICROPY_HW_USRSW_PRESSED (0)
85+
86+
// LEDs
87+
#define MICROPY_HW_LED1 (pin_A5) // Green LD2 LED on Nucleo
88+
#define MICROPY_HW_LED_ON(pin) (mp_hal_pin_high(pin))
89+
#define MICROPY_HW_LED_OFF(pin) (mp_hal_pin_low(pin))
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
MCU_SERIES = g0
2+
CMSIS_MCU = STM32G0B1xx
3+
AF_FILE = boards/stm32g0b1_af.csv
4+
LD_FILES = boards/stm32g0b1xe.ld boards/common_basic.ld
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
A0,PA0
2+
A1,PA1
3+
A2,PA4
4+
A3,PB1
5+
A4,PB11
6+
A5,PB12
7+
D0,PC5
8+
D1,PC4
9+
D10,PB0
10+
D11,PA7
11+
D12,PA6
12+
D13,PA5
13+
D14,PB9
14+
D15,PB8
15+
D2,PA10
16+
D3,PB3
17+
D4,PB5
18+
D5,PB4
19+
D6,PB14
20+
D7,PA8
21+
D8,PA9
22+
D9,PC7
23+
PA0,PA0
24+
PA1,PA1
25+
PA10,PA10
26+
PA11,PA11
27+
PA12,PA12
28+
PA13,TMS
29+
PA15,PA15
30+
PA2,PA2
31+
PA3,PA3
32+
PA4,PA4
33+
PA5,PA5
34+
PA6,PA6
35+
PA7,PA7
36+
PA8,PA8
37+
PA9,PA9
38+
PB0,PB0
39+
PB1,PB1
40+
PB10,PB10
41+
PB11,PB11
42+
PB12,PB12
43+
PB13,PB13
44+
PB14,PB14
45+
PB15,PB15
46+
PB2,PB2
47+
PB3,PB3
48+
PB4,PB4
49+
PB5,PB5
50+
PB6,PB6
51+
PB7,PB7
52+
PB8,PB8
53+
PB9,PB9
54+
PC0,PC0
55+
PC1,PC1
56+
PC10,PC10
57+
PC11,PC11
58+
PC12,PC12
59+
PC13,PC13
60+
PC2,PC2
61+
PC3,PC3
62+
PC4,PC4
63+
PC5,PC5
64+
PC6,PC6
65+
PC7,PC7
66+
PC8,PC8
67+
PC9,PC9
68+
PD0,PD0
69+
PD1,PD1
70+
PD2,PD2
71+
PD3,PD3
72+
PD4,PD4
73+
PD5,PD5
74+
PD6,PD6
75+
PD8,PD8
76+
PD9,PD9
77+
PD13,PD13
78+
LED_GREEN,PD13
79+
SW,PC13
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/* This file is part of the MicroPython project, http://micropython.org/
2+
* The MIT License (MIT)
3+
* Copyright (c) 2019 Damien P. George
4+
*/
5+
#ifndef MICROPY_INCLUDED_STM32G0XX_HAL_CONF_H< F42D /span>
6+
#define MICROPY_INCLUDED_STM32G0XX_HAL_CONF_H
7+
8+
// Oscillator values in Hz
9+
#define HSE_VALUE (8000000)
10+
#define LSE_VALUE (32768)
11+
#define EXTERNAL_I2S1_CLOCK_VALUE (48000)
12+
#if defined(STM32G0C1xx) || defined(STM32G0B1xx) || defined(STM32G0B0xx)
13+
#define EXTERNAL_I2S2_CLOCK_VALUE (48000)
14+
#endif
15+
16+
// Oscillator timeouts in ms
17+
#define HSE_STARTUP_TIMEOUT (100)
18+
#define LSE_STARTUP_TIMEOUT (5000)
19+
20+
#include "boards/stm32g0xx_hal_conf_base.h"
21+
22+
#endif // MICROPY_INCLUDED_STM32G0XX_HAL_CONF_H

ports/stm32/boards/stm32g0b1_af.csv

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
Port,Pin,AF0,AF1,AF2,AF3,AF4,AF5,AF6,AF7,AF8,AF9,AF10,AF11,AF12,AF13,AF14,AF15,
2+
,,AF0,AF1,AF2,AF3,AF4,AF5,AF6,AF7,AF8,AF9,AF10,AF11,AF12,AF13,AF14,AF15,ADC
3+
PortA,PA0,SPI2_SCK/I2S2_CK,USART2_CTS,TIM2_CH1/TIM2_ETR,,USART4_TX,LPTIM1_OUT,UCPD2_FRSTX,COMP1_OUT,,,,,,,,,ADC1_IN0
4+
PortA,PA1,SPI1_SCK/I2S1_CK,USART2_RTS/USART2_DE/USART2_CK,TIM2_CH2,,USART4_RX,TIM15_CH1N,I2C1_SMBA,EVENTOUT,,,,,,,,,ADC1_IN1
5+
PortA,PA2,SPI1_MOSI/I2S1_SD,USART2_TX,TIM2_CH3,,UCPD1_FRSTX,TIM15_CH1,LPUART1_TX,COMP2_OUT,,,,,,,,,ADC1_IN2
6+
PortA,PA3,SPI2_MISO/I2S2_MCK,USART2_RX,TIM2_CH4,,UCPD2_FRSTX,TIM15_CH2,LPUART1_RX,EVENTOUT,,,,,,,,,ADC1_IN3
7+
PortA,PA4,SPI1_NSS/I2S1_WS,SPI2_MOSI/I2S2_SD,USB_NOE,USART6_TX,TIM14_CH1,LPTIM2_OUT,UCPD2_FRSTX,EVENTOUT,,SPI3_NSS,,,,,,,ADC1_IN4
8+
PortA,PA5,SPI1_SCK/I2S1_CK,CEC,TIM2_CH1/TIM2_ETR,USART6_RX,USART3_TX,LPTIM2_ETR,UCPD1_FRSTX,EVENTOUT,,,,,,,,,ADC1_IN5
9+
PortA,PA6,SPI1_MISO/I2S1_MCK,TIM3_CH1,TIM1_BKIN,USART6_CTS,USART3_CTS,TIM16_CH1,LPUART1_CTS,COMP1_OUT,I2C2_SDA,I2C3_SDA,,,,,,,ADC1_IN6
10+
PortA,PA7,SPI1_MOSI/I2S1_SD,TIM3_CH2,TIM1_CH1N,USART6_RTS/USART6_DE/USART6_CK,TIM14_CH1,TIM17_CH1,UCPD1_FRSTX,COMP2_OUT,I2C2_SCL,I2C3_SCL,,,,,,,ADC1_IN7
11+
PortA,PA8,MCO,SPI2_NSS/I2S2_WS,TIM1_CH1,,CRS1_SYNC,LPTIM2_OUT,,EVENTOUT,I2C2_SMBA,,,,,,,,
12+
PortA,PA9,MCO,USART1_TX,TIM1_CH2,,SPI2_MISO/I2S2_MCK,TIM15_BKIN,I2C1_SCL,EVENTOUT,I2C2_SCL,,,,,,,,
13+
PortA,PA10,SPI2_MOSI/I2S2_SD,USART1_RX,TIM1_CH3,MCO2,,TIM17_BKIN,I2C1_SDA,EVENTOUT,I2C2_SDA,,,,,,,,
14+
PortA,PA11,SPI1_MISO/I2S1_MCK,USART1_CTS,TIM1_CH4,FDCAN1_RX,,TIM1_BKIN2,I2C2_SCL,COMP1_OUT,,,,,,,,,
15+
PortA,PA12,SPI1_MOSI/I2S1_SD,USART1_RTS/USART1_DE/USART1_CK,TIM1_ETR,FDCAN1_TX,,I2S_CKIN,I2C2_SDA,COMP2_OUT,,,,,,,,,
16+
PortA,PA13,SWDIO,IR_OUT,USB_NOE,,,,,EVENTOUT,,,LPUART2_RX,,,,,,
17+
PortA,PA14,SWCLK,USART2_TX,,,,,,EVENTOUT,,,LPUART2_TX,,,,,,
18+
PortA,PA15,SPI1_NSS/I2S1_WS,USART2_RX,TIM2_CH1/TIM2_ETR,MCO2,USART4_RTS/USART4_DE/USART4_CK,USART3_RTS/USART3_DE/USART3_CK,USB_NOE,EVENTOUT,I2C2_SMBA,SPI3_NSS,,,,,,,
19+
PortB,PB0,SPI1_NSS/I2S1_WS,TIM3_CH3,TIM1_CH2N,FDCAN2_RX,USART3_RX,LPTIM1_OUT,UCPD1_FRSTX,COMP1_OUT,USART5_TX,,LPUART2_CTS,,,,,,ADC1_IN8
20+
PortB,PB1,TIM14_CH1,TIM3_CH4,TIM1_CH3N,FDCAN2_TX,USART3_RTS/USART3_DE/USART3_CK,LPTIM2_IN1,LPUART1_RTS/LPUART1_DE,COMP3_OUT,USART5_RX,,LPUART2_RTS/LPUART2_DE,,,,,,ADC1_IN9
21+
PortB,PB2,,SPI2_MISO/I2S2_MCK,,MCO2,USART3_TX,LPTIM1_OUT,,EVENTOUT,,,,,,,,,ADC1_IN10
22+
PortB,PB3,SPI1_SCK/I2S1_CK,TIM1_CH2,TIM2_CH2,USART5_TX,USART1_RTS/USART1_DE/USART1_CK,,I2C3_SCL,EVENTOUT,I2C2_SCL,SPI3_SCK,,,,,,,
23+
PortB,PB4,SPI1_MISO/I2S1_MCK,TIM3_CH1,,USART5_RX,USART1_CTS,TIM17_BKIN,I2C3_SDA,EVENTOUT,I2C2_SDA,SPI3_MISO,,,,,,,
24+
PortB,PB5,SPI1_MOSI/I2S1_SD,TIM3_CH2,TIM16_BKIN,FDCAN2_RX,,LPTIM1_IN1,I2C1_SMBA,COMP2_OUT,USART5_RTS/USART5_DE/USART5_CK,SPI3_MOSI,,,,,,,
25+
PortB,PB6,USART1_TX,TIM1_CH3,TIM16_CH1N,FDCAN2_TX,SPI2_MISO/I2S2_MCK,LPTIM1_ETR,I2C1_SCL,EVENTOUT,USART5_CTS,TIM4_CH1,LPUART2_TX,,,,,,
26+
PortB,PB7,USART1_RX,SPI2_MOSI/I2S2_SD,TIM17_CH1N,,USART4_CTS,LPTIM1_IN2,I2C1_SDA,EVENTOUT,,TIM4_CH2,LPUART2_RX,,,,,,
27+
PortB,PB8,CEC,SPI2_SCK/I2S2_CK,TIM16_CH1,FDCAN1_RX,USART3_TX,TIM15_BKIN,I2C1_SCL,EVENTOUT,USART6_TX,TIM4_CH3,,,,,,,
28+
PortB,PB9,IR_OUT,UCPD2_FRSTX,TIM17_CH1,FDCAN1_TX,USART3_RX,SPI2_NSS/I2S2_WS,I2C1_SDA,EVENTOUT,USART6_RX,TIM4_CH4,,,,,,,
29+
PortB,PB10,CEC,LPUART1_RX,TIM2_CH3,,USART3_TX,SPI2_SCK/I2S2_CK,I2C2_SCL,COMP1_OUT,,,,,,,,,ADC1_IN11
30+
PortB,PB11,SPI2_MOSI/I2S2_SD,LPUART1_TX,TIM2_CH4,,USART3_RX,,I2C2_SDA,COMP2_OUT,,,,,,,,,
31+
PortB,PB12,SPI2_NSS/I2S2_WS,LPUART1_RTS/LPUART1_DE,TIM1_BKIN,FDCAN2_RX,,TIM15_BKIN,UCPD2_FRSTX,EVENTOUT,I2C2_SMBA,,,,,,,,
32+
PortB,PB13,SPI2_SCK/I2S2_CK,LPUART1_CTS,TIM1_CH1N,FDCAN2_TX,USART3_CTS,TIM15_CH1N,I2C2_SCL,EVENTOUT,,,,,,,,,
33+
PortB,PB14,SPI2_MISO/I2S2_MCK,UCPD1_FRSTX,TIM1_CH2N,,USART3_RTS/USART3_DE/USART3_CK,TIM15_CH1,I2C2_SDA,EVENTOUT,USART6_RTS/USART6_DE/USART6_CK,,,,,,,,
34+
PortB,PB15,SPI2_MOSI/I2S2_SD,,TIM1_CH3N,,TIM15_CH1N,TIM15_CH2,,EVENTOUT,USART6_CTS,,,,,,,,
35+
PortC,PC0,LPTIM1_IN1,LPUART1_RX,LPTIM2_IN1,LPUART2_TX,USART6_TX,,I2C3_SCL,COMP3_OUT,,,,,,,,,
36+
PortC,PC1,LPTIM1_OUT,LPUART1_TX,TIM15_CH1,LPUART2_RX,USART6_RX,,I2C3_SDA,,,,,,,,,,
37+
PortC,PC2,LPTIM1_IN2,SPI2_MISO/I2S2_MCK,TIM15_CH2,FDCAN2_RX,,,,COMP3_OUT,,,,,,,,,
38+
PortC,PC3,LPTIM1_ETR,SPI2_MOSI/I2S2_SD,LPTIM2_ETR,FDCAN2_TX,,,,,,,,,,,,,
39+
PortC,PC4,USART3_TX,USART1_TX,TIM2_CH1/TIM2_ETR,FDCAN1_RX,,,,,,,,,,,,,
40+
PortC,PC5,USART3_RX,USART1_RX,TIM2_CH2,FDCAN1_TX,,,,,,,,,,,,,ADC1_IN18
41+
PortC,PC6,UCPD1_FRSTX,TIM3_CH1,TIM2_CH3,LPUART2_TX,,,,,,,,,,,,,
42+
PortC,PC7,UCPD2_FRSTX,TIM3_CH2,TIM2_CH4,LPUART2_RX,,,,,,,,,,,,,
43+
PortC,PC8,UCPD2_FRSTX,TIM3_CH3,TIM1_CH1,LPUART2_CTS,,,,,,,,,,,,,
44+
PortC,PC9,I2S_CKIN,TIM3_CH4,TIM1_CH2,LPUART2_RTS/LPUART2_DE,,,USB_NOE,,,,,,,,,,
45+
PortC,PC10,USART3_TX,USART4_TX,TIM1_CH3,,SPI3_SCK,,,,,,,,,,,,
46+
PortC,PC11,USART3_RX,USART4_RX,TIM1_CH4,,SPI3_MISO,,,,,,,,,,,,
47+
PortC,PC12,LPTIM1_IN1,UCPD1_FRSTX,TIM14_CH1,USART5_TX,SPI3_MOSI,,,,,,,,,,,,
48+
PortC,PC13,,,TIM1_BKIN,,,,,,,,,,,,,,
49+
PortC,PC14,,,TIM1_BKIN2,,,,,,,,,,,,,,
50+
PortC,PC15,OSC32_EN,OSC_EN,TIM15_BKIN,,,,,,,,,,,,,,
51+
PortD,PD0,EVENTOUT,SPI2_NSS/I2S2_WS,TIM16_CH1,FDCAN1_RX,,,,,,,,,,,,,
52+
PortD,PD1,EVENTOUT,SPI2_SCK/I2S2_CK,TIM17_CH1,FDCAN1_TX,,,,,,,,,,,,,
53+
PortD,PD2,USART3_RTS/USART3_DE/USART3_CK,TIM3_ETR,TIM1_CH1N,USART5_RX,,,,,,,,,,,,,
54+
PortD,PD3,USART2_CTS,SPI2_MISO/I2S2_MCK,TIM1_CH2N,USART5_TX,,,,,,,,,,,,,
55+
PortD,PD4,USART2_RTS/USART2_DE/USART2_CK,SPI2_MOSI/I2S2_SD,TIM1_CH3N,USART5_RTS/USART5_DE/USART5_CK,,,,,,,,,,,,,
56+
PortD,PD5,USART2_TX,SPI1_MISO/I2S1_MCK,TIM1_BKIN,USART5_CTS,,,,,,,,,,,,,
57+
PortD,PD6,USART2_RX,SPI1_MOSI/I2S1_SD,LPTIM2_OUT,,,,,,,,,,,,,,
58+
PortD,PD7,,,,MCO2,,,,,,,,,,,,,
59+
PortD,PD8,USART3_TX,SPI1_SCK/I2S1_CK,LPTIM1_OUT,,,,,,,,,,,,,,
60+
PortD,PD9,USART3_RX,SPI1_NSS/I2S1_WS,TIM1_BKIN2,,,,,,,,,,,,,,
61+
PortD,PD10,MCO,,,,,,,,,,,,,,,,
62+
PortD,PD11,USART3_CTS,LPTIM2_ETR,,,,,,,,,,,,,,,
63+
PortD,PD12,USART3_RTS/USART3_DE/USART3_CK,LPTIM2_IN1,TIM4_CH1,FDCAN1_RX,,,,,,,,,,,,,
64+
PortD,PD13,,LPTIM2_OUT,TIM4_CH2,FDCAN1_TX,,,,,,,,,,,,,
65+
PortD,PD14,,LPUART2_CTS,TIM4_CH3,FDCAN2_RX,,,,,,,,,,,,,
66+
PortD,PD15,CRS1_SYNC,LPUART2_RTS/LPUART2_DE,TIM4_CH4,FDCAN2_TX,,,,,,,,,,,,,
67+
PortE,PE0,TIM16_CH1,EVENTOUT,TIM4_ETR,,,,,,,,,,,,,,
68+
PortE,PE1,TIM17_CH1,EVENTOUT,,,,,,,,,,,,,,,
69+
PortE,PE2,,TIM3_ETR,,,,,,,,,,,,,,,
70+
PortE,PE3,,TIM3_CH1,,,,,,,,,,,,,,,
71+
PortE,PE4,,TIM3_CH2,,,,,,,,,,,,,,,
72+
PortE,PE5,,TIM3_CH3,,,,,,,,,,,,,,,
73+
PortE,PE6,,TIM3_CH4,,,,,,,,,,,,,,,
74+
PortE,PE7,,TIM1_ETR,,USART5_RTS/USART5_DE/USART5_CK,,,,,,,,,,,,,
75+
PortE,PE8,USART4_TX,TIM1_CH1N,,,,,,,,,,,,,,,
76+
PortE,PE9,USART4_RX,TIM1_CH1,,,,,,,,,,,,,,,
77+
PortE,PE10,,TIM1_CH2N,,USART5_TX,,,,,,,,,,,,,
78+
PortE,PE11,,TIM1_CH2,,USART5_RX,,,,,,,,,,,,,
79+
PortE,PE12,SPI1_NSS/I2S1_WS,TIM1_CH3N,,,,,,,,,,,,,,,
80+
PortE,PE13,SPI1_SCK/I2S1_CK,TIM1_CH3,,,,,,,,,,,,,,,
81+
PortE,PE14,SPI1_MISO/I2S1_MCK,TIM1_CH4,TIM1_BK2,,,,,,,,,,,,,,
82+
PortE,PE15,SPI1_MOSI/I2S1_SD,TIM1_BK,,,,,,,,,,,,,,,
83+
PortF,PF0,CRS1_SYNC,EVENTOUT,TIM14_CH1,,,,,,,,,,,,,,
84+
PortF,PF1,OSC_EN,EVENTOUT,TIM15_CH1N,,,,,,,,,,,,,,
85+
PortF,PF2,MCO,LPUART2_TX,,LPUART2_RTS/LPUART2_DE,,,,,,,,,,,,,
86+
PortF,PF3,,LPUART2_RX,,USART6_RTS/USART6_DE/USART6_CK,,,,,,,,,,,,,
87+
PortF,PF4,,LPUART1_TX,,,,,,,,,,,,,,,
88+
PortF,PF5,,LPUART1_RX,,,,,,,,,,,,,,,
89+
PortF,PF6,,LPUART1_RTS/LPUART1_DE,,,,,,,,,,,,,,,
90+
PortF,PF7,,LPUART1_CTS,,USART5_CTS,,,,,,,,,,,,,
91+
PortF,PF8,,,,,,,,,,,,,,,,,
92+
PortF,PF9,,,,USART6_TX,,,,,,,,,,,,,
93+
PortF,PF10,,,,USART6_RX,,,,,,,,,,,,,
94+
PortF,PF11,,,,USART6_RTS/USART6_DE/USART6_CK,,,,,,,,,,,,,
95+
PortF,PF12,TIM15_CH1,,,USART6_CTS,,,,,,,,,,,,,
96+
PortF,PF13,TIM15_CH2,,,,,,,,,,,,,,,,

ports/stm32/boards/stm32g0b1xe.ld

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/* Specify the memory areas */
2+
MEMORY
3+
{
4+
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K
5+
FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 352K
6+
FLASH_FS (rx) : ORIGIN = 0x08058000, LENGTH = 160K /* starting @ 352K */
7+
}
8+
9+
/* Generate a link error if heap and stack don't fit into RAM */
10+
_minimum_heap_size = 0x200; /* required amount of heap */
11+
_minimum_stack_size = 0x400; /* required amount of stack */
12+
13+
_ram_start = ORIGIN(RAM);
14+
_ram_end = ORIGIN(RAM) + LENGTH(RAM);
15+
16+
_micropy_hw_internal_flash_storage_ram_cache_end = ORIGIN(RAM) + LENGTH(RAM);
17+
_micropy_hw_internal_flash_storage_ram_cache_start = _micropy_hw_internal_flash_storage_ram_cache_end - 2K; /* fs cache = 2K RAM */
18+
19+
/* Define the stack. The stack is full descending so begins just above last byte
20+
of RAM. Note that EABI requires the stack to be 8-byte aligned for a call. */
21+
_estack = _micropy_hw_internal_flash_storage_ram_cache_start - _estack_reserve;
22+
_sstack = _estack - 8K; /* tunable */
23+
24+
_heap_start = _ebss; /* heap starts just after statically allocated memory */
25+
_heap_end = _sstack;
26+
27+
_micropy_hw_internal_flash_storage_start = ORIGIN(FLASH_FS);
28+
_micropy_hw_internal_flash_storage_end = ORIGIN(FLASH_FS) + LENGTH(FLASH_FS);

0 commit comments

Comments
 (0)
0