[ 사용 환경 ]

IAR compiler 8.50.1

디버거 : I-Jet

MCU : ADuCM355

 

[ 이슈 ]

Interrupt Vector Table 위치를 옮기는 icf 파일 변경하는 구현 중 이상이 생겼었습니다. Compile 은 잘되는데, flash download 시  "The flash loader program reported an error" 팝업이 뜨면서 writing 이 안되는 문제. 

 

[ 결론 ]

Option -> Debugger -> Download -> "Use Flash loader(s)" 비활성화 (Uncheck) 

 

이후 download 잘되고, Download된 이후에 다시 Use Flash loader 를 체크해도 재 다운로드 잘됩니다. 

 

정확한 이유는 모르겠는데, Interrupt Vector Table 위치를 옮기는 icf 파일 변경하는 구현 중 이상이 생겼었습니다. 

 

구글링등으로 보아 J-Link 사용시 가끔씩 internal flash 설정이 잘못되면 뜨는것으로 예상됩니다.

<Uncheck "Use flash loader(s) >

 

[ Reference ]

https://ez.analog.com/analog-microcontrollers/ultra-low-power-microcontrollers/f/q-a/19447/error-the-flash-loader-program-reported-an-error

 

Error "The flash loader program reported an error" - Q&A - Ultra Low Power Microcontrollers - EngineerZone

 

ez.analog.com

 

[ 사용 환경 ]

IAR compiler 8.50.1

디버거 : I-Jet

MCU : ADuCM355

 

 

아래 Project option -> Debugger -> Download -> Verify downlaod 옵션 on 합니다.

 

 

 

 

Compile 잘되지만 Writing 시에 아래와 같이 에러와 워닝이 생깁니다.

 

 

디버그 로그는 아래와 같이 메모리를 잘못설정한것으로 나옵니다.

 

하지만 이게 Analog device 사에서 제공한 기본 프로젝트 입니다. 그래도 도움을 받아 .icf 파일을 수정하였습니다.

Warning 하나는 없어졌지만 빨간색 error 그대로 남아 있습니다.

물론 Option 에서 Verifiy download uncheck 하면 오류는 사라집니다. 다만, 브레이크 포인트를 제대로 사용할 수가 없습니다.

 

IAR 사에 문의하니 IDE 프로브의 버전이 맞지 않는 경우에도 위의 에러가 생길수도 있다고 답변을 받았습니다.

또한 에러가 나는 번지인 0x0000001 확인하라고 하였습니다.

 

우연히 Analog device 사의 데모 보드를 사용하면서 프로브(디버거) I-Jet 에서 J-Link 변경하였습니다.

위의 에러와 워닝이 모두 사라졌습니다. 브레이크 포인트도 사라졌습니다.

 

제가 사용한 환경에서는 J-Link 사용을 추천드립니다.

+ Recent posts