- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am working on 43xxx_Wi-Fi project (WICED studio 6.1 installed in my PC)
I have a small doubt.
STM32F4xx Standard Peripherals Library Drivers in 43xxx_Wi-Fi project is of version V1.7.0 / 22-April-2016
I generated new sample project in IAR embedded workspace using stm32cube for STM32F412RGYx controller.
I was expecting library drivers should be same but pratically this is not the case.
I compared stm32f412rx.h from IAR project with stm32f4xx.h from WICED project.
Let me tell one example.
In WICED project one of the structures declaration is as follows.
typedef struct
{
__IO uint32_t MODER; /*!< GPIO port mode register, Address offset: 0x00 */
__IO uint32_t OTYPER; /*!< GPIO port output type register, Address offset: 0x04 */
__IO uint32_t OSPEEDR; /*!< GPIO port output speed register, Address offset: 0x08 */
__IO uint32_t PUPDR; /*!< GPIO port pull-up/pull-down register, Address offset: 0x0C */
__IO uint32_t IDR; /*!< GPIO port input data register, Address offset: 0x10 */
__IO uint32_t ODR; /*!< GPIO port output data register, Address offset: 0x14 */
__IO uint16_t BSRRL; /*!< GPIO port bit set/reset low register, Address offset: 0x18 */
__IO uint16_t BSRRH; /*!< GPIO port bit set/reset high register, Address offset: 0x1A */
__IO uint32_t LCKR; /*!< GPIO port configuration lock register, Address offset: 0x1C */
__IO uint32_t AFR[2]; /*!< GPIO alternate function registers, Address offset: 0x20-0x24 */
} GPIO_TypeDef;
In IAR project the same structure declartaion is as follows.
typedef struct
{
__IO uint32_t MODER; /*!< GPIO port mode register, Address offset: 0x00 */
__IO uint32_t OTYPER; /*!< GPIO port output type register, Address offset: 0x04 */
__IO uint32_t OSPEEDR; /*!< GPIO port output speed register, Address offset: 0x08 */
__IO uint32_t PUPDR; /*!< GPIO port pull-up/pull-down register, Address offset: 0x0C */
__IO uint32_t IDR; /*!< GPIO port input data register, Address offset: 0x10 */
__IO uint32_t ODR; /*!< GPIO port output data register, Address offset: 0x14 */
__IO uint32_t BSRR; /*!< GPIO port bit set/reset register, Address offset: 0x18 */
__IO uint32_t LCKR; /*!< GPIO port configuration lock register, Address offset: 0x1C */
__IO uint32_t AFR[2]; /*!< GPIO alternate function registers, Address offset: 0x20-0x24 */
} GPIO_TypeDef;
You can observe the change clearly.
And many more variables datatypes are not matching.
Which one i have to prefer (WICED drivers or IAR drivers)i would like to know?
Solved! Go to Solution.
- Labels:
-
GPIO
-
WICED Studio
-
Wifi+Bluetooth
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You have to refer to the WICED drivers which is originally sourced in 2016 as you have correctly pointed out. If you try to change to the driver generated from Cube, compilation won't pass since WICED SDK uses those src files in the top level APIs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You have to refer to the WICED drivers which is originally sourced in 2016 as you have correctly pointed out. If you try to change to the driver generated from Cube, compilation won't pass since WICED SDK uses those src files in the top level APIs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your reply.
I understand that WICED drivers to be used as is with no modification.
But i am facing some problem while porting source code written in IAR embedded workbench to WICED studio.
Let me elaborate my question by taking an example.
In IAR code member variable BSRR of structure GPIO_TypeDef is used. (something like this pio_ctrl->reg_ctrl->BSRR = static_cast<uint32_t>(1<< pio_ctrl->pio_num))
In WICED studio project member variable BSRR is not present in structure GPIO_TypeDef.
This causes compilation errors.
What is the best way to handle this problem as WICED drivers are not recommended to change?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Currently in WICED Studio, there is no straightforward way to do this, We are working on this feature addition internally which will be made available through our next generation Modus Toolbox IDE
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Raktim Roy wrote:
We are working on this feature addition internally which will be made available through our next generation Modus Toolbox IDE
When will the "next generation Modus Toolbox IDE" be available?