Home > 제품소개 > 에뮬레이터 > ARMTOOLS > 개발환경
< 에뮬레이터 >
CodeViser : 제품소개 / 개발환경 / 기술지원 / 자료실
MAJIC-LT : 제품소개 / 개발환경 / 기술지원 / 자료실 / 비교차트 / 지원리스트
MAJIC-LX : 제품소개 / 개발환경 / 기술지원 / 자료실 / 비교차트 / 지원리스트
MAJIC-MT : 제품소개 / 개발환경 / 기술지원 / 자료실 / 비교차트 / 지원리스트
ARMTOOLS : 제품소개 / 개발환경 / 기술지원 / 지원디바이스
J-LINK(Flash전용) : 제품소개 / 개발환경 / 기술지원 / 자료실

개발환경

  NON-OS에서의 개발 환경 구축

우선 NON-OS라고 하면 일반적으로 Firmware 개발 환경을 말한다.
Firmware개발 환경에서 주로 사용하는 컴파일러는 ARM사의 ADS1.2와 SDT 2.51을
기준으로 DRAGON-ICE와 연동해서 사용하는 방법에 대해 설명을 하겠다.

  [1] ARM ADS1.2 사용법

DRAGON-ICE용 설치 프로그램을 설치한 후에 Dragon-ICE.dll을
C:\program files\ARM\ADS1.2\Bin 폴더에 아래와 같이 복사를 한다.
AXD의 Options → Configure target...을 클릭하면 아래의 메뉴가 나오는데
복사한 파일을 add 하면 된다.



Configure를 클릭하면 Dragon-ICE server가 실행되고 JTAG 연결을 확인 할 수 있다.

  [2] ARM SDT2.51 사용법

ARM사의 SDT는 현재는 단종된 제품이지만 기존의 사용자가 많기 때문에 관련해서 설명을 하겠다.

DRAGON-ICE용 설치 프로그램을 설치한 후에 Dragon-ICE.dll을
C:\ARM251\Bin폴더에 아래와 같이 복사를 한다.
ADW의 Options → Configure Debugger...을 클릭하면 아래의 메뉴가 나오는데
복사한 파일을 add 하면 된다.

Configure를 클릭하면 Dragon-ICE server 가 실행되고 JTAG 연결을 확인 할 수 있다.

  [3] Debugging 하는 법

위와 같이 일련의 세팅이 끝나고 디버거와 타겟의 연결이 끝나면 디버깅 방법을 선택해야 한다. 중요한 것은 boot는 ROM에서 breakpoint 찍어가며 디버깅을 하고 Main 프로그램 또는 어플리케이션은 RAM에서 디버깅을 하는 것이 일반적인 방법이다.

① bootloader 디버깅하기
우선 bootloader를 디버깅 하기 위해서 flash에 boot image를 프로그램해야 한다.
예를 들면 boot.bin을 flash 0x0번지에 프로그램을 한다.
프로그램 방법은 DRAGON-ICE용 flash utility로 쉽게 프로그램 할 수 있다.
주의 할 점은 compile시에 Linker에서 RO-Base는 0x0 RW-Base 0x3000,0000(RAM 시작 번지)에
놓고 컴파일을 한다.

예 1) ADS의 경우

예 2) SDT의 경우

bootloader 디버깅 실행 화면이다.


② Main program 디버깅
컴파일시에 RO-Base를 0x3000,0000(RAM 시작 번지) RW-Base는 비워두면 된다.
이렇게 컴파일 한 후 Main program을 디버깅하면 된다.
차이점은 bootloader에서 이미 타겟보드의 Memory를 이미 초기화 했기 때문에
RAM break를 찍을 수 있기 때문에 소스레벨 디버깅이 아주 용이하다.

2. OS에서의 개발환경 구축

우선 OS는 크게 두가지로 구분 지울 수 있다.
1. Embedded Linux
2. Embedded Windows (Wince .Net & Pocket PC)

OS 개발환경에서 JTAG에뮬레이터인 DRAGON-ICE의 역할을 설명하겠다.


1. Embedded Linux

Dragon-ICE와 Embedded Linux와의 디버깅은 공식적으로 지원을 하지 않는다. 왜냐하면
ARM사의 Multi-ICE와 동일한 방식으로 하기 때문이다. Multi-ICE의 경우 Embedded linux를
지원하지 않기 때문이다. 관련된 자료는 구할 수 있지만 디버깅에 대한 기술지원은
하지 않는다.


2. Embedded Windows(WINCE .NET & POCKET PC)

DRAGON-ICE의 경우 Multi-ICE와 동일한 방식으로 하기 때문에 WinCE용 EXDI 드라이버를
별도로 설치해서 디버깅을 하면 된다. 디버깅 자료는 자료실을 참조하기 바란다.

Today/Total   4 / 942,889