2017-05-05 12:42 PM
Hi my name is Alptigin SAKI,
I have a question about STM32L496G-Discovery Demonstration Example in IAR. I am using IAR v8.11 when I opened the project and click rebuild all I found couples error about 'core_cmFunc.h' not found. I opened same example with Keil there is no problem I find the library and add to IAR. I think you can check and maybe ugrade new version of STM32Cube_FW_L4_1.7.xx . Now I am asking my question, when I rebuild all and debug the code I got 3 warnings and 1 error.
Warnings:
1-)Fri May 05, 2017 22:26:42: Flash download warning: 1233776 out of 1233776 bytes from data record CODE:[0x90000000,0x9012D36F] will not be flashed
2-)Fri May 05, 2017 22:26:42: Flash download warning: 3112924 out of 3112924 bytes from data record CODE:[0x90140000,0x90437FDB] will not be flashed
3-)Fri May 05, 2017 22:26:42: Flash download warning: 3462180 out of 3462180 bytes from data record CODE:[0x9049A000,0x907E7423] will not be flashed
Error:
Fri May 05, 2017 22:26:42: There were warnings while generating flash loader input.
Can you tell me why I got these errors??
Thanks..
A.SAKI
2017-05-05 01:02 PM
Hi and thank you for highlighting this issue. It comes from the fact newest IAR includes CMSIS 2.0 which doesn't use this file anymore. Other toolchains like Keil still contain older CMSIS and this file is included.
We are updating progressively the HAL packages to get rid of this file and the issue is known and being solved.
2017-05-06 02:20 AM
Hi thank you for reply. Is it relevant to flash downloading? My question is why I got these errors when I start to debug and download it?
Thanks...
2017-05-06 04:32 AM
My mistake, I was reacting on core_cmFunc.h issue.
The warning/error source is simple - looking at address range, 0x9xxxxxxx doesn't belong to FLASH region, but QSPI, and IAR doesn't have drivers for updating QSPI natively.
The only possibility right now is to flash the demo using ST-Link Utility, adding the external flashloader for the QSPI (MX25R6435F_STM32L496G-DISCO.stldr).
I have requested adding these drivers in IAR in tools team.
2017-05-07 02:21 PM
Hi Edison,
I am going to try it tomorrow. Thanks. I realized something new. When I rebuild all the project. There is a warning which is;
Warning[Lt009]: Inconsistent wchar_t size
BUTTON.o(STemWin532_CM4_OS_IAR_ot.a) and 323 other objects have wchar_t size 16 bits analog_clock_win.o and 135 other objects have wchar_t size 32 bitsCan you tell me which is why? and is it affect our code?
2017-05-09 07:10 AM
May be that different objects and libraries were compiled with different wchar_t type sizes set (which is what the linker complains about). This normally is rather harmless and without syncing the library versions on ST side you can't do anything about that.
Test it and if you see any issues, post it on Online Support with package and library versions in use.
2017-06-05 01:11 AM
Hi Edison,
Thank you for your reply. I need help about these examples in the STMCube folder. These examples haven't got any STM32CubeMX file(.ioc). at least can you share this demonstration example's ioc file...
Thanks
A.SAKI
2017-06-05 05:20 AM
They weren't created using an .ioc file.
2017-06-05 07:01 AM
Hi
SAKI.Alptigin
,The .ioc files
are not available
in the
STM32Cube examples
.
This feature is already requested and reportedinternally as an enhancement.
Thanks
Imen
2017-12-06 01:18 AM
Hi,
I face same problem recently, and below are my solution for your reference. hope you get some direction.
it's mainly because of your .icf file. you can check whether your flash location definition is suitable for your device or not
Originally, my .icf flash location definition is like this.
define symbol __ICFEDIT_region_ROM_start__ = 0;
define symbol __ICFEDIT_region_ROM_end__ = (128*1024) - 1; //********define symbol __ICFEDIT_region_RAM_end__ = 0x1FFFFFFF;define symbol __ICFEDIT_region_RAM_start__ = 0x1FFFF000 + 0x410;define symbol __region_EEPROM_start__ = 0x10003100;define symbol __region_EEPROM_end__ = __region_EEPROM_start__ -1 + 256; // 256 byteswith this definition i got warning and errors like
Flash download warning: 166 out of 166 bytes from data record CODE:[0x10003100,0x100031A5] will not be flashed
this situation is caused by overlapping of memory region definition
i did this to correct,
//define symbol __region_EEPROM_start__ = 0x10003100;
//define symbol __region_EEPROM_end__ = __region_EEPROM_start__ -1 + 256; // 256 bytesafter that, everything is OK.
Sometimes designer change .icf to implement some EEPROM feature. that's why.
BR,
HumbleKyle