Home > Á¦Ç°¼Ò°³ > ¿¡¹Ä·¹ÀÌÅÍ > MAJIC-LT > °³¹ßȯ°æ
< ¿¡¹Ä·¹ÀÌÅÍ >
CodeViser : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / ÀÚ·á½Ç
MAJIC-LT : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / ÀÚ·á½Ç / ºñ±³Â÷Æ® / Áö¿ø¸®½ºÆ®
MAJIC-LX : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / ÀÚ·á½Ç / ºñ±³Â÷Æ® / Áö¿ø¸®½ºÆ®
MAJIC-MT : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / ÀÚ·á½Ç / ºñ±³Â÷Æ® / Áö¿ø¸®½ºÆ®
ARMTOOLS : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / Áö¿øµð¹ÙÀ̽º
J-LINK(FlashÀü¿ë) : Á¦Ç°¼Ò°³ / °³¹ßȯ°æ / ±â¼úÁö¿ø / ÀÚ·á½Ç

¹«Á¦ ¹®¼­

1. NON-OS¿¡¼­ÀÇ °³¹ßȯ°æ ±¸Ãà

¿ì¼± NON-OS¶ó°í Çϸé ÀϹÝÀûÀ¸·Î Firmware °³¹ß ȯ°æÀ» ¸»ÇÑ´Ù.
Firmware °³¹ß ȯ°æ¿¡¼­ ÁÖ·Î »ç¿ëÇÏ´Â ÄÄÆÄÀÏ·¯´Â ARM»çÀÇ ADS1.2¿Í SDT 2.51À» ±âÁØÀ¸·Î
MAJIC°ú ¿¬µ¿Çؼ­ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÀ» ÇÏ°Ú´Ù.

  [1] ARM ADS1.2 »ç¿ë¹ý

MAJIC setup wizard ÇÁ·Î±×·¥À» ¼³Ä¡ÇÑ ÈÄ¿¡ rdimajic.dllÀ»
C:\program files\ARM\ADS1.2\Bin Æú´õ¿¡ ¾Æ·¡¿Í °°ÀÌ º¹»çÇÑ´Ù.
AXDÀÇ Options ¡æ Configure Target... À» Ŭ¸¯ÇÏ¸é ¾Æ·¡ÀÇ ¸Þ´º°¡ ³ª¿À´Âµ¥
º¹»çÇÑ ÆÄÀÏÀ» add ÇÏ¸é µÈ´Ù.



Configure¸¦ Ŭ¸¯Çϸé Monice°¡ ½ÇÇàµÇ°í JTAG ¿¬°áÀ» È®ÀÎ ÇÒ ¼ö ÀÖ´Ù.

  [2] ARM SDT2.51 »ç¿ë¹ý

ARM»çÀÇ SDT´Â ÇöÀç´Â ´ÜÁ¾µÈ Á¦Ç°ÀÌÁö¸¸ ±âÁ¸ÀÇ »ç¿ëÀÚ°¡ ¸¹±â ¶§¹®¿¡ °ü·ÃÇؼ­ ¼³¸íÀ» ÇÏ°Ú´Ù.

MAJIC¿ë ¼³Ä¡ ÇÁ·Î±×·¥À» ¼³Ä¡ÇÑ ÈÄ¿¡ rdimajic.dllÀ»
C:\ARM251\Bin Æú´õ¿¡ ¾Æ·¡¿Í °°ÀÌ º¹»çÇÑ´Ù.
ADWÀÇ Options ¡æ Configure Debugger... À» Ŭ¸¯ÇÏ¸é ¾Æ·¡ÀÇ ¸Þ´º°¡ ³ª¿À´Âµ¥
º¹»çÇÑ ÆÄÀÏÀ» add ÇÏ¸é µÈ´Ù.



Configure¸¦ Ŭ¸¯Çϸé Monice°¡ ½ÇÇàµÇ°í JTAG ¿¬°áÀ» È®ÀÎ ÇÒ ¼ö ÀÖ´Ù.

  [3] Debugging Çϴ¹ý
