[STM32] Failed to load file in Flash (Verify failed)
Hello,
I have CrossStudio 1.7 and 2.0 and I try to load a ELF file (built with CrossStudio). When it is built in "THUMB RAM Release" mode, everything is fine but when I try the "THUMB FLASH Release", the content of Flash differs while verification. I have tried to force "Erase All" before programing but there is the same problem. I have tried whit two different processor stm32f101T8 and stm32f103VC (of course, i have changed the processor type in the properties of the project).
I have tried with Segger J-Link and CrossConnect. Automatic speed and 40kHz. Same result.
The flash is not defect because I try to load binary file to STM32 with OpenOCD and it works (verify OK and program runs without any error).
Here is the output log :
Building “test_cw2-1” in configuration “THUMB Flash Release”
Compiling gpio.c
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -fmessage-length=0 -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/gpio.d" -MQ "THUMB Flash Release/gpio.o" -quiet -g1 -std=c99 -O1 -fno-dwarf2-cfi-asm -fno-builtin "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/gpio.c" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.g"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.g" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/gpio.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.g"
Compiling psyc.c
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -fmessage-length=0 -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/psyc.d" -MQ "THUMB Flash Release/psyc.o" -quiet -g1 -std=c99 -O1 -fno-dwarf2-cfi-asm -fno-builtin "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/psyc.c" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.h"
C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/psyc.c: In function 'main':
C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/psyc.c:45: warning: implicit declaration of function 'PWR_Init'
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.h" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/psyc.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.h"
Compiling rcc.c
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -fmessage-length=0 -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/rcc.d" -MQ "THUMB Flash Release/rcc.o" -quiet -g1 -std=c99 -O1 -fno-dwarf2-cfi-asm -fno-builtin "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/rcc.c" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.i"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.i" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/rcc.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.i"
Compiling pwr.c
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -fmessage-length=0 -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/pwr.d" -MQ "THUMB Flash Release/pwr.o" -quiet -g1 -std=c99 -O1 -fno-dwarf2-cfi-asm -fno-builtin "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/pwr.c" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.j"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.j" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/pwr.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.j"
Assembling thumb_crt0.s
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -E -P -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/thumb_crt0.d" -MQ "THUMB Flash Release/thumb_crt0.o" -quiet -lang-asm "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/source/thumb_crt0.s" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.k"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.k" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/thumb_crt0.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.k"
Assembling STM32_Startup.s
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/cc1" -E -P -mcpu=cortex-m3 -mthumb -mthumb-interwork -mlittle-endian -mfpu=vfp -mfloat-abi=soft -nostdinc "-isystemC:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/include" "-isystemC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/include" "-IC:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/include" -D__ARM_ARCH_7M__ -D__CROSSWORKS_ARM -D__CROSSWORKS_MAJOR_VERSION=2 -D__CROSSWORKS_MINOR_VERSION=0 -D__CROSSWORKS_REVISION=5 -D__TARGET_PROCESSOR=STM32F101T8 -DOSCILLATOR_CLOCK_FREQUENCY=16000000 -D__THUMB -D__FLASH_BUILD -DNDEBUG -MD "THUMB Flash Release/STM32_Startup.d" -MQ "THUMB Flash Release/STM32_Startup.o" -quiet -lang-asm "C:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/STM32_Startup.s" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.l"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/as" --traditional-format -mcpu=cortex-m3 -mthumb -mthumb-interwork -EL -mfpu=vfp -mfloat-abi=soft "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.l" -o "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/STM32_Startup.o"
rm "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/\s1ck.l"
Linking test_cw2-1.elf
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/ld" -X -ereset_handler --omagic --fatal-warnings -EL "-TC:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/test_cw2-1.ld" -Map "THUMB Flash Release/test_cw2-1.map" -u_vectors -o "THUMB Flash Release/test_cw2-1.elf" --start-group "THUMB Flash Release/gpio.o" "THUMB Flash Release/psyc.o" "THUMB Flash Release/rcc.o" "THUMB Flash Release/pwr.o" "THUMB Flash Release/thumb_crt0.o" "THUMB Flash Release/STM32_Startup.o" "C:/Documents and Settings/gaetan/Local Settings/Application Data/Rowley Associates Limited/CrossWorks for ARM/packages/targets/STM32/lib/libcmsis_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libdebugio_mempoll_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libm_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libc_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libcpp_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libdebugio_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libc_targetio_impl_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/lib_vfprintf_long_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/lib_vfscanf_long_v7m_t_le.a" "C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/lib/libc_user_libc_v7m_t_le.a"
"C:/Program Files/Rowley Associates Limited/CrossWorks for ARM 2.0/gcc/bin/objcopy" "THUMB Flash Release/test_cw2-1.elf" "C:/Documents and Settings/gaetan/Mes documents/CrossWorks Projects/THUMB Flash Release/test_cw2-1.bin" -Obinary
Build complete
Preparing target for download
Loading target script file STM32_Target.js
Executing reset script FLASHReset()
Downloading “Loader_rpc.elf” to Segger J-Link
Programming
Programming 2.2 KB of addresses 20000000 — 2000090b
Programming completed in 782 ms — 2,961 bytes/sec
Verifying “Loader_rpc.elf” on Segger J-Link
Verifying
Verifying 2.2 KB of addresses 20000000 — 2000090b
Verifying completed in 734 ms — 3,155 bytes/sec
Erasing “test_cw2-1.elf” to Segger J-Link
Erasing
Erasing 2.5 KB of addresses 08000000 — 08000a0f
Erasing completed in 516 ms — 4,992 bytes/sec
Downloading “test_cw2-1.elf” to Segger J-Link
Programming
Programming 2.5 KB of addresses 08000000 — 08000a0f
Programming completed in 1.1 s — 2,423 bytes/sec
Verifying “test_cw2-1.elf” on Segger J-Link
Verifying
Verifying 2.5 KB of addresses 08000000 — 08000a0f
Verifying completed in 235 ms — 10,961 bytes/sec
Verifying completed in 235 ms — 4 bytes/sec
Verify failed
Preparing target for user application
Loading target script file STM32_Target.js
Executing reset script FLASHReset()
Please sign in to leave a comment.
Comments
0 comments