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

📄 some.htm

📁 本单片机教程是平凡老师花了大量时间
💻 HTM
📖 第 1 页 / 共 2 页
字号:
  </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如</FONT><FONT FACE="Arial" SIZE=2>EDIT</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>、</FONT><FONT FACE="Arial" SIZE=2>CCED</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在</FONT><FONT FACE="Arial" SIZE=2>EPROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>中)。在源程序被编译后,生成了扩展名为</FONT><FONT FACE="Arial" SIZE=2>HEX</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明:</font></P>
<FONT FACE="Arial" SIZE=2>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">ORG&#9;0000H</P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">&#9;LJMP&#9;START</P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">&#9;ORG&#9;040H</P>
</FONT><P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>START</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>:</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>MOV&#9;SP</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>,</FONT><FONT FACE="Arial" SIZE=2>#5FH ;</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>设堆栈</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>LOOP</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>:</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>NOP</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>&#9;LJMP&#9;LOOP&#9;</font>
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>;循环</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="Arial" SIZE=2>END&#9;&#9;&#9;&#9;</font>
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>;结束</font></P>
<P ALIGN="CENTER" style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>表</font><FONT FACE="Arial" SIZE=2>1</font></P>
<FONT FACE="Arial" SIZE=2>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">:03000000020040BB</P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">:0700400075815F000200431F</P>
</FONT>
<P ALIGN="CENTER" style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>表</font><FONT FACE="Arial" SIZE=2>2</font></P>
<FONT FACE="Arial" SIZE=2>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">02 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 75 81 5F 00 02 00 43</P>
</FONT><P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>&#9;&#9;&#9;&#9;表</font><FONT FACE="Arial" SIZE=2>3</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>表</font><FONT FACE="Arial" SIZE=2>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>为源程序,表</FONT><FONT FACE="Arial" SIZE=2>2</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>是汇编后得到的</FONT><FONT FACE="Arial" SIZE=2>HEX</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>文件,表</FONT><FONT FACE="Arial" SIZE=2>3</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>是由</FONT><FONT FACE="Arial" SIZE=2>HEX</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>文件转换成的目标文件,也就是最终写入</FONT><FONT FACE="Arial" SIZE=2>EPROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>的文件,它由编程器转换得到,也可以由</FONT><FONT FACE="Arial" SIZE=2>HEXBIN</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>一类的程序转换得到。学过手工汇编者应当不难找出表</FONT><FONT FACE="Arial" SIZE=2>3</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>与表</FONT><FONT FACE="Arial" SIZE=2>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>的一一对应关系,值得注意的是从</FONT><FONT FACE="Arial" SIZE=2>02 00 40</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>后开始的一长串‘FF’,直到</FONT><FONT FACE="Arial" SIZE=2>75 81</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>,这是由于伪指令:</FONT><FONT FACE="Arial" SIZE=2>ORG&#9;#9; 040H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>造成的结果。</font></P>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0"> 
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2>  七、仿真、仿真机</font><FONT FACE="Arial" SIZE=2> 
  </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真是单片机开发过程中非常重要的一个环节,除了一些极简单的任务,一般产品开发过程中都要进行仿真,仿真的主要目的是进行软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。仿真有</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真和</FONT><FONT FACE="Arial" SIZE=2>ROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真两种,所谓</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真是指用仿真机代替目标机的</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>,由仿真机向目标机的应用电路部份提供各种信号、数据,进行调试的方法。这种仿真可以通过单步运行、连续运行等多种方法来运行程序,并能观察到单片机内部的变化,便于改正程序中的错误。所谓</FONT><FONT FACE="Arial" SIZE=2>ROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真,就是用仿真机代替目标机的</FONT><FONT FACE="Arial" SIZE=2>ROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>,目标机的</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>工作时,从仿真机中读取程序,并执行。这种仿真其实就是将仿真机当成一片</FONT><FONT FACE="Arial" SIZE=2>EPROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>,只是省去了擦片、写片的麻烦,并没有多少调试手段可言。通常这是二种不同类型的仿真机,也就是说,一台仿真机不能既做</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真,又做</FONT><FONT FACE="Arial" SIZE=2>ROM</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真。可能的情况下,当然以</FONT><FONT FACE="Arial" SIZE=2>CPU</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=2>仿真好。</font></P>
<FONT FACE="宋体" LANG="ZH-CN" SIZE=2> 
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0">以上系个人对单片机的理解,如有不对之处,请诸位大虾多多指点。<a href="http://czlyzhj.abc.yesite.com">发表您的高见</a>。</P>
</FONT> 
<p style="line-height: 150%; margin-top: 0; margin-bottom: 0"><font size="2">本文欢迎转载,请注明出自</font><a href="http://teach51.yeah.net"><font size="2">平凡的单片机</font></a></p>
<p style="line-height: 150%; margin-top: 0; margin-bottom: 0"> </p><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>
<P style="line-height: 150%; margin-top: 0; margin-bottom: 0"> </P>
</FONT>
</BODY>
</HTML>

⌨️ 快捷键说明

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