À§¿Í °°ÀÌ ÀÏ·ÃÀÇ ¼¼ÆÃÀÌ ³¡³ª°í µð¹ö°Å¿Í Ÿ°ÙÀÇ ¿¬°áÀÌ ³¡³ª¸é, µð¹ö±ë ¹æ¹ýÀ» ¼±ÅÃÇØ¾ß ÇÑ´Ù.
Áß¿äÇÑ °ÍÀº Boot´Â ROM¿¡¼­ Break PointÂï¾î °¡¸ç µð¹ö±ëÀ» ÇÏ°í 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 ¿¡¹Ä·¹ÀÌÅÍÀÎ MAJICÀ¸·Î µð¹ö±ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÏ°Ú´Ù.

  [1] Embedded Linux

MAJICÀÇ °æ¿ì Embedded Linux ȯ°æ¿¡¼­ µð¹ö±ëÇϱâ À§ÇØ mdi-Server¶ó´Â º°µµÀÇ
ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÑ´Ù. ÀϹÝÀûÀ¸·Î GDB-Server¸¦ ÀÌ¿ëÇؼ­ ¾îÇø®ÄÉÀ̼ÇÀ» µð¹ö±ëÇϵíÀÌ
GDB¿Í MDI-Server¸¦ ÀÌ¿ëÇؼ­ Bootloader ¹× Ä¿³ÎÀ» µð¹ö±ë ÇÒ ¼ö ÀÖ´Ù.

¨ç MAJIC Software ¼³Ä¡Çϱâ
EPI¿¡¼­ Á¦°øÇÏ´Â Edta 2.0 for Linux¸¦ ³ÖÀ¸¸é ¾Æ·¡¿Í °°Àº ÆÄÀÏÀÌ ÀÖ´Ù.
>>cd /
>>mount /dev/cdrom
>>cd /mnt/cdrom
>>ls
>>cd linux
>>cd edta
>>mkdir /root/epi
>>cp edt.tar /root/epi
>>cd /root/epi
>>tar -xvf edt.tar
>>export PATH=$PATH:/root/epi/bin

# path¸¦ ÁöÁ¤ÇÑ´Ù.
>>pico w /root/.bash_profile #path ¼³Á¤
X-hyper250B º¸µå¿ëÀ¸·Î ¸¸µç cmd ÆÄÀÏ µ¤¾î¾²±â
x-hyper250-linux.cmd , startice.cmd, epimdi.cfg ÆÄÀÏÀ»
/root/epi/bin Æú´õÀÇ ÆÄÀÏ¿¡ µ¤¾î¾²±â ÇÑ´Ù.
>>pico w epimdi.cfg
>>IPºÎºÐÀ» MAJICÀÇ IP·Î ¼¼ÆÃÀ» ÇÑ´Ù.
Host PC IP : 192.168.0. 100
MAJIC IP : 192.168.0.155
X-hyper250B IP : 192.168.0.10


¨è MAJIC IP ¼¼ÆÃÇϱâ

>> cd /root/epi/bin
>>monice d /dev/ttyS0 vpxa250 -7 l
mon>>do
mon>>eo tia=192.168.0.155
mon>>eo tig=192.168.0.1
mon>>eo tin=255.255.255.0
mon>>q y
±×·± ÈÄ¿¡ MAJICÀÇ power¸¦ ²ö ÈÄ ´Ù½Ã ÄÒ´Ù.
IP ¼¼ÆÃÀÌ ¿Ï·áµÇ¸é Ping Test¸¦ Çغ»´Ù.
>> ping 192.168.0.155


Building the Kernel Image

[root@mc /] cd /root/xhyper250/Kernel/linux-2.4.18-rmk7-pxa1-xhyper250R1.1
Then run menuconfig to configure the build for the Linux kernel.

[root@mc linux-2.4.18-rmk7-pxa1-xhyper250R1.1] make menuconfig
Menuconfig has been shipped by Hybus to default to all correct settings for the X-Hyper250B
evaluation board. In order to debug the Linux kernel with the MAJIC though, one setting will
need to be changed. Under kernel hacking change Include debugging information in kernel
binary to be enabled. This will cause the vmlinux file to be compiled with the g switch,
and therefore have source and symbolic debug information. Then next step is to build the
image:
[root@mc linux-2.4.18-rmk7-pxa1-xhyper250R1.1] make dep
[root@mc linux-2.4.18-rmk7-pxa1-xhyper250R1.1] make zImage kernel
If the compilation works correctly the vmlinux file will show up in the current directory,
and the zImage file will show up in the /arch/arm/boot directory, off of the current working
directory.
After successfully recompiling the kernel the zImage file should be copied to the /tftpboot
directory in order for TFTP to find it during the re-programming stage.


