在工业测控系统中,51单片机在现场用来采集模拟量、开关量,而中央控制计算机在控制室或调度室用来监测整个控制现场。它们之间的数据传送可构成局部网络、多用户系统和分布式控制系统。

一、51单片机与计算机通信方式

利用51单片机串行接口和调制解调器及现有电话线,实现远程双向通信的方框图如图1-18所示。

在利用现有电话线进行数据传输的串行通信中,把将要传送的数据按先后顺序,在公共信道上逐位传送。

串行通信对字符的编码、字符格式和传输速率都有具体规定,必须严格遵守。异步串行通信数据的传送格式由4部分组成:起始位、数据位、奇偶校验位和终止位。

通信协议要求:在发送端,每传送一个字符都必须有起始位、数据位、奇偶校验位和一个终止位的字符串;在接收端,也要按照起始位、数据位、奇偶校验位和一个终止位的字符串进行计数接收。

二、51单片机串行接口

51单片机串行接口简介

51单片机引脚中P3.0(10脚)为RxD(串行输入口),P3.1(11脚)为TxD(串行输出口)。

51单片机串行接口为全双工,即它可以同时发送和接收。两个串行口寄存器通过特殊功能寄存器SBUF来访问,即写入SBUF装入发送寄存器,读SBUF访问物理上分开的接收寄存器,两个缓冲器共用一个地址99H。

51单片机串行接口有4种工作方式。通信只使用方式1,2,3;方式0主要用于扩展并行输入/输出口。

●方式0  在方式0状态下,串行口为同步移位寄存器方式。其波特率是固定的,为osc/12。数据由RxD端输入,同步移位脉冲由TxD端输出,发送、接收的是8位数据,低位在先。

●方式1在方式1状态下,串行口为8位异步通信接口,一帧信息为10位:1位起始位(0)、8位数据位(低位在先)和1位停止位(1),波特率可变。

●方式2和3  串行口在方式2,3时,为9位异步通信接口,发送、接收一帧信息由11位组成,1位可编程数据位(第9位数据位)和1位停止位(1)。

方式2的波特率固定为osc/64/2SMOD,即fosc/32或osc/64。方式3的波特率可变。

2、51单片机串行接口的电平转换

RS - 232C的标准规定:逻辑0为+5~+15 V,逻辑1为-5~-15 V,而51单片机串口电平为TTL电平。因此,必须通过电平转换,才能符合串行通信标准。

电平转换采用MC1488和MC1489。图1-19为其引脚图。MC1488输入电平为TTL电平,输出电平为RS - 232C电平。MC1489输入电平为RS - 232C电平,输出电平为TTL电平。以上两个专用芯片除了电平转换外,还实现了正、负逻辑电平的转换。

图1- 20为51单片机串口的实际转换电路连接图。考虑到现场干扰因素,为了抑制尖峰脉冲及各种噪声干扰,串口电路中加了两片TiL117光电耦合器,以增强数据传送的可靠性。

三、贺氏(Hayes)调制解调器介绍

本系统采用Hayes OPTIMA 336调制解调器,前面板有一组状态指示灯,如图1- 21(a)所示。

  

MR(调制解调器就绪/进行测试):当调制解调器上电时,灯亮;当调制在自检或诊断方式下时,此灯闪烁。

TR(终端就绪):当RS - 232 DTR信号给出时,此灯亮。

SD(发送数据):从本地数据终端自本地调制解调器传送数据时,SD灯闪烁。

RD(接收数据):从本地调制解调器自其所连接的设备传送数据时,RD灯闪烁。

OH(摘机):当调制解调器摘机时,OH灯亮;挂机时,OH灯灭。

CD(载波检测):本地调制解调器从远方调制解调器收到有效数据载波信号时,CD灯亮。

AA(自动应答):当调制解调器设定在应答方式时,AA灯亮;当调制解调器检测到从远方来的呼叫,而它又被置于自动应答方式时,在振铃期间,AA灯灭。如不是自动应答方式,在振铃期间,AA灯亮。

VO(语音):连接调制解调器的电话摘机时,VO灯亮;电话挂机时,VO灯灭。

从图1 - 21(b)可知,调制解调器有一个25芯的数据终端接口( DTE  INTERFACE)。在这里只说明几根重要的信号线。

2针:发送数据入Modem;

3针:接收数据出Modem;

4针:请求发送入Modem;

5针:允许发送出Modem;

6针:数据就绪  出Modem。

所有的贺氏调制解调器支持一组通用的AT命令、S寄存器和结果码集。

AT命令可以用来配置调制解调器与软件共同工作,与远端系统通信,发起或应答一个呼叫。每一条AT命令都对应调制解调器的某种动作。

