Skip to main content
elmzaiti youssef
Associate III
June 2, 2017
Question

Migrate from STMF4 to STM32F7 (configuration of memory mapping and bootloader)

  • June 2, 2017
  • 2 replies
  • 1562 views
Posted on June 02, 2017 at 09:41

Hello ,

  I'm a trainee and my project is to migrate from stmf4xx to stm32f7xx , so i was compile the all project using stmf7xx library  on keil uvison 5 ,and fix all error due to incompatibility of these two microcontroller , and fix error of bitbanding because a stm32f7xx don't support a bitbanding instructions , now we should modify a memory mapping and bootloader , please help , i don't now how i can do it . 

Regards 

Youssef

#migrate-from-stmf4-to-stm32f7(configuration-bootloader) #migrate-from-stmf4-to-stm32f7 #migrate-from-stmf4-to-stm32f7-(configuration-of-memory)
This topic has been closed for replies.

2 replies

Technical Moderator
June 5, 2017
Posted on June 06, 2017 at 00:06

Hi

youssef.elmzaiti

,

Please refer to the following documents that can help you on your project migration:

Imen

In order to give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question. Thanks
elmzaiti youssef
Associate III
June 7, 2017
Posted on June 07, 2017 at 08:57

Hello Imen , 

 We want to migrate our application to STM32F7xx ,the problem is we use a bitbanding to read / write the registre like GPIO ... in STMF4xx ,so in STM32F7xx there isn't a region of bitband ,so could you please suggest a solution with exemple , tutorial ...

  

Technical Moderator
June 7, 2017
Posted on June 07, 2017 at 11:37

Hi

youssef.elmzaiti

,

Your description here of the problem is not clear.

We need more details about what do you expect exactly as result.

What is the issue that you have and the problem you are facing

with

memory mapping.

You mayhave a look to these application notes that can help you:

Regards

Imen

In order to give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question. Thanks
Eduardo Alvarez
Visitor II
May 19, 2018
Posted on May 19, 2018 at 15:02

Hi @elmzairi youssef,

I have one solution for you problem, you can use bit level structs. I dont know if ir is the best solution (effectiviness) but is manage like bit banding on code.

example of bit banding :

#define GPIOA_OD0 (*((__IO uint32_t*)(BITBANDING_BASE+(GPIO_BASE_OFFSET*32)+(BIT_NUMBER*4))))

�?�? In code �?�?

GPIOA_OD0=1;

example with struct :

typedef struct

{

__IO GPIO_MODER_Typedef MODER;

....

....

__IO GPIO_IDR_Typedef         IDR;

__IO GPIO_ODR_Typedef       ODR;

....

.....

}GPIO_Bits_Typedef;

typedef struct

{

__IO uint32_t OD0: 1;

__IO uint32_t OD1: 1;

__IO uint32_t OD2: 1;

...

...

...

...

__IO uint32_t OD15:1;

}GPIO_ODR_Typedef

#define GPIOA_Bits ((GPIO_Bits_Typedef*)GPIO_BASE))

�?�?- In code �?�?-

GPIOA_Bits->ODR.OD0=1