Skip to content

Commit c061bb0

Browse files
raiden00plAlan C. Assis
authored andcommitted
boards/arm: add nucleo-c071rb support
add nucleo-c071rb support Signed-off-by: raiden00pl <raiden00@railab.me>
1 parent 57d1dee commit c061bb0

20 files changed

Lines changed: 1479 additions & 1 deletion

File tree

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
================
2+
ST Nucleo C071RB
3+
================
4+
5+
The Nucleo C071RB is a member of the Nucleo-64 board family.
6+
7+
Buttons
8+
=======
9+
10+
B1 USER: the user button is connected to the I/O PC13 of the STM32
11+
microcontroller.
12+
13+
Serial Console
14+
==============
15+
16+
At default USART2 connected to "Virtual COM Port" is used as serial console.
17+
18+
Configurations
19+
==============
20+
21+
jumbo
22+
-----
23+
24+
This configuration enables many Apache NuttX features. This is
25+
mostly to help provide additional code coverage in CI, but also
26+
allows for a users to see a wide range of features that are
27+
supported by the OS.
28+
29+
Enabled features:
30+
31+
- NSH
32+
33+
- ADC with DMA enabled using A0 and A1 pins
34+
35+
- button with software debouncing enabled (no RC filter on the board)
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
==========
2+
ST STM32C0
3+
==========
4+
5+
Supported MCUs
6+
==============
7+
8+
========= ======= =======================
9+
MCU Support Note
10+
========= ======= =======================
11+
STM32C051 Yes
12+
STM32C071 Yes USB not supported yet
13+
STM32C091 Yes
14+
STM32C092 Yes FDCAN not supported yet
15+
========= ======= =======================
16+
17+
Peripheral Support
18+
==================
19+
20+
The following list indicates peripherals supported in NuttX:
21+
22+
========== ======= =====
23+
Peripheral Support Notes
24+
========== ======= =====
25+
FLASH No
26+
PM No
27+
RCC Yes
28+
CSR No
29+
GPIO Yes
30+
SYSCFG No
31+
DMA Yes
32+
DMAMUX Yes
33+
EXTI Yes
34+
CRC No
35+
ADC Yes
36+
TIM Yes
37+
IRTIM No
38+
IWDG No
39+
WWDG No
40+
I2C Yes
41+
USART Yes
42+
SPI Yes
43+
FDCAN No
44+
USB No
45+
========== ======= =====
46+
47+
Supported Boards
48+
================
49+
50+
.. toctree::
51+
:glob:
52+
:maxdepth: 1
53+
54+
boards/*/*

‎Documentation/platforms/arm/stm32g0/index.rst‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ SYSCFG Yes
2929
DMA Yes
3030
DMAMUX Yes
3131
EXTI Yes
32-
CRC Yes
32+
CRC No
3333
ADC Yes
3434
DAC No
3535
VREFBUF ?

‎boards/Kconfig‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2677,6 +2677,15 @@ config ARCH_BOARD_STM32F072_DISCOVERY
26772677
---help---
26782678
STMicro STM32F072-Discovery board based on the STMicro STM32F072RB MCU.
26792679

2680+
config ARCH_BOARD_NUCLEO_C071RB
2681+
bool "STMicro Nucleo C071RB board"
2682+
depends on ARCH_CHIP_STM32C071RB
2683+
select ARCH_HAVE_LEDS
2684+
select ARCH_HAVE_BUTTONS
2685+
select ARCH_HAVE_IRQBUTTONS
2686+
---help---
2687+
STMicro NUCLEO C071RB board based on the STMicro STM32C071RB MCU.
2688+
26802689
config ARCH_BOARD_STM32F3_DISCOVERY
26812690
bool "STMicro STM32F3-Discovery board"
26822691
depends on ARCH_CHIP_STM32F303VC
@@ -3630,6 +3639,7 @@ config ARCH_BOARD
36303639
default "stm32l0538-disco" if ARCH_BOARD_STM32L0538_DISCO
36313640
default "stm32f051-discovery" if ARCH_BOARD_STM32F051_DISCOVERY
36323641
default "stm32f072-discovery" if ARCH_BOARD_STM32F072_DISCOVERY
3642+
default "nucleo-c071rb" if ARCH_BOARD_NUCLEO_C071RB
36333643
default "stm32f103-minimum" if ARCH_BOARD_STM32F103_MINIMUM
36343644
default "stm32f411-minimum" if ARCH_BOARD_STM32F411_MINIMUM
36353645
default "stm3210e-eval" if ARCH_BOARD_STM3210E_EVAL
@@ -4180,6 +4190,9 @@ endif
41804190
if ARCH_BOARD_STM32F072_DISCOVERY
41814191
source "boards/arm/stm32f0l0g0/stm32f072-discovery/Kconfig"
41824192
endif
4193+
if ARCH_BOARD_NUCLEO_C071RB
4194+
source "boards/arm/stm32f0l0g0/nucleo-c071rb/Kconfig"
4195+
endif
41834196
if ARCH_BOARD_NUCLEO_F722ZE
41844197
source "boards/arm/stm32f7/nucleo-f722ze/Kconfig"
41854198
endif
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# ##############################################################################
2+
# boards/arm/stm32f0l0g0/nucleo-c071rb/CMakeLists.txt
3+
#
4+
# SPDX-License-Identifier: Apache-2.0
5+
#
6+
# Licensed to the Apache Software Foundation (ASF) under one or more contributor
7+
# license agreements. See the NOTICE file distributed with this work for
8+
# additional information regarding copyright ownership. The ASF licenses this
9+
# file to you under the Apache License, Version 2.0 (the "License"); you may not
10+
# use this file except in compliance with the License. You may obtain a copy of
11+
# the License at
12+
#
13+
# http://www.apache.org/licenses/LICENSE-2.0
14+
#
15+
# Unless required by applicable law or agreed to in writing, software
16+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18+
# License for the specific language governing permissions and limitations under
19+
# the License.
20+
#
21+
# ##############################################################################
22+
23+
add_subdirectory(src)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#
2+
# For a description of the syntax of this configuration file,
3+
# see the file kconfig-language.txt in the NuttX tools repository.
4+
#
5+
6+
if ARCH_BOARD_NUCLEO_C071RB
7+
8+
endif
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
#
2+
# This file is autogenerated: PLEASE DO NOT EDIT IT.
3+
#
4+
# You can use "make menuconfig" to make any modifications to the installed .config file.
5+
# You can then do "make savedefconfig" to generate a new defconfig file that includes your
6+
# modifications.
7+
#
8+
# CONFIG_LIBC_LONG_LONG is not set
9+
# CONFIG_NSH_ARGCAT is not set
10+
# CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP is not set
11+
CONFIG_ADC=y
12+
CONFIG_ANALOG=y
13+
CONFIG_ARCH="arm"
14+
CONFIG_ARCH_BOARD="nucleo-c071rb"
15+
CONFIG_ARCH_BOARD_NUCLEO_C071RB=y
16+
CONFIG_ARCH_BUTTONS=y
17+
CONFIG_ARCH_CHIP="stm32f0l0g0"
18+
CONFIG_ARCH_CHIP_STM32C071RB=y
19+
CONFIG_ARCH_CHIP_STM32C071XX=y
20+
CONFIG_ARCH_CHIP_STM32C0=y
21+
CONFIG_ARCH_IRQBUTTONS=y
22+
CONFIG_ARCH_STACKDUMP=y
23+
CONFIG_BOARDCTL=y
24+
CONFIG_BOARD_LATE_INITIALIZE=y
25+
CONFIG_BOARD_LOOPSPERMSEC=3997
26+
CONFIG_BUILTIN=y
27+
CONFIG_DEBUG_FEATURES=y
28+
CONFIG_DEBUG_FULLOPT=y
29+
CONFIG_DEBUG_SYMBOLS=y
30+
CONFIG_DEV_GPIO=y
31+
CONFIG_DISABLE_ENVIRON=y
32+
CONFIG_DISABLE_MOUNTPOINT=y
33+
CONFIG_DISABLE_MQUEUE=y
34+
CONFIG_DISABLE_POSIX_TIMERS=y
35+
CONFIG_DISABLE_PSEUDOFS_OPERATIONS=y
36+
CONFIG_EXAMPLES_ADC=y
37+
CONFIG_EXAMPLES_ADC_GROUPSIZE=2
38+
CONFIG_EXAMPLES_ADC_SWTRIG=y
39+
CONFIG_EXAMPLES_BUTTONS=y
40+
CONFIG_EXAMPLES_HELLO=y
41+
CONFIG_INIT_ENTRYPOINT="nsh_main"
42+
CONFIG_INIT_STACKSIZE=1536
43+
CONFIG_INPUT=y
44+
CONFIG_INPUT_BUTTONS=y
45+
CONFIG_INPUT_BUTTONS_DEBOUNCE_DELAY=10
46+
CONFIG_INPUT_BUTTONS_LOWER=y
47+
CONFIG_INTELHEX_BINARY=y
48+
CONFIG_LINE_MAX=64
49+
CONFIG_NFILE_DESCRIPTORS_PER_BLOCK=6
50+
CONFIG_NSH_BUILTIN_APPS=y
51+
CONFIG_NSH_FILEIOSIZE=64
52+
CONFIG_NSH_READLINE=y
53+
CONFIG_NUNGET_CHARS=0
54+
CONFIG_POSIX_SPAWN_DEFAULT_STACKSIZE=1536
55+
CONFIG_PTHREAD_MUTEX_UNSAFE=y
56+
CONFIG_PTHREAD_STACK_DEFAULT=1536
57+
CONFIG_RAM_SIZE=24576
58+
CONFIG_RAM_START=0x20000000
59+
CONFIG_RAW_BINARY=y
60+
CONFIG_RR_INTERVAL=200
61+
CONFIG_SCHED_WAITPID=y
62+
CONFIG_START_DAY=19
63+
CONFIG_START_MONTH=5
64+
CONFIG_START_YEAR=2013
65+
CONFIG_STDIO_DISABLE_BUFFERING=y
66+
CONFIG_STM32F0L0G0_ADC1=y
67+
CONFIG_STM32F0L0G0_DMA1=y
68+
CONFIG_STM32F0L0G0_USART2=y
69+
CONFIG_SYSTEM_NSH=y
70+
CONFIG_TASK_NAME_SIZE=0
71+
CONFIG_USART2_SERIAL_CONSOLE=y

0 commit comments

Comments
 (0)