📄 setup-arm-ep7211.html
字号:
></TABLE
></LI
><LI
><P
>Enter the commands:</P
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>$ ecosconfig tree
$ make</PRE
></TD
></TR
></TABLE
></LI
><LI
><P
>When the build completes, the image files can be found
in the bin/ subdirectory of the install tree. GDB stub
ROM images have the prefix "gdb_module". CygMon images
have the prefix "cygmon".</P
></LI
></OL
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN3874">Loading the ROM Image into On-board Flash</H2
><P
>Program images can be written into Flash memory by means of
a bootstrap program which is built into the EDB7211. This program
communicates with a support program on your host to download and
program an image into the Flash memory.</P
><P
>Cirrus Logic provides such a program for use with Windows/DOS.
eCos comes with a similar program which will run under Linux. The
basic operation of both programs is the same.</P
><P
></P
><OL
TYPE="1"
><LI
><P
>Connect a serial line to 'UART 1'.</P
></LI
><LI
><P
>Power off the EDB7211.</P
></LI
><LI
><P
>Install jumper 'PROGRAM ENABLE' which
enables this special mode for downloading Flash images. Note that
some board revisions have this jumper labelled “BOOT ENABLE”.</P
></LI
><LI
><P
>Power on the EDB7211.</P
></LI
><LI
><P
>Execute the Flash writing program on your host. On Linux,
this would be:</P
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
> # dl_edb7xxx <PATH>/gdb_module.bin</PRE
></TD
></TR
></TABLE
><P
>where '<PATH>' is the path to
the binary format version of the ROM image you wish to load, either
as built in the previous section or the "loaders/arm-edb7211/" subdirectory
of your eCos installation. The download tool defaults to 38400 baud and
device /dev/ttyS1 for communication. To change
these, specify them as parameters, e.g.
</P
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
># dl_edb7xxx <PATH>/gdb_module.bin 9600 /dev/ttyS0</PRE
></TD
></TR
></TABLE
></LI
><LI
><P
>The download program will indicate that it is waiting
for the board to come alive. At this point, press 'RESET' and
then 'WAKEUP' switches in order. There should be
some indication of progress, first of the code being downloaded,
then of the programming process.</P
></LI
><LI
><P
>Upon completion of the programming, power off the EDB7211.</P
></LI
><LI
><P
>Remove the 'PROGRAM ENABLE/BOOT ENABLE' jumper.</P
></LI
><LI
><P
>Power on the EDB7211, press 'RESET' and 'WAKEUP'.
The new ROM image should now be running on the board.</P
></LI
><LI
><P
>The GDB debugger will now be able to communicate with
the board to download and debug RAM based programs.
This procedure also applies for loading ROM-startup eCos programs
into the on-board FLASH memory, given a binary format image of the
program from arm-elf-objcopy. Loading a ROM-startup eCos program
into Flash will overwrite the GDB Stub ROM/CygMon in Flash,
so you would have to reload the GDB Stub ROM/CygMon to
return to normal RAM-startup program development.</P
></LI
></OL
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN3902">Building the Flash Downloader on Linux</H2
><P
>eCos provides a Flash download program suitable for use with
the EP7211 Development Board which will run on Linux. Follow these
steps to build this program. Note: at the time of the writing of
these instructions, the download program is built directly within
the eCos source repository since it is
not configuration specific.</P
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
> # cd <eCos install dir>/packages/hal/arm/edb7xxx/<TT
CLASS="REPLACEABLE"
><I
><version></I
></TT
>/support</PRE
></TD
></TR
></TABLE
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
> # make</PRE
></TD
></TR
></TABLE
><P
>(where '# ' is your shell prompt)</P
><P
>Note: this program was adapted from the Cirrus Logic original
DOS program and still contains some vestiges of that environment.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN3910">Developing eCos Programs with the ARM Multi-ICE</H2
><P
>The EP7211 Development Board supports use of the ARM
Multi-processor EmbeddedICE(tm), also known as the
Multi-ICE. Full instructions on how to install and use the
Multi-ICE in conjunction with GDB are provided in the
<SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>"GNUPro Toolkit Reference for eCos
ARM/Thumb"</I
></SPAN
> manual. However, the following
platform-specific details should be noted.</P
><P
>You will need an ARM Multi-ICE Server configuration
file for the EP7211 Development Board. Here is a suggested
configuration file to use:</P
><TABLE
BORDER="5"
BGCOLOR="#E0E0F0"
WIDTH="70%"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>======== File "720T.cfg" ========
;Total IR length = 4
[TITLE]
Multi-ICE configuration for EP7211
[TAP 0]
ARM720T
[TAPINFO]
YES
[Timing]
Low=0
High=0
Adaptive=OFF
==================================</PRE
></TD
></TR
></TABLE
><P
>You must ensure that the board has the appropriate soldered
connections. For the EP7211 this involves connecting TEST0 and TEST1
of the EP7211 to ground. To do this you must solder a wire from
ground at JP33 to TP8 and TP9.</P
><P
>With respect to using multiple devices simultaneously, note
that the EP7211 is not ID sensitive.</P
><P
>If you wish to view diagnostic output from your program that
was downloaded via the Multi-ICE, you will note that by default
the output on the serial line (as viewed by a terminal such as Hyperterm
in Windows, or cu in Unix) is in the form of GDB packets.</P
><P
>To get legible output, the solution is to set the "GDB Serial
port" to a different device from the "Diagnostic serial port", and
you should use the Diagnostic serial port to view the diagnostic
output.</P
><P
>Warning: The multi-ice-gdb-server will fail on startup if
the board has not been both reset and awakened before running the
server. </P
><P
>To resolve this, it is necessary to free up the connection
from within the ARM Multi-ICE server itself. However when this happens,
the next time you use GDB to load the program into the board, you
will see lots of "Readback did not match original data" messages
in the output of the multi-ice-gdb-server program. This indicates
your program did not load correctly, and you should restart the
multi-ice-gdb-server program, taking care to reset the board correctly
before reconnecting. </P
><P
>As a reminder, you must specify --config-dialog to the
multi-ice-gdb-server program to connect to the board
correctly. If you do not, the multi-ice-gdb-server program
will not be able to connect.</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="setup-arm-cma230.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ecos-user-guide.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="setup-arm-ep7212.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>ARM Cogent CMA230 Hardware Setup</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="appendix-target-setup.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Cirrus Logic ARM EP7212 Development Board
Hardware Setup</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -