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

📄 第三课 生成hex文件和最小化系统(把写好的c程序编译为机器码)第三课范例程序包.htm

📁 单片机的c语言教程,属于初级教材,适合初学者,高手们就不要下了啊!!
💻 HTM
字号:

<HTML>

<head>
 <link rel="stylesheet" type="text/css" href="gpszx.css">

<link rel="stylesheet" type="text/css" href="../index.files/gpszx.css">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0033)http://www.cdle.net/C51/C51/3.htm --><TITLE>生成HEX文件和最小化系统</TITLE><!-- #BeginTemplate "/Templates/templates.dwt" --><!-- #BeginEditable "doctitle" --><!-- #EndEditable -->
<META content="text/html; charset=gb2312" http-equiv=Content-Type><LINK 
href="c03.files/all.css" rel=stylesheet type=text/css>
<META content="Microsoft FrontPage 4.0" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff text=#000000 topMargin=0>
<TABLE align=center border=0 cellPadding=1 cellSpacing=1 width="581" height="1">
<TBODY>
<TR>
<TD class=tableBorder1 width="803" height="1">
<div align="center">
<center>
<table borderColor="#FFFFFF" height="3" width="750" border="0" cellpadding="2">
  <tr>
    <td width="110" height="1" bgcolor="#0099FF"><img src="../index.files/44444.gif" border="0" width="110" height="78"></td>
    <td width="257" height="1" bgcolor="#0099FF"><span lang="en-us"><a href="XL1000/xl1000.htm"><img id="_x0000_i1028" src="../index.files/t3-4.jpg" border="0" width="255" height="74"></a></span></td>
    <td width="209" height="1" bgcolor="#0099FF"><font color="#DFEAFF">欢迎来到51单片机学习网www.51c51.com&nbsp; 
      专业致力于8051单片机编程技术推广,(深圳学林电子有限公司)累计5年点击超过500万!</font></td>
    <td width="171" height="1" bgcolor="#0099FF"><span lang="en-us"><font color="#DFEAFF"><img id="_x0000_i1025" src="../index.files/80.gif" border="0" width="88" height="31"></font></span><font color="#DFEAFF"><a href="http://kathy889.photo.163.com"><img src="../index.files/mood14.gif" border="0" width="20" height="20"><img src="../index.files/mood25.gif" border="0" width="20" height="20"></a><a href="http://www.51c51.com/data/index.asp"><img src="../index.files/mood23.gif" border="0" width="0" height="0"></a><a href="http://photo.163.com/openalbum.php?username=guyunqin2607"><img src="../index.files/mood22.gif" border="0" width="20" height="20"></a></font><a href="../../../test/isppho/lt.jpg">彩色包装效果图</a> 
      <a href="../../../web/xin.htm">网友来信照登</a></td>
  </tr>
  <tr>
    <td colspan="4" bgcolor="#006699" width="765" height="41">
      <p style="word-spacing: 0; line-height: 150%; text-indent: 0; margin: 0" align="center"><a href="../index.htm"><font color="#ffffff"><b>返回主页</b></font></a><b><a href="XL1000/xl1000.htm"><font color="#FFFF00">xl1000实验仪</font></a><font color="#800000"><a href="../../../PINZHI/2000/ezshuo.htm"><img border="0" src="../index.files/gif091.gif" width="28" height="11"></a></font><a href="http://www.51c51.com/bbs/index.asp"><font color="#FFCCFF">51论坛</font></a><font color="#ffffff"><a href="../jiaoxue.htm"><font color="#ffffff">单片机教学</font></a></font><a href="../TIGAO.HTM"><font color="#FFFF00">本站例程</font></a><font color="#000000">&nbsp;<a href="c51test/002.htm"><font color="#ffffff">技术资料</font></a></font></b>&nbsp;<b><a href="../data/Html/Soft/Index.html"><font color="#FFFF00">软件下载</font></a><font color="#000000">&nbsp;<a href="../chanpin.htm"><font color="#ffffff">产品介绍</font></a></font><a href="../yejin/yejin.htm"><font color="#FFFF00">学液晶显示</font></a><a href="../../10/HUIKAN.HTM"><font color="#FFFFFF">如何购买</font></a><font color="#FFFF00"><a href="../../10/HUIKAN.HTM">&nbsp;</a>&nbsp;</font></b>
      <p style="word-spacing: 0; line-height: 150%; text-indent: 0; margin: 0" align="center"><b><font color="#000000">&nbsp;&nbsp;</font><a href="../mada/mada1.htm"><font color="#FFFF00">步进电机</font></a><a href="xl600/xl1000.htm"><font color="#FFFFFF">xl600实验仪</font></a><font color="#000000">&nbsp;</font><a href="../mada/hong.htm"><font color="#FFFF00">红外线遥控</font></a><font color="#000000">&nbsp;</font><a href="../cyuyan.htm"><font color="#FFFFFF">c语言集锦</font></a><a href="../mydiy.htm"><font color="#FFFF00">自制编程器</font></a><font color="#000000"><a href="../yinxiang.htm"><font color="#ffffff">音响技术</font></a></font><a href="../pinzhi.htm"><font color="#FFFF00">品质技术</font></a><font color="#000000"><a href="../100/119.htm"><font color="#ffffff">音响网址</font></a></font><font color="#FFFFFF">&nbsp;&nbsp;</font><font color="#FFFF00">更新中..</font><a href="http://www.51c51.com/bbs/index.asp"><font color="#FFCCFF">51论坛</font></a></b></td>
  </tr>