Programming the Kernel Image
Before reprogramming the Linux kernel ensure that TFTP and BOOTP have been installed
and configured on the host computer. Instructions for this can be found in the X-Hyper250B
manual on page 68. The original instructions for reprogramming the Linux kernel can be found
on page 22.
Connect to the target with Minicom, then power cycle the board so that it will reboot.
Instructions for configuring Minicom can be found in the X-Hyper250B manual on page 12.
[root@mc /] minicom
X-HYPER250>

--------------------------------------------------------------------------------------
X-HYPER250-R1
Copyright (C) 2002 Hybus Co,. ltd.
X-HYPER250 comes with ABSOLUTELY NO WARRANTY; Read the GNU GPL for
details. This is free software, and you are welcome to redistribute it
under certain conditions; read the GNU GPL for details.
Support: http://www.hybus.net
--------------------------------------------------------------------------------------
Autoboot in progress, press any key to stop ...
At this point hit any key so that Autoboot will be aborted. You can then type in the
commands to have the kernel
flashed to the target.
Autoboot aborted
Type "help" to get a list of commands

X-HYPER250> tftp zImage kernel
No IP. Bootp start...
Our Ethernet address is 00D0 CAD1 2577.
Sending bootp packet... .
Bootp Packet received.
Host (server) Ethernet : 0006 5BE5 8F23
Host (server) IP : 205.158.243.30
Client (target) Ethernet : 00D0 CAD1 2577
Client (target) IP : 205.158.243.205
TFTP Start...
Host (server) IP : 205.158.243.30
Client (target) IP : 205.158.243.205
Loading Filename : zImage-rf-061603-xhyper250
Save Address : 0xA0008000
Loading start...
0x000D10B4 (856244) bytes received.
tftp done.

X-HYPER250> flash kernel
Saving kernel to flash...
Erase flash blocks from 0x000C0000 to 0x001BFFFF.
Erase Block at : 0x00180000.
Done.
Write to flash...
Writing at 0x001C0000...
Done
X-HYPER250>
Be sure to try rebooting the kernel image to ensure that it programmed successfully:
X-HYPER250> reboot
Restarting...
Now the kernel has been successfully re-programmed to flash. It is now guaranteed
that the vmlinux file and zImage file
will match for kernel debugging purposes.

Debugging the Kernel
Refer to the Getting Started with MAJIC and Linux application note for information on
configuring the MAJIC for the
X-Hyper250 target. In this situation the samples file found in the /root/epi/bin directory
should be used for connecting to the target. MDI-Server can either be run from the
/root/epi/bin directory,
or the startup files can be copied to the /root/epi/bin directory before starting.
Keeping the Minicom window open to monitor the target, now open two more console windows.
Start MDI-Server in
the second console window.
[root@mc bin]# mdi-server -l mdi.so
Started listening socket on port 2345.
Then start a GDB session in the third console window:
[root@mc bin]# ./xscale_le-gdb
GNU gdb 5.2.1
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "--host=i686-pc-linux-gnu
--target=armv5tel-hardhat-linux".
Now enter the following command in GDB:
(gdb) set remoteti 10
(gdb) file /root/xhyper250/kernel/linux-2.4.18-rmk7-pxa1-xhyper250R1.1/vmlinux
Reading symbols from /tftpboot/vmlinux-rf-061603-xhyper250...done.
(gdb) target remote localhost:2345
Remote debugging using localhost:2345
0x00000000 in ?? ()
This is following the Getting Started with MAJIC and Linux application note exactly.
In the MDI-Server window you should now see:
Accepted gdb MDI connection.
Attaching...Capabilities:
TraceOutput
TraceCtrl
End of Capabilities List
Devices:
Index Name
[0] PXA250 for Hybus Linux
Selecting device [0] of 1
Notification from the target:
Target power detected on VREF
Auto JTAG detection process detected 1 TAP
JTAG connection established
Done.
Now, in GDB, let the target run:
(gdb) cont
Continuing.

