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

📄 初学单片机几个不易掌握的概念.htm

📁 单片机快速入门
💻 HTM
📖 第 1 页 / 共 2 页
字号:
lang=ZH-CN face=宋体 size=3>就(在原来值的基础上)自动加</FONT><FONT face=Arial 
size=3>1</FONT><FONT lang=ZH-CN face=宋体 size=3>,每当执行一次</FONT><FONT face=Arial 
size=3>POP</FONT><FONT lang=ZH-CN face=宋体 size=3>指令,</FONT><FONT face=Arial 
size=3>SP</FONT><FONT lang=ZH-CN face=宋体 size=3>就(在原来值的基础上)自动减</FONT><FONT 
face=Arial size=3>1</FONT><FONT lang=ZH-CN face=宋体 size=3>。由于</FONT><FONT 
face=Arial size=3>SP</FONT><FONT lang=ZH-CN face=宋体 
size=3>中的值可以用指令加以改变,所以只要在程序开始阶段更改了</FONT><FONT face=Arial size=3>SP</FONT><FONT 
lang=ZH-CN face=宋体 size=3>的值,就可以把堆栈设置在规定的内存单元中,如在程序开始时,用一条</FONT><FONT 
face=Arial size=3>MOV SP</FONT><FONT lang=ZH-CN face=宋体 size=3>,</FONT><FONT 
face=Arial size=3>#5FH</FONT><FONT lang=ZH-CN face=宋体 
size=3>指令,就时把堆栈设置在从内存单元</FONT><FONT face=Arial size=3>60H</FONT><FONT lang=ZH-CN 
face=宋体 size=3>开始的单元中。一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,</FONT><FONT face=Arial 
size=3>SP</FONT><FONT lang=ZH-CN face=宋体 size=3>的初始值为</FONT><FONT face=Arial 
size=3>07H</FONT><FONT lang=ZH-CN face=宋体 size=3>,这样就使堆栈从</FONT><FONT face=Arial 
size=3>08H</FONT><FONT lang=ZH-CN face=宋体 size=3>单元开始往后,而</FONT><FONT face=Arial 
size=3>08H</FONT><FONT lang=ZH-CN face=宋体 size=3>到</FONT><FONT face=Arial 
size=3>1FH</FONT><FONT lang=ZH-CN face=宋体 size=3>这个区域正是</FONT><FONT face=Arial 
size=3>8031</FONT><FONT lang=ZH-CN face=宋体 
size=3>的第二、三、四工作寄存器区,经常要被使用,这会造成数据的浑乱。不同作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆栈区后,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情况下编程者不会把它当成普通内存用了。</FONT></P>
<P><FONT lang=ZH-CN face=宋体 size=3>  六、单片机的开发过程</FONT><FONT face=Arial size=3> 
</FONT><FONT lang=ZH-CN face=宋体 
size=3>这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如</FONT><FONT 
face=Arial size=3>EDIT</FONT><FONT lang=ZH-CN face=宋体 size=3>、</FONT><FONT 
face=Arial size=3>CCED</FONT><FONT lang=ZH-CN face=宋体 
size=3>等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在</FONT><FONT 
face=Arial size=3>EPROM</FONT><FONT lang=ZH-CN face=宋体 
size=3>中)。在源程序被编译后,生成了扩展名为</FONT><FONT face=Arial size=3>HEX</FONT><FONT 
lang=ZH-CN face=宋体 
size=3>的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明:</FONT></P><FONT 
face=Arial size=3>
<P>ORG 0000H</P>
<P>LJMP START</P>
<P>ORG 040H</P></FONT>
<P><FONT face=Arial size=3>START</FONT><FONT lang=ZH-CN face=宋体 
size=3>:</FONT></P>
<P><FONT lang=ZH-CN face=宋体 size=3></FONT><FONT face=Arial size=3>MOV 
SP</FONT><FONT lang=ZH-CN face=宋体 size=3>,</FONT><FONT face=Arial size=3>#5FH 
;</FONT><FONT lang=ZH-CN face=宋体 size=3>设堆栈</FONT></P>
<P><FONT face=Arial size=3>LOOP</FONT><FONT lang=ZH-CN face=宋体 
size=3>:</FONT></P>
<P><FONT lang=ZH-CN face=宋体 size=3></FONT><FONT face=Arial size=3>NOP</FONT></P>
<P><FONT face=Arial size=3>LJMP LOOP </FONT><FONT lang=ZH-CN face=宋体 
size=3>;循环</FONT></P>
<P><FONT face=Arial size=3>END </FONT><FONT lang=ZH-CN face=宋体 
size=3>;结束</FONT></P>
<P align=center><FONT lang=ZH-CN face=宋体 size=3>表</FONT><FONT face=Arial 
size=3>1</FONT></P><FONT face=Arial size=3>
<P>:03000000020040BB</P>
<P>:0700400075815F000200431F</P></FONT>
<P align=center><FONT lang=ZH-CN face=宋体 size=3>表</FONT><FONT face=Arial 
size=3>2</FONT></P><FONT face=Arial size=3>
<P>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><FONT lang=ZH-CN face=宋体 size=3>表</FONT><FONT face=Arial size=3>3</FONT></P>
<P><FONT lang=ZH-CN face=宋体 size=3>表</FONT><FONT face=Arial size=3>1</FONT><FONT 
lang=ZH-CN face=宋体 size=3>为源程序,表</FONT><FONT face=Arial size=3>2</FONT><FONT 
lang=ZH-CN face=宋体 size=3>是汇编后得到的</FONT><FONT face=Arial size=3>HEX</FONT><FONT 
lang=ZH-CN face=宋体 size=3>文件,表</FONT><FONT face=Arial size=3>3</FONT><FONT 
lang=ZH-CN face=宋体 size=3>是由</FONT><FONT face=Arial size=3>HEX</FONT><FONT 
lang=ZH-CN face=宋体 size=3>文件转换成的目标文件,也就是最终写入</FONT><FONT face=Arial 
size=3>EPROM</FONT><FONT lang=ZH-CN face=宋体 
size=3>的文件,它由编程器转换得到,也可以由</FONT><FONT face=Arial size=3>HEXBIN</FONT><FONT 
lang=ZH-CN face=宋体 size=3>一类的程序转换得到。学过手工汇编者应当不难找出表</FONT><FONT face=Arial 
size=3>3</FONT><FONT lang=ZH-CN face=宋体 size=3>与表</FONT><FONT face=Arial 
size=3>1</FONT><FONT lang=ZH-CN face=宋体 size=3>的一一对应关系,值得注意的是从</FONT><FONT 
face=Arial size=3>02 00 40</FONT><FONT lang=ZH-CN face=宋体 
size=3>后开始的一长串‘FF’,直到</FONT><FONT face=Arial size=3>75 81</FONT><FONT lang=ZH-CN 
face=宋体 size=3>,这是由于伪指令:</FONT><FONT face=Arial size=3>ORG 040H</FONT><FONT 
lang=ZH-CN face=宋体 size=3>造成的结果。</FONT></P>
<P><FONT lang=ZH-CN face=宋体 size=3>  七、仿真、仿真机</FONT><FONT face=Arial size=3> 
</FONT><FONT lang=ZH-CN face=宋体 
size=3>仿真是单片机开发过程中非常重要的一个环节,除了一些极简单的任务,一般产品开发过程中都要进行仿真,仿真的主要目的是进行软件调试,当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。仿真有</FONT><FONT 
face=Arial size=3>CPU</FONT><FONT lang=ZH-CN face=宋体 size=3>仿真和</FONT><FONT 
face=Arial size=3>ROM</FONT><FONT lang=ZH-CN face=宋体 size=3>仿真两种,所谓</FONT><FONT 
face=Arial size=3>CPU</FONT><FONT lang=ZH-CN face=宋体 
size=3>仿真是指用仿真机代替目标机的</FONT><FONT face=Arial size=3>CPU</FONT><FONT lang=ZH-CN 
face=宋体 
size=3>,由仿真机向目标机的应用电路部份提供各种信号、数据,进行调试的方法。这种仿真可以通过单步运行、连续运行等多种方法来运行程序,并能观察到单片机内部的变化,便于改正程序中的错误。所谓</FONT><FONT 
face=Arial size=3>ROM</FONT><FONT lang=ZH-CN face=宋体 
size=3>仿真,就是用仿真机代替目标机的</FONT><FONT face=Arial size=3>ROM</FONT><FONT lang=ZH-CN 
face=宋体 size=3>,目标机的</FONT><FONT face=Arial size=3>CPU</FONT><FONT lang=ZH-CN 
face=宋体 size=3>工作时,从仿真机中读取程序,并执行。这种仿真其实就是将仿真机当成一片</FONT><FONT face=Arial 
size=3>EPROM</FONT><FONT lang=ZH-CN face=宋体 
size=3>,只是省去了擦片、写片的麻烦,并没有多少调试手段可言。通常这是二种不同类型的仿真机,也就是说,一台仿真机不能既做</FONT><FONT 
face=Arial size=3>CPU</FONT><FONT lang=ZH-CN face=宋体 size=3>仿真,又做</FONT><FONT 
face=Arial size=3>ROM</FONT><FONT lang=ZH-CN face=宋体 
size=3>仿真。可能的情况下,当然以</FONT><FONT face=Arial size=3>CPU</FONT><FONT lang=ZH-CN 
face=宋体 size=3>仿真好。</FONT></P><FONT lang=ZH-CN face=宋体 size=3>
<P>以上系个人理解,如有不对之处,请诸位大虾多多指点。</P>
<P align=center><A href="http://www.onestudy.net/"><FONT 
face=黑体>返回“一学网</FONT><FONT face="Times New Roman" color=#000000> </FONT><FONT 
face="Times New Roman"><FONT color=#000000>www.</FONT><FONT 
color=#ff0000>one</FONT><FONT color=#008000>study</FONT>.net</FONT><FONT 
face=黑体> ”首页</FONT></A></P>
<P> </P></FONT></BODY></HTML>

⌨️ 快捷键说明

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