您的位置 首页 知识

51单片机教程第6讲_串行口通讯

STC51单片机一般带有1个串口,有的带有2个串口,串口一般用于下载程序和串口通信。串口通信特别适合控制设备,所以工控机的电脑上一般都带有串口。51单片机的串口引脚为P3.0引脚与P3.1引脚

  STC51单片机一般带有1个串口,有的带有2个串口,串口一般用于下载程序和串口通讯。串口通讯特别合适操控设备,所以工控机的电脑上一般都带有串口。

  51单片机的串口引脚为P3.0引脚与P3.1引脚,分别是RXD和TXD引脚。串口通讯能够用于单片机和其它芯片通讯或许单片机之间通讯或许单片机与电脑通讯。串口通讯一般都是穿插衔接。规范的串口有9个引脚,咱们一般状况下,只用RXD TXD GND,剩余的引脚都是通讯操控引脚,在曾经用于操控电话机,现在现已基本上不用了。所以咱们的51单片机上只保留了RXD和TXD。

  串口通讯的协议十分简略。假如单片机上的串口不够用,还能够用恣意两个引脚模仿串口通讯。

  一般状况,咱们用带有开始位的8位串口协议。波特率常用9600,此外还有12002400 4800 115200等。

  翻开串口的程序如下:

  TMOD=0x20;

  TH1=0xFD;

  TL1=0xFD;

  SCON=0X50;

  TR1=1;

  程序涉及到5个寄存器的装备。

  TMOD是定时器操控寄存器

  TH1和TL1是定时器1的初值寄存器

  SCON是串行口操控寄存器

  TR1是TCON寄存器中的bit4,由于该寄存器能够位操作

  串口发送数据的程序如下所示:

  SBUF=55; // 发送数据55

  while(!TI);

  TI=0;

  程序涉及到2个寄存器

  SBUF是串口数据寄存器

  TI是SCON寄存器中的bit1,位操作

  串口接纳数据的程序如下所示:

  if(RI)

  {

  recebuf=SBUF;

  RI=0;

  }

  程序涉及到2个寄存器

  SBUF是串口数据寄存器

  RI是SCON寄存器中的bit0,位操作

  SBUF既是发送数据寄存器,又是接纳数据寄存器。

  能够把上面的功能模块封装成函数,在运用的时分,直接调用。

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部