In the Minicom window you should see the Linux kernel begin to boot up:
-------------------------------------------------------------------------------------
X-HYPER250-R1
Copyright (C) 2002 Hybus Co,. ltd.
X-HYPER250 comes with ABSOLUTELY NO WARRANTY; Read the GNU GPL for
details. This is free software, and you are welcome to redistribute it
under certain conditions; read the GNU GPL for details.
Support: http://www.hybus.net
--------------------------------------------------------------------------------------
Autoboot in progress, press any key to stop ...Autoboot started.
Starting kernel ...
Uncompressing
Linux.............................................................Linux
version 2.4.18-rmk7-pxa1-xhyper250R1.1 (root@mc) (gcc version 3.2.1
200203CPU: Intel XScale-PXA250 revision 4
Machine: X-Hyper250B PXA250 evaluation board
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=1f03 rw console=ttyS0,115200 init=/linuxrc
Console: colour dummy device 80x30
Calibrating delay loop... 397.31 BogoMIPS
Memory: 64MB = 64MB total
Memory: 62436KB available (1451K code, 292K data, 356K init)
Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode-cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
PXA USB Controller Core Initialized
get_random_bytes called before random driver initialization
USB Function Ethernet Driver Interface
Starting kswapd
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications
AB. Console: switching to colour frame buffer device 80x30
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0x0000 (irq = 14) is a PXA UART
ttyS01 at 0x0000 (irq = 13) is a PXA UART
ttyS02 at 0x0000 (irq = 12) is a PXA UART
ads7843 touch screen driver initialized
block: 128 slots per queue, batch=32
Cirrus Logic CS8900A driver for Linux (V0.01)
eth0: CS8900A rev D at 0xf0000300 irq=0, no eeprom , addr:
00:12:34:56:78:9A ac97_codec: AC97 Audio codec, id: 0x4352:0x5914
(Cirrus Logic CS4297A rev B) Probing X-Hyper250 Flash at physical
address 0x00000000 Using buffer write method
Using static partition definition
Creating 4 MTD partitions on "X-Hyper250 Flash":
0x00000000-0x00040000 : "Bootloader"
0x00040000-0x000c0000 : "Partition Tables"
0x000c0000-0x001c0000 : "Kernel"
0x001c0000-0x02000000 : "Filesystem"
Linux Kernel Card Services 3.1.22
options: none
Intel PXA250/210 PCMCIA (CS release 3.1.22)
X-Hyper250 PCMCIA INIT


MMC subsystem, $Revision: 0.3.1.14 $
MMC block device driver, $Revision: 0.3.1.16 $
PXA250 MMC controller driver, $Revision: 0.3.1.12 $
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 8192)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com
VFS: Mounted root (jffs2 filesystem).
Freeing init memory: 356K
Setting up RAMFS, please wait ...
done and exiting
INIT: version 2.78 booting
INIT: Entering runlevel: 3
Starting syslog Starting system logger:
Starting pcmcia Starting PCMCIA
Starting etwork Starting network
Starting X...
Xhyper250RB login:
Log into Embedded Linux as the root user:
Xhyper250RB login: root
You can now change directory and view the file structure of the operating system:
[root@Xhyper250RB /root]$cd ..
[root@Xhyper250RB /]$ls
bin dev home linuxrc mnt rd sbin usr
conf etc lib lost+found proc root tmp var
[root@Xhyper250RB /]$
Begin debugging the Linux kernel by setting, and hitting, several breakpoints.
Use the Cntrl-C command to gain control
of the target, then type the following commands
Program received signal SIGTRAP, Trace/breakpoint trap.
(gdb) b sys_sync
Breakpoint 2 at 0xc009074c: file buffer.c, line 366.
(gdb) b get_pid
Breakpoint 3 at 0xc006ca1c: file fork.c, line 89.
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y 0xc009074c in sys_sync at buffer.c:366
3 breakpoint keep y 0xc006ca1c in get_pid at fork.c:89
(gdb) cont
Continuing.
In Embedded Linux run the list (ls) command in order to cause the breakpoint
at get process identification (get_pid) to be hit:
[root@Xhyper250RB /]$ls
In GDB you should see:
Breakpoint 3, get_pid (flags=17) at fork.c:89
89 {
Let the target run again and try executing the sync command:
(gdb) cont
Continuing.

[root@Xhyper250RB /]$sync
In GDB you should see the get_pid breakpoint hit first, and then if you continue,
the sys_sync breakpoint hit.
Breakpoint 3, get_pid (flags=17) at fork.c:89
89 {
(gdb) c
Continuing.
Breakpoint 2, sys_sync () at buffer.c:366
366 fsync_dev(0);
(gdb)
You have now successfully demonstrated kernel level debugging
on the Hybus X-Hyper250B board.
GDB commands
b
: breakpoint
Ex) b line number

GDB>> b 333
b get_pid
b sys_sync

info breakpoints

breakpoint °É¸° À§Ä¡ ¹× °æ·Î
l
: list

¼Ò½º ·¹º§ µð¹ö±ë½Ã ¼Ò½º¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ½

S
: step

ÇÑ ÁÙ½Ä ¼Ò½º¸¦ º¸¸é¼­ µð¹ö±ëÇÒ ¼ö ÀÖÀ½
Ex> S 10

³ª) Embedded Windows(WinCE .Net & Pocket PC)

