Região STM32 'FLASH' transbordada por xxx bytes problema resolvido

STM32 Região `FLASH 'transbordada por xxx bytes problema resolvido

1. Fenômeno do problema

Para o projeto STM32L031 criado com STM32CUBEIDE, quando HAL_UART_Receive_IT (& huart2, (uint8_t *) & aRxBuffer, 1); está habilitado, mesmo se a recepção da porta serial 2 for interrompida, um erro Região FLASH transbordada por bytes xxx é relatado ao construir o projeto.
Insira a descrição da imagem aquiInsira a descrição da imagem aqui

2. Solução incorreta

Existe uma maneira de introduzir na Internet, modificar o arquivo de script compilado no diretório do projeto, abrir o arquivo ld e
Insira a descrição da imagem aqui
modificar o valor FLASH (rx) para um valor maior, como 36K
Insira a descrição da imagem aqui
após a modificação, a compilação pode ser baixada no chip com sucesso, mas o programa não pode ser executado . O STM32L031 possui apenas 32K de espaço Flash e aumentar artificialmente o tamanho do espaço reconhecido pelo software não resolve o problema.

3. A solução correta

Como o método de polling não interrompido (polling) é usado para receber os dados da porta serial com sucesso, o julgamento básico é que o código gerado pela otimização do método de interrupção uart é muito grande. Portanto, pode ser ajustado para otimização da compilação.

Nas propriedades do projeto de STM32CUBEIDE, encontre a opção Otimização
Insira a descrição da imagem aqui
para otimizar a depuração e liberar a compilação, selecione Otimizar para tamanho
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
ou todos os tipos usam Otimizar para tamanho
Insira a descrição da imagem aqui
Aplicar e sair. Digite um espaço no código, salve e reconstrua o projeto, e a compilação e a vinculação serão bem-sucedidas. Após o download para o chip, a operação de recebimento de interrupção da porta serial é normal.

Depois que a ST atualizou a versão STM32CUBEIDE, o menu de controle passou a ser o seguinte, basta usar a inferência:
Insira a descrição da imagem aqui
-Fim-

Acho que você gosta

Origin blog.csdn.net/hwytree/article/details/103125176
Recomendado
Clasificación