From 639f46363f27364ebd8749e8b7071b399f0b530f Mon Sep 17 00:00:00 2001 From: Willian Chan Date: Sat, 29 Jun 2019 18:39:21 +0800 Subject: [PATCH 1/4] [bsp][stm32][l475-atk-pandora]Add support for nRF24L01 extension module --- .../applications/nrf24l01_init.c | 23 ++++ bsp/stm32/stm32l475-atk-pandora/board/Kconfig | 105 +++++++++--------- 2 files changed, 74 insertions(+), 54 deletions(-) create mode 100644 bsp/stm32/stm32l475-atk-pandora/applications/nrf24l01_init.c diff --git a/bsp/stm32/stm32l475-atk-pandora/applications/nrf24l01_init.c b/bsp/stm32/stm32l475-atk-pandora/applications/nrf24l01_init.c new file mode 100644 index 0000000000..26b4d63b85 --- /dev/null +++ b/bsp/stm32/stm32l475-atk-pandora/applications/nrf24l01_init.c @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2006-2018, RT-Thread Development Team + * + * SPDX-License-Identifier: Apache-2.0 + * + * Change Logs: + * Date Author Notes + * 2019-06-29 WillianChan first version + */ + +#include + +#ifdef PKG_USING_NRF24L01 + +#include "drv_spi.h" +static int rt_hw_nrf24l01_init(void) +{ + rt_hw_spi_device_attach("spi2", "spi20", GPIOD, GPIO_PIN_5); + return RT_EOK; +} +INIT_COMPONENT_EXPORT(rt_hw_nrf24l01_init); + +#endif diff --git a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig index ff1f4b2827..546e953b04 100644 --- a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig +++ b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig @@ -29,24 +29,6 @@ menu "Onboard Peripheral Drivers" select RT_USING_DFS_ELMFAT default n - config BSP_USING_ICM20608 - bool "Enable icm20608 (i2c3)" - select BSP_USING_I2C - select BSP_USING_I2C3 - select PKG_USING_SENSORS_DRIVERS - select PKG_USING_MPU6XXX - select PKG_USING_MPU6XXX_LATEST_VERSION - default n - - config BSP_USING_AHT10 - bool "Enable aht10 (i2c4)" - select BSP_USING_I2C - select BSP_USING_I2C4 - select PKG_USING_SENSORS_DRIVERS - select PKG_USING_AHT10 - select PKG_USING_AHT10_LATEST_VERSION - default n - endmenu menu "On-chip Peripheral Drivers" @@ -130,42 +112,55 @@ menu "On-chip Peripheral Drivers" bool "Enable QSPI DMA support" default n - menuconfig BSP_USING_I2C - bool "Enable I2C BUS" + menuconfig BSP_USING_I2C1 + bool "Enable I2C1 BUS (software simulation)" default n select RT_USING_I2C select RT_USING_I2C_BITOPS select RT_USING_PIN - if BSP_USING_I2C - menuconfig BSP_USING_I2C3 - bool "Enable I2C3 BUS (software simulation)" - default y - if BSP_USING_I2C3 - comment "Notice: PC0 --> 32; PC1 --> 33" - config BSP_I2C3_SCL_PIN - int "i2c3 scl pin number" - range 1 176 - default 32 - config BSP_I2C3_SDA_PIN - int "I2C3 sda pin number" - range 1 176 - default 33 - endif + if BSP_USING_I2C1 + config BSP_I2C1_SCL_PIN + int "i2c1 scl pin number" + range 1 176 + default 15 + config BSP_I2C1_SDA_PIN + int "I2C1 sda pin number" + range 1 176 + default 16 + endif - menuconfig BSP_USING_I2C4 - bool "Enable I2C4 BUS (AHT10)" - default n - if BSP_USING_I2C4 - comment "Notice: PC1 --> 33; PD6 --> 54" - config BSP_I2C4_SCL_PIN - int "i2c4 scl pin number" - range 1 176 - default 54 - config BSP_I2C4_SDA_PIN - int "I2C4 sda pin number" - range 1 176 - default 33 - endif + menuconfig BSP_USING_I2C2 + bool "Enable I2C2 BUS (software simulation)" + default n + select RT_USING_I2C + select RT_USING_I2C_BITOPS + select RT_USING_PIN + if BSP_USING_I2C2 + config BSP_I2C2_SCL_PIN + int "i2c2 scl pin number" + range 1 176 + default 47 + config BSP_I2C2_SDA_PIN + int "I2C2 sda pin number" + range 1 176 + default 48 + endif + + menuconfig BSP_USING_I2C3 + bool "Enable I2C3 BUS (software simulation)" + default n + select RT_USING_I2CS + select RT_USING_I2C_BITOPS + select RT_USING_PIN + if BSP_USING_I2C3 + config BSP_I2C3_SCL_PIN + int "i2c3 scl pin number" + range 1 176 + default 92 + config BSP_I2C3_SDA_PIN + int "I2C3 sda pin number" + range 1 176 + default 93 endif menuconfig BSP_USING_TIM @@ -246,15 +241,17 @@ menu "On-chip Peripheral Drivers" select RT_USING_WDT default n - config BSP_USING_USBD_FS - bool "Enable OTGFS as USB device" - select RT_USING_USB_DEVICE - default n - endmenu menu "Board extended module Drivers" + config BSP_USING_NRF24L01 + bool "Enable NRF24L01" + select BSP_USING_SPI + select BSP_USING_SPI2 + select PKG_USING_NRF24L01 + default n + endmenu endmenu From c55f78807769567a0d60df3a4aa86df3291da54d Mon Sep 17 00:00:00 2001 From: Willian Chan Date: Sat, 29 Jun 2019 18:45:01 +0800 Subject: [PATCH 2/4] [bsp][stm32][l475-atk-pandora]Modify README.md Signed-off-by: Willian Chan --- bsp/stm32/stm32l475-atk-pandora/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bsp/stm32/stm32l475-atk-pandora/README.md b/bsp/stm32/stm32l475-atk-pandora/README.md index 20d099a3f0..10b299dd06 100644 --- a/bsp/stm32/stm32l475-atk-pandora/README.md +++ b/bsp/stm32/stm32l475-atk-pandora/README.md @@ -71,9 +71,9 @@ | USB Device | 暂不支持 | 即将支持 | | USB Host | 暂不支持 | 即将支持 | | **扩展模块** | **支持情况** | **备注** | +| NRF24L01 模块 | 支持 | 根据实际板子接线情况修改 NRF24L01 软件包中的 `NRF24L01_CE_PIN` 和 `NRF24_IRQ_PIN` 的宏定义,以及 SPI 设备名 | | ATK-ESP8266 模块 | 暂不支持 | 即将支持 | | enc28j60 模块 | 暂不支持 | 即将支持 | - 使用该开发板的更多高级功能请参考 RT-Thread 代码仓库: [RT-Thread IoT-Board SDK](https://github.com/RT-Thread/IoT_Board)。 ## 使用说明 From 96468b5d0ebd06891cef80c12e9b184e23df1b1d Mon Sep 17 00:00:00 2001 From: Willian Chan Date: Sun, 30 Jun 2019 10:09:50 +0800 Subject: [PATCH 3/4] Revert Kconfig Signed-off-by: Willian Chan --- bsp/stm32/stm32l475-atk-pandora/board/Kconfig | 100 ++++++++++-------- 1 file changed, 55 insertions(+), 45 deletions(-) diff --git a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig index 546e953b04..0210e33468 100644 --- a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig +++ b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig @@ -29,6 +29,24 @@ menu "Onboard Peripheral Drivers" select RT_USING_DFS_ELMFAT default n + config BSP_USING_ICM20608 + bool "Enable icm20608 (i2c3)" + select BSP_USING_I2C + select BSP_USING_I2C3 + select PKG_USING_SENSORS_DRIVERS + select PKG_USING_MPU6XXX + select PKG_USING_MPU6XXX_LATEST_VERSION + default n + + config BSP_USING_AHT10 + bool "Enable aht10 (i2c4)" + select BSP_USING_I2C + select BSP_USING_I2C4 + select PKG_USING_SENSORS_DRIVERS + select PKG_USING_AHT10 + select PKG_USING_AHT10_LATEST_VERSION + default n + endmenu menu "On-chip Peripheral Drivers" @@ -112,55 +130,42 @@ menu "On-chip Peripheral Drivers" bool "Enable QSPI DMA support" default n - menuconfig BSP_USING_I2C1 - bool "Enable I2C1 BUS (software simulation)" + menuconfig BSP_USING_I2C + bool "Enable I2C BUS" default n select RT_USING_I2C select RT_USING_I2C_BITOPS select RT_USING_PIN - if BSP_USING_I2C1 - config BSP_I2C1_SCL_PIN - int "i2c1 scl pin number" - range 1 176 - default 15 - config BSP_I2C1_SDA_PIN - int "I2C1 sda pin number" - range 1 176 - default 16 - endif + if BSP_USING_I2C + menuconfig BSP_USING_I2C3 + bool "Enable I2C3 BUS (software simulation)" + default y + if BSP_USING_I2C3 + comment "Notice: PC0 --> 32; PC1 --> 33" + config BSP_I2C3_SCL_PIN + int "i2c3 scl pin number" + range 1 176 + default 32 + config BSP_I2C3_SDA_PIN + int "I2C3 sda pin number" + range 1 176 + default 33 + endif - menuconfig BSP_USING_I2C2 - bool "Enable I2C2 BUS (software simulation)" - default n - select RT_USING_I2C - select RT_USING_I2C_BITOPS - select RT_USING_PIN - if BSP_USING_I2C2 - config BSP_I2C2_SCL_PIN - int "i2c2 scl pin number" - range 1 176 - default 47 - config BSP_I2C2_SDA_PIN - int "I2C2 sda pin number" - range 1 176 - default 48 - endif - - menuconfig BSP_USING_I2C3 - bool "Enable I2C3 BUS (software simulation)" - default n - select RT_USING_I2CS - select RT_USING_I2C_BITOPS - select RT_USING_PIN - if BSP_USING_I2C3 - config BSP_I2C3_SCL_PIN - int "i2c3 scl pin number" - range 1 176 - default 92 - config BSP_I2C3_SDA_PIN - int "I2C3 sda pin number" - range 1 176 - default 93 + menuconfig BSP_USING_I2C4 + bool "Enable I2C4 BUS (AHT10)" + default n + if BSP_USING_I2C4 + comment "Notice: PC1 --> 33; PD6 --> 54" + config BSP_I2C4_SCL_PIN + int "i2c4 scl pin number" + range 1 176 + default 54 + config BSP_I2C4_SDA_PIN + int "I2C4 sda pin number" + range 1 176 + default 33 + endif endif menuconfig BSP_USING_TIM @@ -241,6 +246,11 @@ menu "On-chip Peripheral Drivers" select RT_USING_WDT default n + config BSP_USING_USBD_FS + bool "Enable OTGFS as USB device" + select RT_USING_USB_DEVICE + default n + endmenu menu "Board extended module Drivers" @@ -254,4 +264,4 @@ menu "Board extended module Drivers" endmenu -endmenu +endmenu \ No newline at end of file From 0f849fa0ba9bdfa9cee79624ec99c18b33a6e0fd Mon Sep 17 00:00:00 2001 From: Willian Chan Date: Sun, 30 Jun 2019 10:14:39 +0800 Subject: [PATCH 4/4] Fix Kconfig Signed-off-by: Willian Chan --- bsp/stm32/stm32l475-atk-pandora/board/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig index 0210e33468..a09e96da0a 100644 --- a/bsp/stm32/stm32l475-atk-pandora/board/Kconfig +++ b/bsp/stm32/stm32l475-atk-pandora/board/Kconfig @@ -264,4 +264,4 @@ menu "Board extended module Drivers" endmenu -endmenu \ No newline at end of file +endmenu