¿ä±¸»çÇ×:

¨ç ÀÎÅÚ DCPXA250 Lubbock Development Board

¨è EPI majic MX II Multi-processor Advance JTAG Interface Controller
¨é WinCE PlatformBuilder 4.1 .Net

ÀýÂ÷:
¸ÕÀú, majic setup wizard¸¦ ½ÇÇàÇؼ­ MAJICÀÇ IP address¿Í startice.cmd
¹× epimdi.cfg ¸¸µç´Ù.


next


¨ç MAJIC¿¡ Serial Æ÷Æ®¸¦ PC Serial Æ÷Æ®¿¡ ¿¬°áÇÑ´Ù. Á¦°øµÈ RS232C CableÀ» ¹Ýµå½Ã
»ç¿ëÇØ¾ß ÇÑ´Ù.(Cross cableÀÌ ¾Æ´Ô)

¨è ½ÃÀÛ ¡æ EPI tools ¡æ EDTA ¡æ Majic Setup Wizard ½ÇÇàÇÑ´Ù.

¨é "Setup Static IP Related Address Information on your MAJIC" ¡æ 'Go' Ŭ¸¯ÇÑ´Ù.



¨ê °íÁ¤ IP¿Í Subnet Mask ±×¸®°í Gateway ³Ö´Â´Ù. IP´Â »ç¿ëÀÚ ÄÄÇ»ÅÍÀÇ IP ´ë¿ª¿¡ ¸Â°Ô
³Ö¾î¾ß ÇÑ´Ù. 'Next' Ŭ¸¯ÇÑ´Ù.

¨ë 'I will be using a serial port to communicate with my MAJIC'À» ¼±ÅÃÇÑ´Ù.

¨ì 'Install IP'¼±ÅÃÇÏ°í Äֿܼ¡¼­ Serial Æ÷Æ®¸¦ ÅëÇØ IP°¡ ¼¼ÆõǴ ȭ¸éÀÌ Á¤»óÀûÀ¸·Î ³ªÅ¸³­´Ù.

µð¹ö°Å ȯ°æÀ» WinCE PlatformBuilder¸¦ ¼±ÅÃÇؼ­ startice.cmd, epimdi.cfg ÆÄÀÏÀ»
»ý¼º
ÇÑ´Ù.
¨ç ½ÃÀÛ ¡æ EPI Tools ¡æ EDTA ¡æ Majic Setup Wizard ½ÇÇà

¨è 'Choose your Debugger'¶õ¿¡¼­ 'Platform Builder (WinCE/PocketPC)' ¼±ÅÃÇÏ°í
'Go' Ŭ¸¯ÇÑ´Ù.

¨é Project NameÀ» ³Ö°í 'Next' Ŭ¸¯ÇÑ´Ù. Ưº°ÇÑ Àǹ̴ ¾ø´Ù.



¨ê Target CPU¿Í Byte EndianÀ» ¼±ÅÃÇÑ´Ù. CPU¿¡ ´ëÇÑ Á¤È®ÇÑ Á¤º¸¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.



¨ë MAJIC°ú PC¿ÍÀÇ ¿¬°á ¹æ¹ýÀ» ¼±ÅÃÇÑ´Ù. SerialÀ̳ª ÀÌ´õ³ÝÀ» ¼±ÅÃÇÑ´Ù.



¨ì ¼³Ä¡µÈ EPIToolÀÇ Targets Æú´õ¿¡¼­ ¸Â´Â »ç¿ëÀÚ º¸µå¿¡ ¸Â´Â Configuration FileÀ»
¼±ÅÃÇÑ´Ù.



¨í Startice ¹× epimdi.cfg ÆÄÀÏ »ý¼ºÇÒ µð·ºÅ丮¸¦ ¼±ÅÃÇÑ´Ù.



Majic°ú WinCE Platform Builder¿¡¼­ eboot µð¹ö±ë

