精华内容
下载资源
问答
  • io接口功能是什么

    千次阅读 2021-07-24 00:40:15
    IO接口又称为输入输出接口,是信息处理系统与外部世界之间的通信。输入是系统接收的信号或数据,输出是从其发送的信号或数据。该术语也可以用作行动的一部分; 到“执行I / O”是执行输入或输出操作。IO 接口,又称为...

    IO接口又称为输入输出接口,是信息处理系统与外部世界之间的通信。输入是系统接收的信号或数据,输出是从其发送的信号或数据。该术语也可以用作行动的一部分; 到“执行I / O”是执行输入或输出操作。

    IO 接口,又称为输入输出接口,是信息处理系统(例如计算机)与外部世界(可能是人类或另一个信息处理系统)之间的通信。输入是系统接收的信号或数据,输出是从其发送的信号或数据。该术语也可以用作行动的一部分; 到“执行 I / O”是执行输入或输出操作。

    611da71964415b5af86ec838dc4db3be.png

    lO 接口是主机与被控对象进行信息交换的纽带。主机通过 I/O 接口与外部设备进行数据交换。绝大部分 I/O 接口电路都是可编程的,即它们的工作方式可由程序进行控制。在工业控制机中常用的接口有:1、并行接口,如 8155 和 8255; 2、串行接口,如 8251;3、直接数据传送接口,如 8237;4、 中断控制接口,如 8259; 5、 定时器/计数器接口,如 8253 等。此外,由于计算机只能接收数字量,而一般的连续化生产过程的被测参数大都为模拟量,如温度、压力、流量、液位、速度、电压及电流等,因此,为了实现计算机控制,还必须把模拟量转换成数字量,即进行 A/D 转换。

    接口组成:包括硬件电路和软件编程两部分 硬件电路包括基本逻辑电路,端口译码电路和供选电路等。软件编程包括初始化程序段,传送方式处理程序段,主控程序段程序终止与退出程序段及辅助程序段等.

    由于计算机的外围设备品种繁多,几乎都采用了机电传动设备,因此,CPU 在与 I/O 设备进行数据交换时存在以下问题:

    速度不匹配:I/O 设备的工作速度要比 CPU 慢许多,而且由于种类的不 同,他们之间的速度差异也很大,例如硬盘的传输速度就要比打印机快出很多。

    时序不匹配:各个 I/O 设备都有自己的定时控制电路,以自己的速度传 输数据,无法与 CPU 的时序取得统一。

    信息格式不匹配:不同的 I/O 设备存储和处理信息的格式不同,例如可以分为串行和并行两种;也可以分为二进制格式、ACSII 编码和 BCD 编码等。

    信息类型不匹配:不同 I/O 设备采用的信号类型不同,有些是数字信号,而 有些是模拟信号,因此所采用的处理方式也不同。

    基于以上原因,CPU 与外设之间的数据交换必须通过接口来完成,通常接口有以下一些功能:

    (1)设置数据的寄存、缓冲逻辑,以适应 CPU 与外设之间的速度差异,接口通常由一些寄存器或 RAM 芯片组成,如果芯片足够大还可以实现批量数据的传输;

    (2)能够进行信息格式的转换,例如串行和并行的转换;

    (3)能够协调 CPU 和外设两者在信息的类型和电平的差异,如电平转换驱动器、数/模或模/数转换器等;

    (4)协调时序差异;

    (5)地址译码和设备选择功能;

    (6)设置中断和 DMA 控制逻辑,以保证在中断和 DMA 允许的情况下产生中断和 DMA 请求信号,并在接受到中断和 DMA 应答之后完成中断处理和 DMA 传输。

    展开全文
  • 简述OSI参考模型中各层的主要功能(2010-03-16 19:52:17)标签:杂谈分类:作业第一层 物理层 第二层 数据链路层 第三层 网络层 第四层 传输层 第五层 会话层 第六层 表示层 第七层 应用层其中高层,既7、6、5、4层...

    简述OSI参考模型中各层的主要功能

    (2010-03-16 19:52:17)

    标签:

    杂谈

    分类:

    作业

    第一层 物理层 第二层 数据链路层 第三层 网络层 第四层 传输层 第五层 会话层 第六层 表示层 第七层 应用层

    其中高层,既7、6、5、4层定义了应用程序的功能,下面3层,既3、2、1层主要面向通过网络的端到端的数据流。下面我给大家介绍一下这7层的功能:

    (1)应用层:与其他计算机进行通讯的一个应用,它是对应应用程序的通信服务的。例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需要实现OSI的第7层。示例:telnet,HTTP,FTP,WWW,NFS,SMTP等。

    (2)表示层:这一层的主要功能是定义数据格式及加密。例如,FTP允许你选择以二进制或ASII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。如果选择ASII格式,发送方将把文本从发送方的字符集转换成标准的ASII后发送数据。在接收方将标准的ASII转换成接收方计算机的字符集。示例:加密,ASII等。

    (3)会话层:他定义了如何开始、控制和结束一个会话,包括对多个双向小时的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。示例:RPC,SQL等。

    (4)传输层:这层的功能包括是否选择差错恢复协议还是无差错恢复协议,及在同一主机上对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。示例:TCP,UDP,SPX。

    (5)网络层:这层对端到端的包传输进行定义,他定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。示例:IP,IPX等。

    (6)数据链路层:他定义了在单个链路上如何传输数据。这些协议与被讨论的歌种介质有关。示例:ATM,FDDI等。

    (7)物理层:OSI的物理层规范是有关传输介质的特性标准,这些规范通常也参考了其他组织制定的标准。连接头、针、针的使用、电流、电流、编码及光调制等都属于各种物理层规范中的内容。物理层常用多个规范完成对所有细节的定义。示例:Rj45,802.3等。

    OSI分层的优点: (1)人们可以很容易的讨论和学习协议的规范细节。 (2)层间的标准接口方便了工程模块化。

    (3)创建了一个更好的互连环境。 (4)降低了复杂度,使程序更容易修改,产品开发的速度更快。

    (5)每层利用紧邻的下层服务,更容易记住个层的功能。

    大多数的计算机网络都采用层次式结构,即将一个计算机网络分为若干层次,处在高层次的系统仅是利用较低层次的系统提供的接口和功能,不需了解低层实现该功能所采用的算法和协议;较低层次也仅是使用从高层系统传送来的参数,这就是层次间的无关性。因为有了这种无关性,层次间的每个模块可以用一个新的模块取代,只要新的模块与旧的模块具有相同的功能和接口,即使它们使用的算法和协议都不一样。

    网络中的计算机与终端间要想正确的传送信息和数据,必须在数据传输的顺序、数据的格式及内容等方面有一个约定或规则,这种约定或规则称做协议。网络协议主要有三个组成部分:

    1、语义: 是对协议元素的含义进行解释,不同类型的协议元素所规定的语义是不同的。例如需要发出何种控制信息、完成何种动作及得到的响应等。

    2、语法:

    将若干个协议元素和数据组合在一起用来表达一个完整的内容所应遵循的格式,也就是对信息的数据结构做一种规定。例如用户数据与控制信息的结构与格式等。

    3、时序:

    对事件实现顺序的详细说明。例如在双方进行通信时,发送点发出一个数据报文,如果目标点正确收到,则回答源点接收正确;若接收到错误的信息,则要求源点重发一次。

    70年代以来,国外一些主要计算机生产厂家先后推出了各自的网络体系结构,但它们都属于专用的。

    为使不同计算机厂家的计算机能够互相通信,以便在更大的范围内建立计算机网络,有必要建立一个国际范围的网络体系结构标准。

    国际标准化组织ISO 于1981年正式推荐了一个网络系统结构----七层参考模型,叫做开放系统互连模型(Open System

    Interconnection,OSI)。由于这个标准模型的建立,使得各种计算机网络向它靠拢, 大大推动了网络通信的发展。 OSI

    参考模型将整个网络通信的功能划分为七个层次,见图1。它们由低到高分别是物理层(PH)、链路层(DL)、网络层(N)、传输层(T)、会议层(S)、表示层(P)、应用层(A)。每层完成一定的功能,每层都直接为其上层提供服务,并且所有层次都互相支持。第四层到第七层主要负责互操作性,而一层到三层则用于创造两个网络设备间的物理连接.

    1.物理层

    物理层是OSI的第一层,它虽然处于最底层,却是整个开放系统的基础。物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。

    1.1媒体和互连设备

    物理层的媒体包括架空明线、平衡电缆、光纤、无线信道等。通信用的互连设备指DTE和DCE间的互连设备。DTE既数据终端设备,又称物理设备,如计算机、终端等都包括在内。而DCE则是数据通信设备或电路连接设备,如调制解调器等。数据传输通常是经过DTE——DCE,再经过DCE——DTE的路径。互连设备指将DTE、DCE连接起来的装置,如各种插头、插座。LAN中的各种粗、细同轴电缆、T型接、插头,接收器,发送器,中继器等都属物理层的媒体和连接器。

    1.2物理层的主要功能

    1.2.1为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成.一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接.所谓激活,就是不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路.

    1.2.2传输数据.物理层要形成适合数据传输需要的实体,为数据传送服务.一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(BIT)数),以减少信道上的拥塞.传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要.

    1.3物理层的一些重要标准 物理层的一些标准和协议早在OSI/TC97/C16

    分技术委员会成立之前就已制定并在应用了,OSI也制定了一些标准并采用了一些已有的成果.下面将一些重要的标准列出,以便读者查阅.ISO2110:称为"数据通信----25芯DTE/DCE接口连接器和插针分配".它与EIA(美国电子工

    业协会)的"RS-232-C"基本兼容。ISO2593:称为"数据通信----34芯DTE/DCE----接口连接器和插针分配"。ISO4092:称为"数据通信----37芯DTE/DEC----接口连接器和插针分配".与EIARS-449兼容。CCITT

    V.24:称为"数据终端设备(DTE)和数据电路终接设备之间的接口电路定义表".其功能与EIARS-232-C及RS-449兼容于100序列线上.

    2.数据链路层

    数据链路可以粗略地理解为数据通道。物理层要为终端设备间的数据通信提供传输媒体及其连接.媒体是长期的,连接是有生存期的.在连接生存期内,收发两端可以进行不等的一次或多次数据通信.每次通信都要经过建立通信联络和拆除通信联络两过程.这种建立起来的数据收发关系就叫作数据链路.而在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错.数据链路的建立,拆除,对数据的检错,纠错是数据链路层的基本任务。

    2.1链路层的主要功能 链路层是为网络层提供数据传送服务的,这种服务要依靠本层具备的功能来实现。链路层应具备如下功能:

    2.1.1链路连接的建立,拆除,分离。

    2.1.2帧定界和帧同步。链路层的数据传输单元是帧,协议不同,帧的长短和界面也有差别,但无论如何必须对帧进行定界。

    2.1.3顺序控制,指对帧的收发顺序的控制。

    2.1.4差错检测和恢复。还有链路标识,流量控制等等.差错检测多用方阵码校验和循环码校验来检测信道上数据的误码,而帧丢失等用序号检测.各种错误的恢复则常靠反馈重发技术来完成。

    2.2数据链路层的主要协议 数据链路层协议是为发对等实体间保持一致而制定的,也为了顺利完成对网络层的服务。主要协议如下:

    2.2.1ISO1745--1975:"数据通信系统的基本型控制规程".这是一种面向字符的标准,利用10个控制字符完成链路的建立,拆除及数据交换.对帧的收发情况及差错恢复也是靠这些字符来完成.ISO1155,

    ISO1177, ISO2626, ISO2629等标准的配合使用可形成多种链路控制和数据传输方式.

    2.2.2ISO3309--1984:称为"HDLC 帧结构".ISO4335--1984:称为"HDLC 规程要素

    ".ISO7809--1984:称为"HDLC

    规程类型汇编".这3个标准都是为面向比特的数据传输控制而制定的.有人习惯上把这3个标准组合称为高级链路控制规程.

    2.2.3ISO7776:称为"DTE数据链路层规程".与CCITT X.25LAB"平衡型链路访问规程"相兼容. 2.3链路层产品

    独立的链路产品中最常见的当属网卡,网桥也是链路产品。MODEM的某些功能有人认为属于链路层,对些还有争议.数据链路层将本质上不可靠的传输媒体变成可靠的传输通路提供给网络层。在IEEE802.3情况下,数据链路层分成了两个子层,一个是逻辑链路控制,另一个是媒体访问控制。下图所示为IEEE802.3LAN体系结构。

    AUI=连接单元接口 PMA=物理媒体连接 MAU=媒体连接单元 PLS=物理信令 MDI=媒体相关接口 3.网络层

    网络层的产生也是网络发展的结果.在联机系统和线路交换的环境中,网络层的功能没有太大意义.当数据终端增多时.它们之间有中继设备相连.此时会出现一台终端要求不只是与唯一的一台而是能和多台终端通信的情况,这就是产生了把任意两台数据终端设备的数据链接起来的问题,也就是路由或者叫寻径.另外,当一条物理信道建立之后,被一对用户使用,往往有许多空闲时间被浪费掉.人们自然会希望让多对用户共用一条链路,为解决这一问题就出现了逻辑信道技术和虚拟电路技术.

    3.1网络层主要功能 网络层为建立网络连接和为上层提供服务,应具备以下主要功能: 3.1.1路由选择和中继.

    3.1.2激活,终止网络连接. 3.1.3在一条数据链路上复用多条网络连接,多采取分时复用技术 . 3.1.4差错检测与恢复.

    3.1.5排序,流量控制. 3.1.6服务选择. 3.1.7网络管理. 3.2网络层标准简介 网络层的一些主要标准如下: 3.2.1

    ISO.DIS8208:称为"DTE用的X.25分组级协议" 3.2.2 ISO.DIS8348:称为"CO

    网络服务定义"(面向连接) 3.2.3 ISO.DIS8349:称为"CL 网络服务定义"(面向无连接) 3.2.4

    ISO.DIS8473:称为"CL 网络协议" 3.2.5 ISO.DIS8348:称为"网络层寻址" 3.2.6

    除上述标准外,还有许多标准。这些标准都只是解决网络层的部分功能,所以往往需要在网络层中同时使用几个标准才能完成整个网络层的功能.由于面对的网络不同,网络层将会采用不同的标准组合.

    在具有开放特性的网络中的数据终端设备,都要配置网络层的功能.现在市场上销售的网络硬设备主要有网关和路由器. 4.传输层

    传输层是两台计算机经过网络进行数据通信时,第一个端到端的层次,具有缓冲作用。当网络层服务质量不能满足要求时,它将服务加以提高,以满足高层的要求;当网络层服务质量较好时,它只用很少的工作。传输层还可进行复用,即在一个网络连接上创建多个逻辑连接。

    传输层也称为运输层.传输层只存在于端开放系统中,是介于低3层通信子网系统和高3层之间的一层,但是很重要的一层.因为它是源端到目的端对数据传送进行控制从低到高的最后一层.

    有一个既存事实,即世界上各种通信子网在性能上存在着很大差异.例如电话交换网,分组交换网,公用数据交换网,局域网等通信子网都可互连,但它们提供的吞吐量,传输速率,数据延迟通信费用各不相同.对于会话层来说,却要求有一性能恒定的界面.传输层就承担了这一功能.它采用分流/合流,复用/介复用技术来调节上述通信子网的差异,使会话层感受不到.

    此外传输层还要具备差错恢复,流量控制等功能,以此对会话层屏蔽通信子网在这些方面的细节与差异.传输层面对的数据对象已不是网络地址和主机地址,而是和会话层的界面端口.上述功能的最终目的是为会话提供可靠的,无误的数据传输.传输层的服务一般要经历传输连接建立阶段,数据传送阶段,传输连接释放阶段3个阶段才算完成一个完整的服务过程.而在数据传送阶段又分为一般数据传送和加速数据传送两种。传输层服务分成5种类型.基本可以满足对传送质量,传送速度,传送费用的各种不同需要.传输层的协议标准有以下几种:

    4.1 ISO8072:称为"面向连接的传输服务定义" 4.2 ISO8072:称为"面向连接的传输协议规范" 5.会话层

    会话层提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。会话层,表示层,应用层构成开放系统的高3层,面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等.

    会话层同样要担负应用进程服务要求,而运输层不能完成的那部分工作,给运输层功能差距以弥补.主要的功能是对话管理,数据流同步和重新同步。要完成这些功能,需要由大量的服务单元功能组合,已经制定的功能单元已有几十种.现将会话层主要功能介绍如下.

    5.1为会话实体间建立连接。为给两个对等会话服务用户建立一个会话连接,应该做如下几项工作: 5.1.1将会话地址映射为运输地址

    5.1.2选择需要的运输服务质量参数(QOS) 5.1.3对会话参数进行协商 5.1.3识别各个会话连接

    5.1.4传送有限的透明用户数据 5.2数据传输阶段

    这个阶段是在两个会话用户之间实现有组织的,同步的数据传输.用户数据单元为SSDU,而协议数据单元为SPDU.会话用户之间的数据传送过程是将SSDU转变成SPDU进行的.

    5.3连接释放

    连接释放是通过"有序释放","废弃","有限量透明用户数据传送"等功能单元来释放会话连接的.会话层标准为了使会话连接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元.各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集.会话层的主要标准有"DIS8236:会话服务定义"和"DIS8237:会话协议规范".

    6.表示层

    表示层的作用之一是为异种机通信提供一种公共语言,以便能进行互操作。这种类型的服务之所以需要,是因为不同的计算机体系结构使用的数据表示法不同。例如,IBM主机使用EBCDIC编码,而大部分PC机使用的是ASCII码。在这种情况下,便需要会话层来完成这种转换。

    通过前面的介绍,我们可以看出,会话层以下5层完成了端到端的数据传送,并且是可靠,无差错的传送.但是数据传送只是手段而不是目的,最终是要实现对数据的使用.由于各种系统对数据的定义并不完全相同,最易明白的例子是键盘,其上的某些键的含义在许多系统中都有差异.这自然给利用其它系统的数据造成了障碍.表示层和应用层就担负了消除这种障碍的任务.

    对于用户数据来说,可以从两个侧面来分析,一个是数据含义被称为语义,另一个是数据的表示形式,称做语法.像文字,图形,声音,文种,压缩,加密等都属于语法范畴.表示层设计了3类15种功能单位,其中上下文管理功能单位就是沟通用户间的数据编码规则,以便双方有一致的数据形式,能够互相认识.ISO表示层为服务,协议,文本通信符制定了DP8822,DP8823,DIS6937/2等一系列标准.

    7.应用层

    应用层向应用程序提供服务,这些服务按其向应用程序提供的特性分成组,并称为服务元素。有些可为多种应用程序共同使用,有些则为较少的一类应用程序使用。应用层是开放系统的最高层,是直接为应用进程提供服务的。其作用是在实现多个系统应用进程相互通信的同时,完成一系列业务处理所需的服务.其服务元素分为两类:公共应用服务元素CASE和特定应用服务元素SASE.CASE提供最基本的服务,它成为应用层中任何用户和任何服务元素的用户,主要为应用进程通信,分布系统实现提供基本的控制机制.特定服务SASE则要满足一些特定服务,如文卷传送,访问管理,作业传送,银行事务,订单输入等.

    这些将涉及到虚拟终端,作业传送与操作,文卷传送及访问管理,远程数据库访问,图形核心系统,开放系统互连管理等等.应用层的标准有DP8649"公共应用服务元素",DP8650"公共应用服务元素用协议",文件传送,访问和管理服务及协议.

    讨论:OSI七层模型是一个理论模型,实际应用则千变万化,因此更多把它作为分析、评判各种网络技术的依据;对大多数应用来说,只将它的协议族(即协议堆栈)与七层模型作大致的对应,看看实际用到的特定协议是属于七层中某个子层,还是包括了上下多层的功能。

    这样分层的好处有: 1.使人们容易探讨和理解协议的许多细节。

    2.在各层间标准化接口,允许不同的产品只提供各层功能的一部分,(如路由器在一到三层),或者只提供协议功能的一部分。(如Win95中的Microsoft

    TCP/IP) 3. 创建更好集成的环境。 4. 减少复杂性,允许更容易编程改变或快速评估。 5.

    用各层的headers和trailers排错。 6.较低的层为较高的层提供服务。 7. 把复杂的网络划分成为更容易管理的层。

    分享:

    喜欢

    0

    赠金笔

    加载中,请稍候......

    评论加载中,请稍候...

    发评论

    登录名: 密码: 找回密码 注册记住登录状态

    昵   称:

    评论并转载此博文

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    展开全文
  • 接口电路的分类、功能及作用

    千次阅读 2021-07-26 01:15:34
    接口电路:计算机之间,计算机与外围设备之间,计算机内部部件之间起连接作用的逻辑电路。接口电路是CPU与外部设备进行信息交互的桥梁。输入、输出接口电路也称为 I/O 电路(INPUT/Output),即通常所说的适配器、适配...

    接口电路:计算机之间,计算机与外围设备之间,计算机内部部件之间起连接作用的逻辑电路。接口电路是CPU与外部设备进行信息交互的桥梁。

    输入、输出接口电路也称为 I/O 电路(INPUT/Output),即通常所说的适配器、适配卡或接口卡。它是微型计算机与外部设备交换信息的桥梁。

    (1)接口电路结构:一般由寄存器组、专用存储器和控制电路几部分组成,当前的控制指令、通信数据、以及外部设备的状态信息等分别存放在专用存储器或寄存器组中。

    (2)接口电路的连接:所有外部设备都通过各自的接口电路连接到微型计算机的系统总线上去。

    (3)通信方式:分为并行通信和串行通信。并行通信是将数据各位同时传送;串行通信则使数据一位一位地顺序传送。

    接口电路的分类

    固定式单端口地址译码 采用门电路或译码器进行译码,设计完毕后端口地址不能更改。

    可选式端口地址译码 通过比较器和译码器等组成,端口地址可以通过DIP开关进行更改。

    采用可编程逻辑阵列实现逻辑电路

    e4f1b0e602121c563d015580b02864f0.png

    固定式单端口地址译码(1)

    99ce473a5f34eaf5c99d5f0899670d01.png

    固定式单端口地址译码(2)

    8260837e964b12801c06ed675610ac12.png

    固定式单端口地址译码(3)

    2a1461ec39cf0548211d3ff2b1745b18.png

    ac897ba94ef8f12c6a5371eacb2c55a6.png

    3-8译码器译码电路

    接口电路有哪些形式

    1、固定式结构:SSI,MSI (IC)

    2、半固定结构:GAL, PAL

    3、可编程结构:可编程芯片

    4、智能型结构:带微处理器

    接口电路的功能

    接口电路主要的功能是电平衔接和阻抗匹配。有时还有简单的信号处理或“保养”、静电保护、交直流隔离等等。

    接口电路的作用是什么

    (1)设置数据的寄存、缓冲逻辑,以适应CPU与外设之间的速度差异,接口通常由一些寄存器或RAM芯片组成,如果芯片足够大还可以实现批量数据的传输;

    (2)能够进行信息格式的转换,例如串行和并行的转换;

    (3)能够协调CPU和外设两者在信息的类型和电平的差异,如电平转换驱动器、数/模或模/数转换器等;

    (4)协调时序差异;

    (5)地址译码和设备选择功能;

    (6)设置中断和DMA控制逻辑,以保证在中断和DMA允许的情况下产生中断和DMA请求信号,并在接受到中断和DMA应答之后完成中断处理和DMA传输。

    I/O接口是电子电路,通常是IC芯片或接口板,其内有若干专用寄存器和相应的控制逻辑电路构成。它是CPU和I/O设备之间交换信息的媒介和桥梁.CPU与外部设备、存储器的连接和数据交换都需要通过接口设备来实现,前者被称为I/O接口,而后者则被称为存储器接口。存储器通常在CPU的同步控制下工作,接口电路比较简单;而I/O设备品种繁多,其相应的接口电路也各不相同,因此,习惯上说到接口只是指I/O接口。I/O接口的硬件主要有:

    (1)I/O接口芯片

    这些芯片大都是集成电路,通过CPU输入不同的命令和参数,并控制相关的I/O电路和简单的外设作相应的操作,常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。

    (2)I/O接口控制卡

    有若干个集成电路按一定的逻辑组成为一个部件,或者直接与CPU同在主板上,或是一个插件插在系统总线插槽上。

    展开全文
  • Modbus协议目前存在用于串口、以太网以及其他支持互联网协议的网络的版本。 对于串行连接,存在两个变种,它们在数值数据表示不同和协议细节上略有不同。Modbus RTU是一种紧凑的,采用二进制表示数据的方式,Modbus ...

    Modbus协议

    Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。
    Modbus协议目前存在用于串口、以太网以及其他支持互联网协议的网络的版本。
    对于串行连接,存在两个变种,它们在数值数据表示不同和协议细节上略有不同。Modbus RTU是一种紧凑的,采用二进制表示数据的方式,Modbus ASCII是一种人类可读的,冗长的表示方式。这两个变种都使用串行通信(serial communication)方式。RTU格式后续的命令/数据带有循环冗余校验的校验和,而ASCII格式采用纵向冗余校验的校验和。被配置为RTU变种的节点不会和设置为ASCII变种的节点通信,反之亦然。
    对于通过TCP/IP(例如以太网)的连接,存在多个Modbus/TCP变种,这种方式不需要校验和计算。
    对于所有的这三种通信协议在数据模型和功能调用上都是相同的,只有封装方式是不同的。

    Modbus RTU 模式

    Modbus-RTU模式是指当控制器设为在Modbus网络上以RTU(远程终端模式)模式通信,在消息中的每个8Bit包含两个4Bit的十六进制字符。

    使用RTU模式注意下面两点:

    1、信息帧发送至少要以3.5个字符时间的停顿间隔开始。在最后一个字符传输字符之后,一个至少3.5个字符时间的停顿标定了信息帧的结束。一个新的信息帧可在此停顿之后开始。如果一个新消息在小于3.5个字符时间内接着前个消息开始,接受的设备将认为它是前一信息帧的延续,这将导致CRC码的值出错。

    2、整个信息帧必须作为一连续的流传输。如果在帧完成之前有超过1.5字符时间的停顿时间,接受设备将刷新不完整的信息帧并认为存在丢包现象。

    通讯数据(信息帧)格式:

    数据格式地址码功能码数据区错误校验
    数据长度1字节1字节N字节16位CRC码(冗余循环码)

    当通讯命令由发送设备(主机)发送至接收设备(从机)时,符合相应地址码的从机接收通讯命令,并根据功能码及相关要求读取信息,如果CRC校验无误,则执行相应的任务,然后把执行结果(数据)返送给主机。返回的信息中包括地址码、功能码、执行后的数据以及CRC校验码。如果CRC校验出错就不返回任何信息。

    Modbus ASCII 模式

    ASCII模式与TCP模式,只是语法上的不同,没有本质上的区别。

    ASCII(American Standard Code for Information Interchange)的中文翻译是美国信息互换标准代码,它基于拉丁字母的一套电脑编码系统。主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。

    ASCII第一次以规范标准的型态发表是在1967年,最后一次更新则是在1986年,至今为止共定义了128个字符,这是标准的ASCII。

    其构成说明如下:0~ 31及127是控制字符或通信专用字符;32~ 126是字符,其中48~ 57为0~ 9十个阿拉伯数字,65~ 90为25个大写英文字母,97~122号为26个小写英文字母,其余位一些标点符号。

    ASCII表

    在标准ASCII中,其最高位(b7)用作奇偶校验位。ASCII码主要用于计算机领域,在国内工业控制中很少采用ASCII码作为标准,所以Modus ASCII在国内的工业控制领域运用很少。
    在ASCII传输模式下,消息帧以英文冒号“:”(3A)开始,以回车(0D)和换行(0A)结束,允许传输的字符集为十六进制的0~ 9和A~F。网络中的从设备监视传输通路上是否有英文冒号“:”,如果有的话,就对消息帧进行解码。查看消息中的地址是否与自己的地址相同,如果相同的话,就接收其中数据;如果不同的话就不予理会。其消息帧格式如下:

    开始地址功能码数据数量数据LRC结束
    1字符 :2字符2字符2字节n字符2字符2字符

    在ASCII模式下,每个8位的字节被拆分成两个ASCII字符进行发送,比如十六进制0xAF(1010 1111),会被分解成ASCII字符“A”(0100 0001)和”F”(0100 0110)进行发送,其发送量显然比RTU增加一倍。ACII模式的好处是允许两个字符之间间隔的时间长达1s而不引发通信故障,该模式采用纵向冗余校验(LRC)。

    综上所述,同一条命令用Modbus RTU和Modbus ASCII方式表现出来,虽然在命令长度上有很大区别(ASCII为RTU的两倍),但表达的意思是完全一样的。

    对于一条RTU协议的命令可以简单的通过以下的步骤转化为ASCII协议的命令:

    1. 把命令的CRC校验去掉,并且计算出LRC校验取代。

    2. 把生成的命令串的每一个字节转化成对应的两个字节的ASCII码,比如0x03转化成0x30,0x33(0的ASCII码和3的ASCII码)。

    3. 在命令的开头加上起始标记“:”,它的ASCII码为0x3A。

    4. 在命令的尾部加上结束标记CR,LF(0xD,0xA),此处的CR,LF表示回车和换行的ASCII码。

    Modbus TCP/IP 模式

    TCP/IP协议已成为信息行业的事实标准,世界上93%的网络都使用TCP/IP协议(在网络层使用IP协议,在传输层使用TCP协议),只要在应用层使用Modbus 协议,就构成了完整的工业以太网。
    TCP/IP协议并不完全符合OSI的七层参考模型,OSI(Open System Interconnect)是传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。

    OSI七层

    • 物理层(Physical Layer)主要是处理机械的、电气的和过程的接口,以及物理层下的物理传输介质等。
    • 数据链路层(Data Link Layer)的任务是加强物理层的功能,使其对网络层显示为一条无错的线路。
    • 网络层(Network Layer)确定分组从源端到目的端的路由选择。路由可以选用网络中固定的静态路由表,也可以在每一次会话时决定,还可以根据当前的网络负载状况,灵活地为每一个分组分别决定。
    • 传输层(Transport Layer)从会话层接收数据,并传输给网络层,同时确保到达目的端的各段信息正确无误,而且使会话层不受硬件变化的影响。通常,会话层每请求建立一个传输连接,传输层就会为其创建一个独立的网络连接。但如果传输连接需要一个较高的吞吐量,传输层也可以为其创建多个网络连接,让数据在这些网络连接上分流,以提高吞吐量。而另一方面,如果创建或维持一个独立的网络连接不合算,传输层也可将几个传输连接复用到同一个网络连接上,以降低费用。除了多路复用,传输层还需要解决跨网络连接的建立和拆除,并具有流量控制机制。
    • 会话层(Session Layer)允许不同机器上的用户之间建立会话关系,既可以进行类似传输层的普通数据传输,也可以被用于远程登录到分时系统或在两台机器间传递文件。
    • 表示层(Presentation Layer)用于完成一些特定的功能,这些功能由于经常被请求,因此人们希望有通用的解决办法,而不是由每个用户各自实现。
    • 应用层(Application Layer)中包含了大量人们普遍需要的协议。不同的文件系统有不同的文件命名原则和不同的文本行表示方法等,不同的系统之间传输文件还有各种不兼容问题,这些都将由应用层来处理。此外,应用层还有虚拟终端、电子邮件和新闻组等各种通用和专用的功能。

    Modbus TCP/IP与Modbus RTU不同之处就是7个字节的报文头(RTU中的从机地址作为单元标识符进入报文头),数据部分的语法完全和RTU一样。

    数据链路层的CRC校验与传输层的校验和已经对应用层报文进行了校验,因此RTU中原有的CRC校验取消。

    Modbus TCP/IP的协议结构如下所示:
    modbus TCP
    事务处理标识符(2字节):MODBUS请求和响应传输过程中序列号,此字段应答报文与请求报文保持一致。
    协议标识符(2字节):0表示modbus,1表示UNI-TE协议,一般默认为0x0000,此字段应答报文与请求报文保持一致。
    长度(2字节):用来表示接下来的数据长度(包含单元标识符及数据域),单位为字节。
    单元标识符(1字节):用以标识在串行线或网络上的远程服务端的地址,通常情况下意义不大,被IP地址取代。但当TCP与RTU之间进行协议转换时,该数据就是RTU中的地址码。

    注意:

    1. 在Modbus TCP/IP中,服务器是从机,而客户端是主机。
    2. 除非设备作为modbus网关服务器挂接多个RTU设备时,数值为01-FF,否则一般为00。
    3. 事务处理标识符一般默认为0x0000

    示例:

    将Modbus RTU改写成Modbus TCP/IP形式。

    Modbus RTU:01 03 01 8E 00 04 25 DE

    Modbus TCP/IP:00 00 00 00 00 06 01 03 01 8E 00 04

    两者含义是一样的,就是从地址码为01的模块的0x018E寄存器地址开始读4个寄存器。

    串口服务器

    简介

    本次使用的是某公司的NCOM系列串口服务器,能够将 1-16 路标准的 RS232 或 RS485 串口信号转 换成 TCP/IP 网络信号,实现 RS232/485 串口与 TCP/IP 网络接口之间数据的双向透明传 输;除具备常规串口服务器功能外,还具备 Modbus 网关的功能,将 ModbusTCP 与 ModbusRTU/ModbusASCII 协议之间进行转换,使用户的 Modbus 串口设备能够立即具备 TCP/IP 网络接口功能,连接网络进行数据通信,极大的扩展串口设备的通信距离。

    串口服务器的背靠背应用,主要用于串口设备的网络扩展,让现有的串口设备通过互联网 连接起来,从而解决串口设备通讯距离短的问题,也大大降低传统 RS232/485 串行总线设备 布线的难度。此应用一般是利用现有网络进行连接,节省了施工和维护成本,且不受地域限制。 可广泛应用于楼宇自控、 工业自动化、 测量仪表及环境动力监控系统、 信息家电和 LED 信 息显示设备等领域。
    modbus典型应用

    测试

    1. 连接设备,接通电源;
      串口服务器

    2. 修改电脑IP,使其和串口服务器的IP 地址为同一网段;
      修改电脑ip
      添加网段

    3. 设置参数;
      打开串口服务器的设置网址(此处为192.168.1.5),输入密码,进入设置界面:
      设置界面
      串口参数设置
      网络参数设置
      也可以通过设备厂商配套的配置软件设置相关参数:
      配置软件界面
      配置软件配置参数

    4. 功能测试
      通过配套的集成调试工具,设置相关参数,点击连接,在发送区输入信息,点击发送,若设置无误即可正常通讯。数据帧格式参考上文。
      集成调试工具
      也可通过配套的Modbus Poll软件。
      打开软件,点击第四个set up,点击Read/Write Definition
      数据帧设置
      之后点击第三个connection,点击Connection Setup
      连接参数设置
      设置无误后,显示正常连接数据:
      数据
      功能测试完成。

    参考文档:
    Modbus通讯协议(一)——概述
    Modbus通讯协议(二)——RTU
    Modbus通讯协议之三——ASCII
    Modbus通讯协议之四——TCP/IP

    展开全文
  • 选 AEA、实现计算机与局域网传输介质之间的物理连接和信号匹配E、具有数据缓存能力陈冬的回答:选 AEA、实现计算机与局域网传输介质之间的物理连接和信号匹配E、具有数据缓存能力蘰踄繧鍴的回答:网卡功能简述网卡是...
  • 51单片机串口中断功能的设置

    千次阅读 2021-01-15 16:07:43
    51单片机的串口功能就是和外界进行通讯,所谓的“外界”也就是与单片机进行交互的媒介,最常用的就是我们经常使用的计算机、平板或者其他设备(比如另一个单片机配合显示模块使用)。 既然和外界需要“交互”,就...
  • 摘要:串口通信是一种广泛使用且实用的通信方式,介绍RS232串行通信的联结方式,研究利用c语言编程实现RS232串行通信的过程。结合实际应用,在约定双方串行通信协议的基础上,运用C语言开发的串行通信软件,实现了...
  • STM32实现串口和DMA功能(1)

    千次阅读 2021-10-19 16:23:39
    产品总共用到两个串口串口1是用于产品Debug功能主要用于监控串口2和Wifi模块的通讯数据,方便调试,目前做物联网产品基本是通过串口来接收和发送数据,而这种一般有一个复杂的通讯协议,在调试过程中肯定会有很...
  • 之前的文章中介绍了与串口相关的各电气标准,上一篇文章主要是介绍如何用Verilog语言来完成串口接收功能。在前期查询资料的过程中,在黑金动力社区-博客园也是发现了有关这部分的相关知识,其中也是给出了设计源码,...
  • 串口服务器的功能串口服务器是一种通信协议转换器,它设有两类通信端口:一类是标准的RS232/422/485格式的串行端口,远程的RTU(远程终端设备)监控模块通过串行控制总线接入串口服务器的此类端口;另一类是以太网口,...
  • 并口的主要特点:并行接口是指数据的各位同时进行传送,其特点是传输速度快,但当传输距离较远、位数又多时,就导致通信线路复杂且成本提高。并口的分类:在IEEE1284标准中定义了多种并行接口模式,常用的有以下三种...
  • 8051单片机包含哪些主要逻辑功能部件?画出它的基本结构图 8051单片机包含的主要逻辑功能部件: 一个八位微处理器CPU,单片机的核心,用于产生各种控制信号,并完成对数据的算术逻辑运算和传送。(CPU即中央处理器,...
  • 我实际上不使用真正的串口,而是使用虚拟小工具串口驱动程序/ dev / ttyGS0.文件描述符作为非阻塞打开.我的程序定期生成数据并将其发送到/ dev / ttyGS0.如果另一端读取它没有信息.如果没有,则一些内部fifo填满并写入...
  • 第2章物理层的两大子层和三大接口 2.1 两大子层 2.2 三大接口 第3章 物理层内部功能协议栈 第4章 不同信道的功能协议分层 4.1 4G LTE下行选项A 4.24G LTE下行选项B 4.3 5G NR下行选项A 4.45G NR下行选项B ...
  • 虽然近年来随着USB口的日趋流行,RS232接口串口作为一种传统的串口通信口有被取代的趋势。然而由于它具有较高的性价比和传输的可靠性Ⅲ。在传输速率要求不是很高的情况下,串口通信仍然具有其自身的优势。同时RS232...
  • 串口服务器到底能干啥:这个串口服务器,说白了就是个提供被动传输数据的中转站,通过其自身所带有的可连接性,可同时连接计算机的Web服务器与串口端口。帮助串口与网络形成交互联系,并实行数据的双向透明的数据...
  • 主要有以下几点需要完善: 需要接收中文 打开串口的pushbotton,点击打开后需要改为关闭串口功能 1. 完善接收中文功能 这一块我在帮助手册上是找不到解决办法,只能在网上看有没有解决办法了, 参考了网上这位博主...
  • 串口通信是一种广泛使用且实用的通信方式,介绍RS232串行通信的联结方式,研究利用c语言编程实现RS232串行通信的过程。结合实际应用,在约定双方串行通信协议的基础上,运用C语言开发的串行通信软件,实现了企业生产...
  • 本人主要从事嵌入式应用软件的开发工作,开发的产品多数为嵌入式设备软件,其中就包括仪器端需要通过蓝牙串口将测量数据导出的问题。在开发过程中,为了方便调试该功能,想到了PC端蓝牙串口功能。PC端启动蓝牙串口...
  • 目录前言 前言   最近在研究ESP32的...这就意味着串口是能控制ESP32重启的,主要是通过串口RTS和DTR控制。   正好我要写的Qt上位机就需要有一个让设备重启的功能,那么Qt要怎么去控制RTS和DTR这两个信号呢? ...
  • 关注+星标公众号,不错过精彩内容作者 | strongerHuang微信公众号|嵌入式专栏嵌入式软件基本都会存在打印输出数据的情况,我们最常见就是串口打印输出。如果我们手里没有232...
  • DMA-直接存储器,它的主要功能式用来搬运数据,但是不要占用CPU,即在传输数据的时候,CPU可以干其他的事情,好像是多线程一样。 具体情况可以分为三种: 1、内存到内存,比如说Flash到Sram 2、外设到内存...
  • 串口通信接口标准学习(三)——RS232》中我们学习了RS232串行通信接口标准,这里我们继续了解RS-422与RS-485de 串口标准。
  • 6.4 串口通信的收与发26.1.1 什么是串口通信26.1.2 串口通信的属性26.1.3 什么是单片机的TTL 电平?66.1.4 关于NPN和PNP 的三极管基础知识?86.1.5 RS-232 电平与TTL 电平的转换96.1.6 串口波特率的理解116.1.7 STM...
  • 背景技术:串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口(Serial Interface)是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就...
  • 串口寄存器 USART_SR 状态寄存器 USART_DR 数据寄存器 USART_BRR 波特率寄存器 串口操作相关库函数 void USART_Init(); //串口初始化:波特率,数据字长,奇偶校验,硬件流控以及收发使能 void USART_Cmd();//使能...
  • 因此各种接口的WLAN芯片成为了各大厂商发展的主要方向。目前主流的接口有:USB,SDIO,UART,SPI等。本文设计了一款支持多接口、多协议的无线局域网802.11n(1T1R)的SoC芯片。该SoC芯片集成了SDIO,SPI,UART等接口。...
  • 摘要:串口通信是一种广泛使用且实用的通信方式,介绍RS232串行通信的联结方式,研究利用c语言编程实现RS232串行通信的过程。结合实际应用,在约定双方串行通信协议的基础上,运用C语言开发的串行通信软件,实现了...
  • 文章目录main.c main.c #include "sys.h" #include "usart.h" #include "delay.h" #include "led.h" int main(void) { u8 t; ... NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);... //串口初始化为 9600 LE

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 134,368
精华内容 53,747
关键字:

串行接口的主要功能