调制解调器拨号之后,等待对方调制解调器送来的载波信号。如果在预定的时间(S7寄存器的值决定这一等待时间的长短)没有检测到载波,则调制解调器自动释放线路并送回结果码NO CARRIER; -旦检测到载波信号,调制解调器送回结果码CONNECT,进入联机状态,即可与远方系统通信。

四、51单片机串行接口与调制解调器之间通信

1. 51单片机与调制解调器之间的连接线路

图1- 22为51单片机DB与调制解调器的连接线路。由图1- 22可知:51单片机的9芯插座中的2针和3针分别与调制解调器25芯插座中的2针和3针相连;51单片机的数字地5针与调制解调器中的信号地7针相连。调制解调器的4针、5针、8针相连;6针和20针相连。

2.波特率设置

为了实现与远方中央控制计算机正确可靠地通信,双方波特率必须一致。RS - 232C标准波特率为:50,75 ,110 ,150,300,600.1 200,2 400,4 800,9 600及19 200。

当51单片机应用系统晶振为6 MHz时,选波特率为2 400,串口工作方式1。

51单片机用定时器1作为串口波特率发生器。波特率计算公式为

在任何情况下,若定时器1的C根号T=0,则计数率为振荡频率的1/12。即

当SMOD=0时,TH1=249. 49,圆整误差过大。改为取SMOD=1,TH1=242. 98≈243=3H。51单片机系统波特率设为2 400,串口工作方式1,汇编语言如下:

MOV TMOD,#20H    ;定时器1工作,方式2

MOV TH1,#OF3H    ;装8位计数器常数

MOV  TLl,# OF3H

SEATB TR1    ;允许定时器1工作

MOV SCON,#50H    ;串口按方式1工作,允许串行接收

MOV PCON,#80H    ;SMOD置位

3.数据同步

51单片机虽有串行输人口、串行输出口,但不具有RTS,CTS,DTR,TxC,RxC等标准RS- 2320接口的握手信号线。

一般计算机串行口只具有异步工作方式。在异步串行通信中,波特率的一致性是数据位同步的保证,而帧同步只能靠几根握手控制线了。51单片机没有这些握手线,在波特率一致时,能保证单个字节传输正确,但无法保证大量数据接收正确,有可能导致大量数据丢失。本系统用软件方法来达到同步。

当计算机发送一字节或若干字节时,一方面计算机采用一定的延时,另一方面等待51单片机接收正确的应答信号。该信号既可表示接收到的数据正确与否,又可起到同步作用。

4. 51单片机和远方中央控制机之间通信

51单片机系统用来采集现场的模拟量、开关量等。当发生越限时,通过调制解调器呼叫中央控制计算机的电话号码,联通之后,发出当前的告警状态。中央控制计算机通过调制解调器呼叫51单片机的电话号码,联通之后,调用51单片机的串口中断程序,就可以知道当前的模拟量、开关量、设备号等数据。

正常状态时,中央控制计算机巡回调用现场中51单片机的串口中断程序,就可以得到所需要的各种数据。

图1- 23为本系统实际应用的程序流程图。单片机主程序流程图省略。下面解释一下图1 - 23(b)告警拨号中有关调制解调器的命令。

注:# OIH是连接已经叫通的数字结果码

ATSO=3    选择开始应答前振铃数为3次

ATVO    结果码以数字形式显示

AT8F    出厂缺省值

ATDT 6803412  以双音频方式呼叫假设电话号码为6803412的中央控制机

选择等待载波/拨音的出厂时间值为50 s。

通信协议规定使用ASCII码,为使中央计算机接收命令清晰,每条命令之后须加CR(换行)。

本节介绍的51单片机串行接口通过调制解调器与中央控制计算机的双向远程通信方法,也可以推广为多个单片机系统和中央控制计算机的远程通信。