¨ç Lubbock board¿ë Eboot.nb0 ÆÄÀÏÀ» º¸µå¿¡ ±Á´Â´Ù.
¨è bootloader°¡ ¼º°øÀûÀ¸·Î ÇÁ·Î±×·¥ µÇ¾î ÀÖÀ¸¸é ÇÏÀÌÆÛÅ͹̳ο¡¼­ 38400-8-N-1 ¼¼ÆÃÀ»
ÇÑ ÈÄ Å¸°Ùº¸µå¿¡ Àü¿øÀ» ³Ö´Â´Ù.



¨é WinCE Platform Builder¸¦ ½ÇÇàÇÑ´Ù. Lubbockº¸µå¿ë ProjectÆÄÀÏÀ» ¸¸µç ÈÄ
ethernetÀ¸·Î nk.binÆÄÀÏÀ» ´Ù¿î·Îµå ÇÑ´Ù.
Target ¡æ Configure Remote Connection.



¨ê ÀÌ´õ³Ý ¼±Åà ÈÄ configure ¹öÆ°À» Ŭ¸¯Çϸé 'XSC1BD42973'ÀÌ Æ˾÷â¿¡ ³ªÅ¸³­´Ù.
±×·± ÈÄ¿¡ Platform ¼¼Æà ºÎºÐ¿¡¼­ ¾Æ·¡¿Í °°ÀÌ ¿É¼ÇÀ» ¼±ÅÃÇÑ´Ù.





¨ë Target ¡æ Download/Initialize¸¦ ¼±ÅÃÈÄ nk.bin ÆÄÀÏÀ» ´Ù¿î·Îµå ÇÑ´Ù.



¨ì ±×·¯¸é Á¤»óÀûÀ¸·Î WinCE À̹ÌÁö°¡ ºÎÆÃÀÌ µÈ´Ù. ±×·³ Áö±ÝºÎÅÍ eboot À̹ÌÁö µð¹ö±ë
ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°Ú´Ù.

¨í ÁÖÀÇÇÒÁ¡Àº Flash¿¡ ÇÁ·Î±×·¥ µÇ¾î ÀÖ´Â À̹ÌÁö¿Í µð¹ö±ë ÇÒ À̹ÌÁö°¡ µ¿ÀÏÇؾ߸¸ ÇÑ´Ù.
¶ÇÇÑ, eboot°¡ ÀÖ´Â ÆÄÀÏÀÇ °æ·Î¸¦ ¾Æ·¡¿Í °°ÀÌ µî·ÏÀ» ÇؾßÁö¸¸ ¼Ò½º·¹º§·Î µð¹ö±ëÀÌ
°¡´ÉÇÏ´Ù.

%_TARGETPLATFORM%\target\%_TGTCPU\%WinCEDEBUG%

¨î Path¸¦ ¾ò±â À§Çؼ­ Open the Platform Builder ¡æ open the lubbock platform
¡æ Build ¡æ Open Build release directory ¡æ ±×·¯¸é command window¿¡¼­
'set'À» Ä¡¸é ¼Ò½º°¡ ÀÖ´Â Àüü °æ·Î¸¦ º¼ ¼ö ÀÖ´Ù.

C:\WinCE410\PLATFORM\XSC1BD\target\ARMV4I\retail\eboot.bin.

¨ï ÀÌ À̹ÌÁö¸¦ À§ÇÑ ¼Ò½ºÄڵ带 º¸±â À§Çؼ­
File ¡æ Open ¡æ C:\WinCE410\PLATFORM\XSC1BD\EBOOT\main.c

±×·± ´ÙÀ½ ¼Ò½ºÄڵ忡¼­ breakpoint¸¦ Âï°í ¾Æ·¡¿Í °°ÀÌ breakpoint edit â¿¡¼­
hardware breakpoint¸¦ ¼±ÅÃÇÑ´Ù. Edit ¡æ Breakpoint



Target º¸µå¸¦ MAJICÀ¸·Î ¿¬°á ÈÄ Target ¡æ Connect ±×¸®°í ³ª¼­
Debug ¡æ Go¸¦ Ŭ¸¯ÇÑ ÈÄ ¾Æ·¡¿Í °°Àº È­¸éÀ» º¼ ¼ö ÀÖ´Ù.






ÀÌ·¸°Ô Çؼ­ WinCE¿¡¼­ eboot ¹× Ä¿³Î µð¹ö±ëÀ» ÇÒ ¼ö ÀÖ´Ù.


Today/Total   1 / 950,417