⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 at91rm9200-basic.html

📁 AT91RM9200-BasicMmu-ARM1_2-2_0使用文件
💻 HTML
字号:
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./AT91RM9200-Basic_files/filelist.xml">
<link rel=Edit-Time-Data href="./AT91RM9200-Basic_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>AT91 Simple project for AT91RM9200DK</title>
<style>
<!--
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-parent:"";
	margin:0cm;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
p
	{margin-right:0cm;
	mso-margin-top-alt:auto;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
@page Section1
	{size:595.3pt 841.9pt;
	margin:70.85pt 70.85pt 70.85pt 70.85pt;
	mso-header-margin:35.4pt;
	mso-footer-margin:35.4pt;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
 /* List Definitions */
@list l0
	{mso-list-id:373194538;
	mso-list-type:hybrid;
	mso-list-template-ids:-1987924330 1216243618 750009558 1412596114 1172232512 -145956616 649264768 891614844 2069632284 518524162;}
@list l0:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l1
	{mso-list-id:401416046;
	mso-list-type:hybrid;
	mso-list-template-ids:-934647644 -1008823580 -1241617142 -1252250110 1726260940 1354239734 2039097408 2055351888 823024396 891315562;}
@list l1:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l2
	{mso-list-id:858353630;
	mso-list-type:hybrid;
	mso-list-template-ids:-572097302 -1174483612 686183836 -1437042934 347089920 1469481836 622513762 319172178 1155183474 -1104103834;}
@list l2:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l3
	{mso-list-id:1264068758;
	mso-list-type:hybrid;
	mso-list-template-ids:2008416490 -1838905434 1499858244 1482819036 220499760 -1924089772 -347312334 1077956950 -530559626 191427904;}
@list l3:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l4
	{mso-list-id:1837189801;
	mso-list-type:hybrid;
	mso-list-template-ids:-51374956 -342995782 -581818016 -1786876912 248257074 1152180100 1283381562 550816328 -454534262 1385310432;}
@list l4:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:36.0pt;
	mso-level-number-position:left;
	text-indent:-18.0pt;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=EN-GB style='tab-interval:36.0pt'>

<div class=Section1>

<p><!--[if gte vml 1]><v:shapetype id="_x0000_t202" coordsize="21600,21600"
 o:spt="202" path="m0,0l0,21600,21600,21600,21600,0xe">
 <v:stroke joinstyle="miter"/>
 <v:path gradientshapeok="t" o:connecttype="rect"/>
</v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t202" style='position:absolute;
 margin-left:32.55pt;margin-top:-2.05pt;width:396pt;height:36pt;z-index:1'/><![endif]--><![if !vml]><span
style='mso-ignore:vglayout;position:relative;z-index:0'><span style='position:
absolute;left:43px;top:-3px;width:531px;height:51px'>


<table cellpadding=0 cellspacing=0>
 <tr>
  <td width=531 height=51 align=left valign=top bgcolor=white style='border:
  .75pt solid black;vertical-align:top;background:white'><![endif]><![if !mso]><span
  style='position:absolute;z-index:1'>
  <table cellpadding=0 cellspacing=0 width="100%">
   <tr>
    <td><![endif]>
    <div v:shape="_x0000_s1026" style='padding:3.6pt 7.2pt 3.6pt 7.2pt'
    class=shape>
    <p align=center style='text-align:center'><b><span style='font-size:18.0pt;
    mso-bidi-font-size:13.5pt;font-family:Arial;color:#FF6600'>AT91 Basic
    project for AT91RM9200DK<o:p></o:p></span></b></p>
    <p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
    </div>
    <![if !mso]></td>
   </tr>
  </table>
  </span><![endif]><![if !mso & !vml]>&nbsp;<![endif]><![if !vml]></td>
 </tr>
</table>

</span></span><![endif]><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
<!-- ******* title  ********** !-->
<P><div align="right"><A>Version: 2.0</A></div>

<p><b><i><span style='font-family:Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></i></b></p>
<p><b><i><span style='font-family:Arial'>Introduction<o:p></o:p></span></i></b></p>

<p><span style='font-size:10.0pt'>The goal of this demonstration project is to
show how to use AT91 ARM-Based Software Package and how to configure a software cross compilation
tool-chain to get a binary downloadable on an <b>AT91RM9200DK</b> board.<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>This very small application sends through the DBGU serial port messages corresponding to the function name where the printing function has been invoked.<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>The application binary can be downloaded using the boot program ROMed in AT91RM9200 chip. It can be downloaded:<o:p></o:p></span></p>

<ul type=disc>
 <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
     mso-list:l2 level1 lfo3;tab-stops:list 36.0pt'><span style='font-size:
     10.0pt'>Sending a file using Xmodem protocol through a serial link
     configured to 115200 bps, no parity, 1 stop bit, no flow control.<o:p></o:p></span></li>
 <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
     mso-list:l2 level1 lfo3;tab-stops:list 36.0pt'><span style='font-size:
     10.0pt'>Sending a file using USB DFU facility <o:p></o:p></span></li>
</ul>
<P><!-- ******* Contents  ********** !-->
<div align="left"><B>Contents:</div></B><DIR>
</div> <div align="left"><A HREF="#Reference_Documents">Reference Documents</A>
</div> <div align="left"><A HREF="#Description">Description</A></div>
</div> <div align="left"><A HREF="#Source_Files">Source Files</A>
</div> <div align="left"><a href="../compil/tools.html">Compilation</A>
</div> <div align="left"><a href="AT91RM9200-Download.html">Download</a></li>
</div> <div align="left"><a HREF="#trace">DBUG Trace</a></li>
</DIR>
</P>

<!-- ******* Reference  ********** !-->
<P><div align="left"><A NAME="Reference_Documents"><B>Reference Documents</A></div></B> </P><DIR>

<TABLE BORDER CELLSPACING=1 CELLPADDING=7 WIDTH=550>
<TR><TD WIDTH="80%" VALIGN="TOP">Name</TD>
<TD WIDTH="20%" VALIGN="TOP">
<FONT SIZE=2><P>Reference</FONT></TD>
</TR>
<TR><TD WIDTH="80%" VALIGN="TOP">
<FONT SIZE=2><P>ARM-Based Software Package</FONT></TD>
<TD WIDTH="20%" VALIGN="TOP">
<FONT SIZE=2><P>6016</FONT></TD>
</TR>
<TR><TD WIDTH="80%" VALIGN="TOP">ARM920T based Microcontroller AT91RM9200 Datasheet</TD>
<TD WIDTH="20%" VALIGN="TOP">
<FONT SIZE=2><P>1768</FONT></TD>
</TR>
</TR>
<TR><TD WIDTH="80%" VALIGN="TOP">AT91RM9200 Development Kit User Guide</TD>
<TD WIDTH="20%" VALIGN="TOP">
<FONT SIZE=2><P>6006</FONT></TD>
</TR>
</TABLE>
</DIR>

<p><b><i><span style='font-family:Arial'><A NAME="Description">Description<o:p></o:p></span></i></b></p>

<p><span style='font-size:10.0pt'>The main application is ridiculously simple:
it just writes main() through the DBGU serial port. This is the start-point to
write a more complex application running on an AT91RM9200.<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>The startup of this application is divided in
two files: one in assembly and one in C. Assembly code tends to be as small as
possible and thus calls C functions as soon as possible.<o:p></o:p></span></p>

<table border=1 cellspacing=1 cellpadding=0 width=568 style='width:426.0pt;
 mso-cellspacing:.7pt;mso-padding-alt:5.25pt 5.25pt 5.25pt 5.25pt'>
 <tr>
  <td width="50%" valign=top style='width:50.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p align=center style='text-align:center'><b><span style='font-size:10.0pt'>cstartup.xxx</span></b></p>
  </td>
  <td width="50%" valign=top style='width:50.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p align=center style='text-align:center'><b><span style='font-size:10.0pt'>init.c</span></b></p>
  </td>
 </tr>
 <tr>
  <td width="50%" valign=top style='width:50.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <ul type=disc>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l4 level1 lfo6;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>The initialization sequence is:<o:p></o:p></span></li>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l4 level1 lfo6;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>Initialize stacks<o:p></o:p></span></li>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l4 level1 lfo6;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>Call AT91F_initialize<o:p></o:p></span></li>
  </ul>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>Initialize C variables<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>Call the main function</span></p>
  </td>
  <td width="50%" valign=top style='width:50.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>
  <ul type=disc>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l3 level1 lfo9;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>clear all pending interrupts in the AIC<o:p></o:p></span></li>
  </ul>
  <p><i><span style='font-size:7.5pt'>(following can be done later in the main
  application)<o:p></o:p></span></i></p>
  <ul type=disc>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l1 level1 lfo12;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>Open PIO for DBGU <o:p></o:p></span></li>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l1 level1 lfo12;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>Enable DBGU transmission<o:p></o:p></span></li>
   <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
       auto;mso-list:l1 level1 lfo12;tab-stops:list 36.0pt'><span
       style='font-size:10.0pt'>Send a first <o:p></o:p></span></li>
  </ul>
  </td>
 </tr>
</table>

<p><span style='font-size:10.0pt'>&nbsp;<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>More complex application would configure more
things in init.c. It would configure first the APMC to run at a correct speed.
It may also configure EBI and perform a REMAP. This small application is
supposed to be run after the boot program, so the APMC is configured and the
REMAP is done.<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>Stacks are defined in cstartup_xxx.s. Stack
sizes corresponds to predefines set in the project makefile. Cstartup_xxx.s
must be placed at the beginning of the image.<o:p></o:p></span></p>

<p><span style='font-size:10.0pt'>Code must be mapped at 0. (Thus REMAP must
have been performed previously).<o:p></o:p></span></p>

<p><b><i><span style='font-family:Arial'><A NAME="Source_Files">Source files<o:p></o:p></span></i></b></p>

<table border=1 cellspacing=1 cellpadding=0 width=555 style='width:416.25pt;
 mso-cellspacing:.7pt;mso-padding-alt:5.25pt 5.25pt 5.25pt 5.25pt'>
 <tr>
  <td width="20%" valign=top style='width:34.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><i><span style='font-size:10.0pt'>../init.c</span></i></p>
  </td>
  <td width="80%" valign=top style='width:66.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><span style='font-size:10.0pt'>Includes low level functions definitions</span></p>
  </td>
 </tr>
 <tr>
  <td width="20%" valign=top style='width:34.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><i><span style='font-size:10.0pt'>../main.c</span></i></p>
  </td>
  <td width="80%" valign=top style='width:66.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><span style='font-size:10.0pt'>this is the application</span></p>
  </td>
 </tr>
 <tr>
  <td width="20%" valign=top style='width:34.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><i><span style='font-size:10.0pt'>../compil/cstartup.xxx</span></i></p>
  </td>
  <td width="80%" valign=top style='width:66.0%;padding:5.25pt 5.25pt 5.25pt 5.25pt'>
  <p><span style='font-size:10.0pt'>cstartup </span></p>
  </td>
 </tr>
</table>

<p><b><i><span style='font-family:Arial'><A NAME="trace">DBUG Trace<o:p></o:p></span></i></b></p>

<div align="left">AT91F_LowLevelInit()

<div align="left">-I- ======================================</div>
<div align="left">-I- AT91RM9200 UART example</div>
<div align="left">-I- --------------------------------------</div>
<div align="left">-I- This application print a '.' each second</div>
<div align="left">-I- ======================================</div>
<div align="left">.........</div>

</body>

</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -