您的位置 首页 动态

8051单片机数据传送的方法有哪些

8051单片机数据传送的方式有哪些-单片机CPU与外部设备交换信息通常有如下几种方式:无条件传送方式,查询传送方式和中断传送方式。我们以单片机与微型打印机接口为例讲述这三种方式。假定用户要打印三个数据,这三个数据保存在单片机的内部数据存储器10H,11H,和12H中,8051用并口P2与微型打印机的并行数据口DB进行数据交换。

单片机CPU与外部设备交流信息一般有如下几种方法:无条件传送方法,查询传送方法和中止传送方法。咱们以单片机与微型打印机接口为例叙述这三种方法。假定用户要打印三个数据,这三个数据保存在单片机的内部数据存储器10H,11H,和12H中,8051用并口P2与微型打印机的并行数据口DB进行数据交流。

(1)无条件传送方法

这种数据传送方法中没有联络信号,即CPU总是以为打印机在怎么时分都是处于“预备好”的状况。这种传送方法中只需求在程序中参加数据送往P2的指令,数据传送便能够完结。但这种数据传送方法有一个丧命缺陷,数据易丢掉,这是因为CPU的速度适当快,而打印机的速度相对来说较慢,其结果是在打印机打印一个数据的时刻内,CPU已送来了多个数据。

(2)查询传送方法

查询传送也称条件传送是,在这种传送方法中,无论是输入仍是输出,都是以计算机为自动一方。为了数据传送的正确性,计算机在传送数据之前,要首要查询外部设备是否已处于“预备好”状况;关于输出操作,则要知道外设是否已把上一次计算机输出的数据处理完毕。只要经过查询,坚信外设已处于“预备好”的状况,计算机才干宣布拜访外设的指令,完结数据交流。状况信息一般只需求一位二进制码表明“预备好”和“未预备好”两种状况,所以,在接口中只用一个D触发器就可用来保存和发生状况信息。例如,“预备好”有D触发器Q=1表明;“没预备好”用Q=0表明。查询方法进程:查询,即读“预备好”引脚,若该引脚为“预备好”状况,则进行数据传送,若引脚为“未预备好”状况,则持续查询,直到该引脚为“预备好”状况,再进行数据传送。

在咱们这个比如中能够在打印机上添加一条名为BUSY的引脚,打印机开端打印一个数据前,使该引脚为高电平,打印完一个数据后,使该引脚为低电 ,该引脚的初始化为0。咱们将该引脚与单片机的引脚INT0相连,单片机每发送一个数据前,都查询该引脚状况是否为0,若为0,则发送数据。不然,就持续查询,直到该引脚为0时,再发送数据,请看比如:

8051单片机数据传送的方法有哪些

上电后打印机的BUSY引脚为0。

单片机运转第一条指令,设置打印缓冲区起点。

单片机运转第二条指令,设置打印字节。

单片机运转第三条指令,读入打印机BUSY引脚的状况,判别该状况是否为0。为0,则发送第一个数据,打印机设置BUSY引脚为0,开端打印。

单片机运转下一个指令,打印缓冲区加1,使下一次能发送第二个数据。判别数据是否现已发完,未发完,预备发送下一个数据,读打印机引脚BUSY的状况 。

引脚BUSY状况为1,持续查询。

引脚BUSY状况为0,发送第二个数据,打印缓冲区加1,使下一次能发送第三个数据,判别数据是否现已发完,未发完,预备发送下一个数据,打印缓冲区加1,判别数据是否现已发完。三个数据都发送完,程序完毕。

能够看出,这种方法的缺陷是需求有一个等候的进程,特别是在接连进行数据传送时,因为外设作业速度比CPU慢得多,所以CPU在完结一次数据传送后要等候很长的时刻才干进行下一次传送。在等候进程中,CPU不能进行其他操作,所以功率比较低,进步CPU功率的一个有用方法是选用中止方法。

(3)中止方法

方才咱们讲到,无条件传送方法不可靠,查询传送方法太糟蹋CPU的时刻。

为了处理这个问题,单片机设置了另一个传送方法—中止方法。所谓中止,就是指中央处理器CPU正在处理某件作业的时分,外部发生某一事情,恳求CPU敏捷去处理,所以,CPU暂时中止当时的作业,转入处理所发生的事情;中止服务处理今后,再回到本来被中止的当地,持续本来的作业,这样的进程称为中止。完结这种功用的部件称为中止体系,发生中止的恳求源称为中止源。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/345501.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部