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

📄 dpjjx14.htm

📁 单片机入门的好书
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<P ALIGN="JUSTIFY">RL&#9;&#9;&#9;A</P>
<P ALIGN="JUSTIFY">CLR&#9;&#9;&#9;C</P>
<P ALIGN="JUSTIFY">RRC&#9;&#9;&#9;A</P>
<P ALIGN="JUSTIFY">SETB&#9;&#9;      C</P>
<P ALIGN="JUSTIFY">RLC&#9;&#9;&#9;A</P>
<P ALIGN="JUSTIFY">SWAP&#9;&#9;      A</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN"><P ALIGN="JUSTIFY">通过前面的学习,我们已经掌握了相当一部份的指令,大家对这些枯燥的指令可能也有些厌烦了,下面让我们轻松一下,做个实验。</P>
<P ALIGN="JUSTIFY">实验五:</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY">  ORG     0000H</P>
<P ALIGN="JUSTIFY">        LJMP    START</P>
<P ALIGN="JUSTIFY">        ORG     30H</P>
<P ALIGN="JUSTIFY">START:</P>
<P ALIGN="JUSTIFY">        MOV     SP,#5FH</P>
<P ALIGN="JUSTIFY">        MOV     A,#80H</P>
<P ALIGN="JUSTIFY">LOOP:</P>
<P ALIGN="JUSTIFY">        MOV     P1,A</P>
<P ALIGN="JUSTIFY">        RL      A</P>
<P ALIGN="JUSTIFY">        LCALL   DELAY</P>
<P ALIGN="JUSTIFY">        LJMP    LOOP</P>
<P ALIGN="JUSTIFY">delay:</P>
<P ALIGN="JUSTIFY">&#9;mov&#9; r7,#255</P>
<P ALIGN="JUSTIFY">d1:&#9;mov&#9; r6,#255</P>
<P ALIGN="JUSTIFY">d2:&#9;nop</P>
<P ALIGN="JUSTIFY">&#9;nop</P>
<P ALIGN="JUSTIFY">&#9;nop</P>
<P ALIGN="JUSTIFY">&#9;nop</P>
<P ALIGN="JUSTIFY">&#9;djnz&#9;    r6,d2</P>
<P ALIGN="JUSTIFY">&#9;djnz &#9;r7,d1</P>
<P ALIGN="JUSTIFY">&#9;ret</P>
<P ALIGN="JUSTIFY">&#9;END</P>
</FONT><FONT FACE="宋体" LANG="ZH-CN"><P ALIGN="JUSTIFY">先让我们将程序写入片中,装进实验板,看一看现象。</P>
<P ALIGN="JUSTIFY">。</P>
<P ALIGN="JUSTIFY">。</P>
<P ALIGN="JUSTIFY">看到的是一个暗点流动的现象,让我们来分析一下吧。</P>
</FONT><P ALIGN="JUSTIFY"><FONT FACE="宋体" LANG="ZH-CN">前而的</font><FONT FACE="System" LANG="ZH-CN">ORG 0000H</FONT><FONT FACE="宋体" LANG="ZH-CN">、</FONT><FONT FACE="System" LANG="ZH-CN">LJMP&#9;START</FONT><FONT FACE="宋体" LANG="ZH-CN">、</FONT><FONT FACE="System" LANG="ZH-CN">ORG&#9;30H</FONT><FONT FACE="宋体" LANG="ZH-CN">等我们稍后分析。从</FONT><FONT FACE="System" LANG="ZH-CN">START</FONT><FONT FACE="宋体" LANG="ZH-CN">开始,</FONT><FONT FACE="System" LANG="ZH-CN">MOV&#9;SP</FONT><FONT FACE="宋体" LANG="ZH-CN">,</FONT><FONT FACE="System" LANG="ZH-CN">#5FH</FONT><FONT FACE="宋体" LANG="ZH-CN">,这是初始化堆栈,在本程序中有无此句无关紧要,不过我们慢慢开始接触正规的编程,我也就慢慢给大家培养习惯吧。</font></P>
<P ALIGN="JUSTIFY"><FONT FACE="System" LANG="ZH-CN">MOV &#9;A</font><FONT FACE="宋体" LANG="ZH-CN">,</FONT><FONT FACE="System" LANG="ZH-CN">#80H</FONT><FONT FACE="宋体" LANG="ZH-CN">,将</FONT><FONT FACE="System" LANG="ZH-CN">80H</FONT><FONT FACE="宋体" LANG="ZH-CN">这个数送到</FONT><FONT FACE="System" LANG="ZH-CN">A</FONT><FONT FACE="宋体" LANG="ZH-CN">中去。干什么呢?不知道,往下看。</font></P>
<P ALIGN="JUSTIFY"><FONT FACE="System" LANG="ZH-CN">MOV&#9;P1</font><FONT FACE="宋体" LANG="ZH-CN">,</FONT><FONT FACE="System" LANG="ZH-CN">A</FONT><FONT FACE="宋体" LANG="ZH-CN">。将</FONT><FONT FACE="System" LANG="ZH-CN">A</FONT><FONT FACE="宋体" LANG="ZH-CN">中的值送到</FONT><FONT FACE="System" LANG="ZH-CN">P1</FONT><FONT FACE="宋体" LANG="ZH-CN">端口去。此时</FONT><FONT FACE="System" LANG="ZH-CN">A</FONT><FONT FACE="宋体" LANG="ZH-CN">中的值是</FONT><FONT FACE="System" LANG="ZH-CN">80H</FONT><FONT FACE="宋体" LANG="ZH-CN">,所以送出去的也就是</FONT><FONT FACE="System" LANG="ZH-CN">80H</FONT><FONT FACE="宋体" LANG="ZH-CN">,因此</FONT><FONT FACE="System" LANG="ZH-CN">P1</FONT><FONT FACE="宋体" LANG="ZH-CN">口的值是</FONT><FONT FACE="System" LANG="ZH-CN">80H</FONT><FONT FACE="宋体" LANG="ZH-CN">,也就是</FONT><FONT FACE="System" LANG="ZH-CN">10000000B</FONT><FONT FACE="宋体" LANG="ZH-CN">,通过前面的分析,我们应当知道,此时</FONT><FONT FACE="System" LANG="ZH-CN">P1</FONT><FONT FACE="宋体" LANG="ZH-CN">。</FONT><FONT FACE="System" LANG="ZH-CN">7</FONT><FONT FACE="宋体" LANG="ZH-CN">接的</FONT><FONT FACE="System" LANG="ZH-CN">LED</FONT><FONT FACE="宋体" LANG="ZH-CN">是不亮的,而其它的</FONT><FONT FACE="System" LANG="ZH-CN">LED</FONT><FONT FACE="宋体" LANG="ZH-CN">都是亮的,所以就形成了一个“暗点”。继续看,</FONT><FONT FACE="System" LANG="ZH-CN">RL&#9;A</FONT><FONT FACE="宋体" LANG="ZH-CN">,</FONT><FONT FACE="System" LANG="ZH-CN">RL&#9;A</FONT><FONT FACE="宋体" LANG="ZH-CN">是将</FONT><FONT FACE="System" LANG="ZH-CN">A</FONT><FONT FACE="宋体" LANG="ZH-CN">中的值进行左移,算一下,移之后的结果是什么?对了,是</FONT><FONT FACE="System" LANG="ZH-CN">01H</FONT><FONT FACE="宋体" LANG="ZH-CN">,也就是</FONT><FONT FACE="System" LANG="ZH-CN">00000001B</FONT><FONT FACE="宋体" LANG="ZH-CN">,这样,应当是接在</FONT><FONT FACE="System" LANG="ZH-CN">P1</FONT><FONT FACE="宋体" LANG="ZH-CN">。</FONT><FONT FACE="System" LANG="ZH-CN">0</FONT><FONT FACE="宋体" LANG="ZH-CN">上的</FONT><FONT FACE="System" LANG="ZH-CN">LED</FONT><FONT FACE="宋体" LANG="ZH-CN">不亮,而其它的都亮了,从现象上看“暗点”流到了后面。然后是调用延时程序,这个我们很熟悉了,让这个“暗点”“暗”一会儿。然后又调转到</FONT><FONT FACE="System" LANG="ZH-CN">LOOP</FONT><FONT FACE="宋体" LANG="ZH-CN">处(</FONT><FONT FACE="System" LANG="ZH-CN">LJMP&#9;LOOP</FONT><FONT FACE="宋体" LANG="ZH-CN">)。请大家计算一下,下面该哪个灯不亮了。。。。。对了,应当是接在</FONT><FONT FACE="System" LANG="ZH-CN">P1</FONT><FONT FACE="宋体" LANG="ZH-CN">。</FONT><FONT FACE="System" LANG="ZH-CN">1</FONT><FONT FACE="宋体" LANG="ZH-CN">上灯不亮了。这样依次循环,就形成了“暗点流动”这一现象。</font></P><FONT FACE="宋体" LANG="ZH-CN">
<P ALIGN="JUSTIFY">问题:</P>
<OL>

<P ALIGN="JUSTIFY"><LI>如何实现亮点流动?</LI><p></P>
<P ALIGN="JUSTIFY"><LI>如何改变流动的方向?</LI><p></P></OL>

<P ALIGN="JUSTIFY">答案:</P>
<P ALIGN="JUSTIFY">1、将A中的初始值改为7FH即可。&#9;</P>
<P ALIGN="JUSTIFY">2、将RL A改为RR A即可。</P>
<P ALIGN="JUSTIFY">&nbsp;</P>
</FONT></BODY>
</HTML>

⌨️ 快捷键说明

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