기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

OpenOCD 0.2.0

조회 수 44557 추천 수 0 2009.10.24 20:43:04

며칠전에 OpenOCD 0.2.0이 나온것을 새로 확인하였습니다.

이제는 Coretex-A8까지 지원하려는것 같더군요.

AVR(ATmega128)도 지원합니다. ^^;

거의 9개월만에 보드를 꺼내서 JTAG을 붙여보았습니다.


빌드방법도 바뀌고 사용법도 조금 바뀌어서 소개하고자 합니다.


빌드방법

  인터넷검색을 하니 중국사람들이 이미 방법을 소개하고 있었습니다.

    (How to build OpenOCD for windows - jordon的?? - CSDN博客)

  설명대로 빌드(Windows XP용, FT2232)하니 쉽게 빌드되었습니다.


사용예:

  첨부한 화일을 적절한 디렉토리에 풀어놓습니다.

  Target에 JTAG(FT2232)을 연결하고  부팅합니다.

  cmd창을 열어서 openocd.exe를 실행합니다.

  다른 cmd창을 열어서 telnet localhost 4444로 연결을 합니다.


-------------------------------------------------------------------------------------------

서버쪽 메시지(openocd.exe)

-------------------------------------------------------------------------------------------

T:cygwinhomeOpenOCDtest>openocd

Open On-Chip Debugger 0.2.0 (2009-10-23-19:11) Release
$URL: http://svn.berlios.de/svnroot/repos/openocd/tags/openocd-0.2.0/src/openocd.c $
For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
500 kHz
jtag_nsrst_delay: 200
jtag_ntrst_delay: 200
Info : device: 4
Info : deviceID: 67330064
Info : SerialNumber: ESSHO85NA
Info : Description: USB JTAG A
Info : JTAG tap: mp2530.cpu1 tap/device found: 0x05946f0f (mfg: 0x787, part: 0x5946, ver: 0x0)
Info : JTAG Tap/device matched
Info : JTAG tap: mp2530.cpu2 tap/device found: 0x07926f0f (mfg: 0x787, part: 0x7926, ver: 0x0)
Info : JTAG Tap/device matched
Info : accepting 'telnet' connection from 0     <=========================== telnet접속을하면 메시지가 나옵니다.

     TargetName         Type       Endian TapName            State
--  ------------------ ---------- ------ ------------------ ------------
 0* mp2530.cpu2        arm926ejs  little mp2530.cpu2        running     <====== targets 명령 결과
Warn : target not halted
Runtime error, file "command.c", line 469:
    target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x600000d3 pc: 0xc002fc24
MMU: enabled, D-Cache: enabled, I-Cache: disabled
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x600000d3 pc: 0xc002fc28
MMU: enabled, D-Cache: enabled, I-Cache: enabled
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc002fc2c
MMU: enabled, D-Cache: enabled, I-Cache: enabled
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc0028c60
MMU: enabled, D-Cache: enabled, I-Cache: enabled
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc0028c64
MMU: enabled, D-Cache: enabled, I-Cache: enabled


-------------------------------------------------------------------------------------------

telnet쪽 메시지(telnet localhost 4444)

-------------------------------------------------------------------------------------------

Open On-Chip Debugger
> targets
    TargetName         Type       Endian TapName            State
--  ------------------ ---------- ------ ------------------ ------------
 0* mp2530.cpu2        arm926ejs  little mp2530.cpu2        running
> step
target not halted
Runtime error, file "command.c", line 469:

> halt
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x600000d3 pc: 0xc002fc24
MMU: enabled, D-Cache: enabled, I-Cache: disabled
> step
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x600000d3 pc: 0xc002fc28
MMU: enabled, D-Cache: enabled, I-Cache: enabled
> step
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc002fc2c
MMU: enabled, D-Cache: enabled, I-Cache: enabled
> step
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc0028c60
MMU: enabled, D-Cache: enabled, I-Cache: enabled
> step
target state: halted
target halted in ARM state due to breakpoint, current mode: Supervisor
cpsr: 0x60000093 pc: 0xc0028c64
MMU: enabled, D-Cache: enabled, I-Cache: enabled
>


이제현

2009.10.24 21:48:13
*.40.239.206

좋은 정보 감사합니다.

Cortex-A8에서 테스트한 결과를 보니 아직 MMU/CACHE가 활성화 되어 있는 경우는 디버깅이 안되는것 같습니다.

그래도 u-boot 정도는 디버깅이 가능해 보이네요.

 

처음나온 보드를 살릴때 매우 유용하고,  무엇보다도 천만원이 훌쩍 넘어가는 Trace32 없이 몇만원으로 Cortex-A8을

디버깅할 수 있다는  것은 매우 의미깊은 일인것 같습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
2708 검은화면으로 멈춤 [10] 현쓰 2009-12-27 818
2707 SRAM에 데이터 Write 방법 [1] 착한사람 2009-12-27 623
2706 [WinCe] BSP 오류가.... [1] 김철홍 2009-12-01 852
2705 보드에 어플 다운로드 관련 [1] 기현종 2009-11-19 629
2704 mp2530 ethernet장치문제 [2] 기현종 2009-11-17 605
» OpenOCD 0.2.0 [1] 김광준 2009-10-24 44557
2702 Android 2.6.27 2008-12-29일자 커널과 테스트용 rootfs 요청 [3] 윤치호 2009-09-10 816
2701 MP2530F WinCE webpads 디버깅 모드 질문드려요.. [4] 김해성 2009-09-01 1100
2700 mplayer 컴파일 [4] 윤치호 2009-08-26 964
2699 이솝 MP2530f 보드에서 MESVip 프로그램 오류가 왜 날까요? [1] 두현택 2009-08-15 1055
2698 MP2530에 LAN91C113 드라이버 질문 [1] 정순철 2009-08-01 1869
2697 리눅스 커널 컴파일 중에 bzImage가 생성이 안됩니다. 컴파일은 정상... [1] 한성덕 2009-06-26 1358
2696 질문드립니다. 2006.12.07_2.6_kernel.iso 파일 구할곳 없나요? [2] 한성덕 2009-06-23 873
2695 노래방 기기를 제작준비 중입니다.. [3] 김길호 2009-04-28 1435
2694 파일실행이 안될 때 [2] 송의석 2009-03-07 2218
2693 MP2530에 OpenOCD와 FT2232를 이용해 JTAG 연결중 [4] 박성철 2009-02-15 5292
2692 JTAG TCK 저항값 수정 [3] 김광준 2009-01-31 2105
2691 kernel 2.6.28.2 포팅 [1] 김광준 2009-01-31 2589
2690 aesop-mp2530f board의 machine type id 등록 [2] 심준영 2009-01-29 1392
2689 DNW 관련 ... [1] 고도리 2007-10-31 5207

사용자 로그인