Prototype RF driver for STM Sub-1 GHz RF expansion board based on the SPSGRF-868 module for STM32 Nucleo.
Prototype RF Driver for STM Sub-1 GHz RF Expansion Boards based on the SPSGRF-868 and SPSGRF-915 Modules for STM32 Nucleo
Currently supported boards:
Note, in order to use expansion board X-NUCLEO-IDS01A4
in mbed you need to perform the following HW modifications on the board:
- Unmount resistor
R4
- Mount resistor
R7
Furthermore, on some Nucleo development boards (e.g. the NUCLEO_F429ZI), in order to be able to use Ethernet together with these Sub-1 GHz RF expansion boards, you need to compile this driver with macro SPIRIT1_SPI_MOSI=PB_5
defined, while the development board typically requires some HW modification as e.g. described here!
This driver can be used together with the 6LoWPAN stack (a.k.a. Nanostack).
source/libs/Contiki_STM32_Library/stm32l-spirit1-config.h
- Committer:
- Wolfgang Betz
- Date:
- 2018-01-18
- Revision:
- 77:a9a9807bf3ed
- Parent:
- 67:93bec0baf1de
File content as of revision 77:a9a9807bf3ed:
/** ****************************************************************************** * @file stm32l-spirit1-config.h * @author MCD Application Team * @version V3.4.0 * @date 29-June-2012 * @brief Evaluation board specific configuration file. ****************************************************************************** * @attention * * <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2> * * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); * You may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.st.com/software_license_agreement_liberty_v2 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ****************************************************************************** */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef __STM32L_SPIRIT1_CONFIG_H #define __STM32L_SPIRIT1_CONFIG_H /* Includes ------------------------------------------------------------------*/ /* Exported types ------------------------------------------------------------*/ /* Exported constants --------------------------------------------------------*/ /* Define the STM32F10x hardware depending on the used evaluation board */ #ifdef USE_STM3210B_EVAL #define USB_DISCONNECT GPIOD #define USB_DISCONNECT_PIN GPIO_PIN_9 #define RCC_APB2Periph_GPIO_DISCONNECT RCC_APB2Periph_GPIOD #define EVAL_COM1_IRQHandler USART1_IRQHandler #elif defined (USE_STM3210E_EVAL) #define USB_DISCONNECT GPIOB #define USB_DISCONNECT_PIN GPIO_PIN_14 #define RCC_APB2Periph_GPIO_DISCONNECT RCC_APB2Periph_GPIOB #define EVAL_COM1_IRQHandler USART1_IRQHandler #elif defined (USE_STM3210C_EVAL) #define USB_DISCONNECT 0 #define USB_DISCONNECT_PIN 0 #define RCC_APB2Periph_GPIO_DISCONNECT 0 #define EVAL_COM1_IRQHandler USART2_IRQHandler #elif defined (USE_STM32L152_EVAL) || defined (USE_STM32L152D_EVAL) /* For STM32L15xx devices it is possible to use the internal USB pullup controlled by register SYSCFG_PMC (refer to RM0038 reference manual for more details). It is also possible to use external pullup (and disable the internal pullup) by setting the define USB_USE_EXTERNAL_PULLUP in file platform_config.h and configuring the right pin to be used for the external pull up configuration. To have more details on how to use an external pull up, please refer to STM3210E-EVAL evaluation board manuals. */ /* Uncomment the following define to use an external pull up instead of the integrated STM32L15xx internal pull up. In this case make sure to set up correctly the external required hardware and the GPIO defines below.*/ /* #define USB_USE_EXTERNAL_PULLUP */ #if !defined(USB_USE_EXTERNAL_PULLUP) #define STM32L15_USB_CONNECT SYSCFG_USBPuCmd(ENABLE) #define STM32L15_USB_DISCONNECT SYSCFG_USBPuCmd(DISABLE) #elif defined(USB_USE_EXTERNAL_PULLUP) /* PA0 is chosen just as illustrating example, you should modify the defines below according to your hardware configuration. */ #define USB_DISCONNECT GPIOA #define USB_DISCONNECT_PIN GPIO_PIN_0 #define RCC_AHBPeriph_GPIO_DISCONNECT RCC_AHBPeriph_GPIOA #define STM32L15_USB_CONNECT GPIO_ResetBits(USB_DISCONNECT, USB_DISCONNECT_PIN) #define STM32L15_USB_DISCONNECT GPIO_SetBits(USB_DISCONNECT, USB_DISCONNECT_PIN) #endif /* USB_USE_EXTERNAL_PULLUP */ #ifdef USE_STM32L152_EVAL #define EVAL_COM1_IRQHandler USART2_IRQHandler #elif defined (USE_STM32L152D_EVAL) #define EVAL_COM1_IRQHandler USART1_IRQHandler #endif /*USE_STM32L152_EVAL*/ #endif /* USE_STM3210B_EVAL */ /* Exported macro ------------------------------------------------------------*/ /* Exported functions ------------------------------------------------------- */ #endif /* __STM32L_SPIRIT1_CONFIG_H */ /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/