본문 바로가기
임베디드.일렉트로닉스

KEIL. 문제해결. J-link 버전 낮아서 MCU 지원 못하고 다운로드 오류생기고...

by i.got.it 2019. 10. 2.

 

J-Link 문제증상 1

KEIL MDK 에서 J-Link 이용 하여 디버깅 혹은 프로그램 기록하려고 하는데 J-link 버전이 낮아 해당기기 지원하지 못한다는 메시지 나오는 경우 있다. 아래 화면 처럼 경고창 뜬다. 

 

위 경고창에서 OK 누른 경우 아래 동영상 처럼 타겟 MCU nRF52840 지원하지 못하고 있음을 알 수 있다. 

 

문제증상 해결위한 요점 : 위 동영상을 보면 KEIL 에서 실행된 J-link 관련 프로그램이 버전 v5.12e 이고 이 버전의 프로그램에서는 nRF52840 을 지원하지 않음이 문제 요점이다. 한편, 이미 J-link 버전 6.40 (MCU nRF52840 지원하는 버전임) 이 설치되어있는 상태에서 위와 같이 J-link 과거 버전이 보이면서 오류 상황이 벌어지고 있다.  

 

난해한점 : 통상 J-link 를 설치하면 기본 Program FIles/SEGGER/JLink_V640 식으로 된 곳에 설치된다. 한편,  KEIL MDK-ARM 에서 실행되고 있는 Jlink 관련 프로그램이 있는 위치는 Keil설치폴더 하위에  ARM/Segger/ 이며, 이 속에 있는 J-link ( 정확하게는 JLinkARM.dll ) 가 최신버전이 있어야 해결된다.  

 

 

해결책 - 문제증상1

- 상기 난해한 문제는 간단히 해결된다. J-Link 설치하는 과정중에 사용자가 옵션선택을 반드시 해줘야 하는 곳이 있으며 아래 붉은 박스 부분을  체크한 상태에서 진행하면 설치과정중에 MDK-ARM 의 Segger 영역 부분을 자동으로 찾아서 업데이트 해준다. 

위 옵션을 선택한 상태에서 계속 진행하다보면 아래 그림처럼 DLL 들 업데이트 하겠다는 메시지를 보여준다. 뷹은 박스 부분에 KEIL MDK-ARM 의 segger 폴더에 있는것도 업뎃 하겠다는 것이 보인다. 

위 조치로 문제증상1은 해결되었다만, 아직 끝이 아니다. 위 조치를 취해도 아래처럼 플래시 다운로드과정에서 fail 발생함. 

 

J-Link 문제증상 2

위 조치를 취하고 프로그램 기록시도하면 아래 동영상 같은 오류 발생한다. 

(개인적 경험에서는 J-link 이용해서 머하나 깔끔하게 진행된 적이 없었음 !!! 이게 해결되면 저게 문제터지고)

 

해결책 - 문제증상2

- 아래 동영상에서 보이듯이 Programming Algorithm 설정에서 SDK 에서 기본 배포된 것들 nRF52xxx SoftDevice Erase 를 추가하면 펌웨어 다운로드 가능하고 펌웨어에서 의도한 기능이 타겟보드에서 정상작동하긴한다. 

- 이런 류의 오류는 KEIL 이나 Segger 사의 J-Link 문제는 아니고 NORDIC 사의 nRF5 SDK의 KEIL 예제 프로젝트 완성도 부실로 보임. 

 

 

 

 


첫등록 : 2019년 10월 1일 

최종수정 : 2019년 10월 2일.

 

본 글 단축주소 : https://igotit.tistory.com/2304

 


 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5