这篇文章首要来介绍一下51单片机的串口,下面先来看一下与串口相关的寄存器。
图1 (该图来自51单片机技能文档)
下面来逐一介绍个寄存器。
SCON寄存器的SM1,SM2首要用来设置串行口的工作办法,详细对应联系见图2,REN:串行口承受使能位,当单片机要承受数据时该位应该置一,TB8:发送数据的第九位。在办法2或许办法3中TB8为发送的第九位数据。该位不是很常用,详细介绍请检查51单片机的技能文档,这儿不多做介绍。TI:发送中止标志,由硬件在办法0串行发送第8位结束时置位,或在其它办法串行发送中止位的开端时置位,有必要由软件清零。RI:承受中止标志,由硬件由硬件在办法0串行发送第8位结束时置位,或在其它办法串行发送中止位的中心时置位,有必要由软件清零。
在这儿需求提示的是,我们在看技能文档是必定要留意那些有必要由软件清零的标志位,在写程序时必定要记住清零。
图2(本图来自51单片机技能文档)
SBUF寄存器:(为了便利就直接截图阐明晰)
PCON寄存器D7位SMOD是串行波特率倍增位,SMOD为一时,串行口在工作办法1,办法2,办法3中波特率加倍,复位时,SMOD=0.
寄存器IPH,IPSADEN,SADDR不是很常用,在这儿就不做介绍,我下面的程序中也没有用到,感兴趣的能够自己查阅一下技能文档。
接下来开端调试串口的办法和过程。
1.STC—ISP下载软件自带串口调试功用。下面是软件界面
2.在串口调试之前还有必要知道自己学习板接的是电脑的哪个端口,检查端口的办法如下:
右键单击桌面上的:我的电脑—设备管理器,假如学习板经过下载线衔接到了电脑会显现如下界面:
从端口选项中能够看到我衔接的是COM3.
3接下来的使命便是不程序下载到单片机中开端调试了(程序我会在下面给出,先把调试过程介绍完)
程序下载结束之后单击STC-ISP下载软件中的:串口帮手按钮,就会呈现如下界面:
然后在点击翻开串口按钮,上图中显现的是:封闭串口,是由于我的串口现已翻开了,接下来在单字符串发送区,输入要传送的数据,例如传送:77,挑选十六进制发送,调查,学习班上LED的亮灭状况,和数据接区的反响。如下图:
需求留意的是有必要要将COM(即端口号),比特率,校验位,数据位,中止位,设置正确否则会显现乱码。
能够调查到的现象是:led的第八个和第四个点亮了,原因也很简单,由于发送的数据是77,挑选的是十六进制发送,即0111 0111,能够看到第8位和第四位是零,所以LED点亮了。承受单口显现data recieve ok,阐明单片机数据承受成功。
最终也是最重要的便是编写程序了:下面是我的调试程序,期望对我们能有协助。
(由于程序张贴过来的时分注释会显现乱码,没办法只好运用截图,请我们将就着看一下,还有需求提示的是程序的第57,58和第29行在截图时重复了请我们细心对着行标号看就很清楚了)
程序的注释写的很清楚,我在这儿就不重复解说了,不明白的请我们细心看注释。