计算机与调制解调器之间接口为,单片机串行接口和调制解调器如何实现远程通信...相关推荐

  1. 计算机与调制解调器之间接口为,调制解调器

    一.调制解调器的构成 调制解调器的构成框图如图5-6所示.调制解调器主要由①基带处理,②调制解调,③信道形成三部分组成.下面简单加以说明. (1)基带处理是在调制之前对数字信号进行一些处理,以适应不同 ...

  2. C51单片机————串行接口

    C51单片机----串行接口 Created with Raphaël 2.1.2张三张三李四李四嘿,四哥,我最近在学习串行接口?想了想!有我啥事嗯!牛逼我有点不懂?哪里不懂哇额! 都不懂... 1. ...

  3. 计算机组成原理、微机接口及应用综合实验台

    ZN-105计算机组成原理.微机接口及应用综合实验台 一.概述 ZN-105计算机组成原理.微机接口及应用综合实验台是计算机组成原理及微机接口及应用的综合实验台,规格:160×75×78cm.二者组合 ...

  4. 路由器和调制解调器的区别_交换机,路由器和调制解调器之间有什么区别?

    路由器和调制解调器的区别 There are distinct differences between a switch, a router and a modem. You may have won ...

  5. 连接CPU和计算机的总线,什么是计算机总线 总线和接口的区别

    什么是计算机总线 这个和计算机主机的构造有关系,首先,我们都知道计算机的cpu由两个部分组成,一个是控制单元,另一个是算术逻辑单元,cpu的控制单元负责计算机各个组件的协调与沟通,什么是沟通?就是数据 ...

  6. 计算机主板的定义,计算机主板前面板接口定义

    计算机主板前面板接口定义 文章目录[隐藏] 现在我不知道有没有朋友会扔掉电脑主板?在计算机主板的许多接口中,除了众所周知的接口(例如USB接口,AUX接口和电源接口)外,还有一个至关重要的接口,它是用 ...

  7. 【计算机组装与网络布线】计算机组装与维护(一)——计算机核心硬件及重要接口的再认识

    halo~我是bay_Tong桐小白 本文内容是桐小白个人对所学知识进行的总结和分享,知识点会不定期进行编辑更新和完善,了解最近更新内容可参看更新日志,欢迎各位大神留言.指点 [本实践旨在进一步学习计 ...

  8. 计算机用什么方式 管理程序和数据,计算机与外设之间数据传送方式有几种?各有什么特点?...

    原标题:计算机与外设之间数据传送方式有几种?各有什么特点? 主要有四种方式. 1.无条件传送方式,最简单的传送方式,所配置的硬件和软件最少. 2.查询传送方式,CPU的利用受到影响,陷于等待和反复查询 ...

  9. 设计制作简单计算机,自己设计制作CPU与单片机

    自己设计制作CPU与单片机 语音 编辑 锁定 讨论 上传视频 本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! <自己设计制作CPU与单片机>是2014年9月人民邮 ...

  10. 计算机进制小数位之间的转换,计算机进制之间相互转换

    <计算机进制之间相互转换>由会员分享,可在线阅读,更多相关<计算机进制之间相互转换(4页珍藏版)>请在人人文库网上搜索. 1.计算机进制之间相互转换计 算 机 进 制 之 间 ...

最新文章

  1. Linux ALSA声卡驱动之八:ASoC架构中的Platform
  2. 2、从汇编语言到Windows内核编程笔记(2)
  3. java构造方法可以重载吗_Java基础教程之构造器与方法重载
  4. 【转】程序员该做的事 - 每天、每周、每月
  5. Boost:用OpenCL编写的简单flip filter的测试程序
  6. 第五章 常用Lua开发库3-模板渲染
  7. 解决deepin微信无法登录
  8. Java中的数组,列表,集合,映射,元组,记录文字
  9. ThinkPHP6项目基操(9.架构分层)
  10. TensorFlow (RNN)深度学习 双向LSTM(BiLSTM)+CRF 实现 sequence labeling 序列标注问题 源码下载...
  11. MongoError: E11000 duplicate key error collection: blog.users index: email_1 dup key
  12. 广州java开发招聘,大厂面试题汇总
  13. ABAP字符串的加密与解密
  14. 高质量的用户体验 推进IT运维向业务服务转变——中国移动通信集团公司
  15. 前端自动化测试框架Jest中的匹配器
  16. 升级opengl和显卡驱动_又更新了!英伟达OpenGL 4.4显卡驱动下载
  17. MySQL中的保留字
  18. 获取显示器分辨率大小更改页面字体大小JS
  19. docker 搭建frp内网穿透以及frp详细使用
  20. 瑞成科技加入openKylin,推动社区生态繁荣发展!

热门文章

  1. 什么是IMU(惯性传感器)
  2. 微信公众号 语音转文字api_微信语音快速转文字功能,方便实用
  3. 如何防止输入同样的编号到数据库中(30分)
  4. UnicodeDecodeError: 'gbk' codec can't decode byte 0xfe in position 45: illegal multibyte sequence
  5. 创建springboot项目后运行,找不到或无法加载主类 com.itheima.Application,原因: java.lang.ClassNotFoundException
  6. 数学四大思想八大方法_四种思想方法,让你轻松掌握高中数学
  7. 艾默生黑色无线电池701PBKKF
  8. 加解密:MD5DesAesRSARSA C#和Java适配
  9. CAD等比例缩放图形
  10. l05173芯片针脚图_芯片引脚图及引脚描述