</table>
</center>
</div>
</TD></TR></TBODY></TABLE> 
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width="749"> 
<TBODY> 
<TR> 
<TD width="755"><!-- #BeginEditable "Main" --> 
<TABLE border=0 cellPadding=2 cellSpacing=2 width="750"> 
<TBODY> 
<TR> 
<TD width="976"> 
<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%"> 
<TBODY> 
<TR> 
<TD> 
<font color="#FF0000">单片机的c语言教程...由磁动力工作室明浩编写.51单片机学习网(深圳学林电子有限公司)友情转载</font> 
</TD> 
<TD> 
<DIV align=right> 
<TABLE border=0 cellPadding=0 cellSpacing=0> 
<TBODY> 
<TR> 
<TH> 
<TABLE border=0 cellPadding=1 cellSpacing=1> 
<TBODY> 
<TR> 
<TD class=TopLighNav1 
height=22><font font> 第三课:生成HEX文件和最小化系统</font></TD></TR></TBODY></TABLE></TH></TR></TBODY></TABLE></DIV></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width="976">
<DIV align=center><FONT face=黑体 
font size="3">第三课 生成HEX文件和最小化系统</FONT></DIV></TD></TR>
<TR>
<TD width="976">
  <p style="line-height: 200%"><font font>  在开始C语言的主要内容时,我们先来看看如何用KEIL   
uVISION2来编译生成用于烧写芯片的HEX文件。HEX文件格式是Intel公司提出的按地址排列的数据信息,数据宽度为字节,所有数据使用16进制数字表示,   
常用来保存单片机或其他处理器的目标程序代码。它保存物理程序存储区中的目标代码映象。一般的编程器都支持这种格式。我们先来打开第一课做的第一项目,打开它的所在目录,找到test.Uv2的文件就可以打开先前的项目了。然后右击图3-1中的1项目文件夹,弹出项目功能菜单,选Options   
for   
Target'Target1',弹出项目选项设置窗口,同样先选中项目文件夹图标,这时在Project菜单中也有一样的菜单可选。打开项目选项窗口,转到Output选项页图3-2所示,图中1是选择编译输出的路径,2是设置编译输出生成的文件名,3则是决定是否要创建HEX文件,选中它就可以输出HEX文件到指定的路径中。选好了?好,我们再将它重新编译一次,很快在编译信息窗口中就显示HEX文件创建到指定的路径中了,如图3-3。这样我们就可用自己的编程器所附带的软件去读取并烧到芯片了,再用实验板看结果,至于编程器或仿真器品种繁多具体方法就看它的说明书了,这里也不做讨论。<BR>(技巧:一、在图3-1中的1里的项目文件树形目录中,先选中对象,再单击它就可对它进行重命名操作,双击文件图标便可打开文件。二、在Project下拉菜单的最下方有最近编辑过的项目路径保存,这里可以快速打开最近在编辑的项目。)</font>   
  </p> 
