资料
  • 资料
  • 专题
51单片机IO口模拟串行通信
推荐星级:
类别: 消费电子
时间:2020-01-15
大小:143.09KB
阅读数:183
上传用户:quw431979_163.com
查看他发布的资源
下载次数
0
所需E币
4
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
51单片机IO口模拟串行通信89C51 单片机 I/O 口模拟串行通信的实现方法 严天峰 目前普遍采用的 MCS51 和 PIC 系列单片机通常只有一个 (或没有) UART 异步串行通信接口,在应用系统中若需要多个串行接口(例如在多机通信系 统中,主机既要和从机通信又要和终端通信)的情况下,通常的方法是扩展 一片 8251 或 8250 通用同步/异步接收发送芯片(USART) ,需额外占用单 片机 I/O 资源。本文介绍一种用单片机普通 I/O 口实现串行通信的方法,可 在单片机的最小应用系统中实现与两个以上串行接口设备的多机通信。 1.串行接口的基本通信方式 串行接口的有异步和同步两种基本通信 方式。异步通信采用用异步传送格式,如图 1 所示。数据发送和接收均将起 始位和停止位作为开始和结束的标志。在异步通信中,起始位占用一位(低 ① 电平) ,用来表示字符开始。其后为 7 或 8 位的数据编码,第 8 位通常做为 奇偶校验位。最后为停止位(高电平)用来表示字符传送结束。上述字符格 式通常作为一个串行帧,如无奇偶校验位,即为常见的 N.8.1 帧格式。 串行通信中,每秒传送的数据位称为波特率。如数据传送的波特率为 1200 波特,采用 N.8.1 帧格式(10 位) ,则每秒传送字节为 120 个,而字节 中每一位传送时间即为波特率的倒数:T=I/1200=0.833ms。同样,如数据传 送的波特率为 9600 波特,则字节中每一位传送时间为 T=1/9600=0.104 ms。 根据数据传送的波特率即字节中每一位的传送时间,我们便可用普通 I/O 口 来模拟实现串行通信的时序。 2.硬件电路 89C51 单片机通过普通 I/O 口与 PC 机 RS232 串口实现 通信的硬件接口电路如图 2 所示。由于 PC 系列微机串行口为 RS232C 标准 接口,与输入、输出均采用 TTL 电平的……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
PARTNER CONTENT
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书