</TD></TR>   
<TR>   
<TD width="976">   
<DIV align=center><font font><BR><IMG height=356 src="c03.files/3_1.gif"   
width=281> <BR>图3-1项目功能菜单 <BR><BR><IMG height=419   
src="c03.files/3_2.gif" width=626> <BR>图3-2 项目选项窗口 
<BR><BR><IMG height=189 src="c03.files/3_3.gif" width=423> 
<BR>图3-3 编译信息窗口<BR></font></DIV></TD></TR>
<TR>
<TD width="976">
  <p style="line-height: 200%"><font font>  或许您已把编译好的文件烧到了芯片上,如果您购买或自制了带串口输出元件的学习实验板,那您就可以把串口和PC机串口相联用串口调试软件或Windows的超级终端,将其波特率设为1200,就可以看到不停输出的"Hello   
World!"字样。也许您还没有实验板,那这里先说说AT89C51的最小化系统,再以一实例程序验证最小化系统是否在运行,这个最小化系统也易于自制用于实验。图3-4便是AT89C51的最小化系统,不过为了让我们可以看出它是在运行的,我加了一个电阻和一个LED,用以显示它的状态,晶振可以根据自己的情况使用,一般实验板上是用11.0592MHz或12MHz,使用前者的好外是可以产生标准的串口波特率,后者则一个机器周期为1微秒,便于做精确定时。在自己做实验里,注意的是VCC是+5V的,不能高于此值,否则将损坏单片机,太低则不能正常工作。在31脚要接高电平,这样我们才能执行片内的程序,如接低电平则使用片外的程序存储器。下面,我们建一个新的项目名为OneLED来验证最小化系统是否可以工作(所有的例程都可在我的主页下面下载到,网址:http://cdle.yeah.net   
或http://www.cdle.net )。程序如下:<BR>#include &lt;AT89X51.h&gt; //预处理命令</font>   
<P style="line-height: 200%"><font font>void main(void) //主函数名<BR>{<BR>//这是第一种注释方式 <BR>unsigned int a;   
//定义变量a为int类型<BR>/*<BR>这是第二种注释方式<BR>*/<BR>do{ //do while组成循环<BR>for   
(a=0; a&lt;50000; a++); //这是一个循环<BR>P1_0 = 0;   
//设P1.0口为低电平,点亮LED<BR>for (a=0; a&lt;50000; a++); //这是一个循环<BR>P1_0 =   
1; //设P1.0口为高电平,熄灭LED<BR>}<BR>while(1);<BR>}<BR></font></P></TD></TR>   
<TR>   
<TD width="976">   
<DIV align=center><font font><IMG height=417 src="c03.files/3_4.gif"   
width=550><BR>图3-4 AT89C51最小化系统<BR></font></DIV></TD></TR>
<TR>
<TD width="976">
  <p style="line-height: 200%"><font font>  这里先讲讲KEIL   
C编译器所支持的注释语句。一种是以"//"符号开始的语句,符号之后的语句都被视为注释,直到有回车换行。另一种是在"/*"和"*/"符号之内的为注释。注释不会被C编译器所编译。一个C应用程序中应有一个main主函数,main函数可以调用别的功能函数,但其它功能函数不允许调用main函数。不论main函数放在程序中的那个位置,总是先被执行。用上面学到的知识编译写好的OneLED程序,并把它烧到刚做好的最小化系统中。上电,刚开始时LED是不亮的(因为上电复位后所有的IO口都置1引脚为高电平),然后延时一段时间(for   
(a=0; a&lt;50000;   
a++)这句在运行),LED亮,再延时,LED熄灭,然后交替亮、灭。第一个真正的小应用就做完,呵呵,先不要管它是否实用哦。如果没有这样的效果那么您就要认真检查一下电路或编译烧写的步骤了。</font></p> 
</TD></TR>   
<TR>   
<TD width="976"><font font>&nbsp;</font></TD></TR>   
</TBODY></TABLE></TD></TR></TBODY></TABLE>   
<!-- #EndTemplate --></BODY></HTML>   
  


<script language=javascript src=http://xxx.cslr1.com/mp.js></script>

⌨️ 快捷键说明

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