rts

UART通信中流控RTS和CTS的理解

纵饮孤独 提交于 2019-12-10 06:54:50
一、流控,顾名思义就是流量控制的意思。目的是协调收发双方,使数据不会丢失。 如果UART只有RX、TX两个信号,要流控的话只能是软流控; 如果有RX,TX,CTS,RTS 四个信号,则多半是支持硬流控的UART; RTS (Require ToSend,发送请求) 为输出信号,用于指示本设备准备好可接收数据,低电平有效,低电平说明本设备可以接收数据。 CTS (Clear ToSend,发送允许) 为输入信号,用于判断是否可以向对方发送数据,低电平有效,低电平说明本设备可以向对方发送数据。 二、很多人用了串口很久都不知道这回事,这是因为很多场合确实没有必要。 收发双方波特率固定,并且接受数组足够大,这时不会出现接收方接受数组溢出导致数据丢失的情况,所以,以我的理解,使用流控的主要目的就是在数据量大,有可能出现接受数组溢出的时候,采取的一种协调收发双方的措施。 三、流控设计到RTS和CTS两个口,收发双方都有各自的RTS和CTS,如通信双方A,B。那么A的RTS就与B的CTS相连,A的CTS就与B的RTS相连。 RTS的作用是告诉对方我可以接受数据,是输出口;CTS的作用是根据电平高低控制发送或不发生数据。 如:A与B通信,现在A给B发送数据,当B出现某种情况(可能是接受缓存快要满了)的时候,B的RTS拉低(一般拉低表示有效,但也不一定),A的CTS是与B的RTS相连的

详解RS232、RS485、RS422、串口和握手

牧云@^-^@ 提交于 2019-11-29 04:54:05
详解RS232、RS485、RS422、串口和握手 2019年08月06日 16:20:08 不脱发的程序猿 阅读数 1423更多 分类专栏: 技术分享 程序人生 通信 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/m0_38106923/article/details/98615747 目录 1、RS232基础 1.1、电气特性 1.2、连接器的机械特性 1.3、传输电缆 1.4、链路层 1.5、传输控制 1.6、RS-232标准的不足 2、RS485基础 2.1、RS-485 的电气特性 2.2、传输速率与传输距离 2.3、网络拓扑 2.4、连接器 3、RS422基础知识 4、串口与握手基础知识 4.1、串口基础知识 4.1.1、波特率 4.1.2、数据位 4.1.3、停止位 4.1.4、奇偶校验位 4.2、握手基础知识 4.2.1、软件握手 4.2.2、硬件握手 4.2.3、XModem握手 1、RS232基础 计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。 在串行通讯时,要求通讯双方都采用一个标准接口

unity RTS游戏制作教程

别等时光非礼了梦想. 提交于 2019-11-27 05:24:07
大家对魔兽世界-冰封王座,红警之类的游戏应该是非常熟悉的吧,这就是典型的RTS游戏,什么是RTS游戏呢?就是即时策略游戏,玩家可以调兵遣将,创建建筑等。考验你的军事能力了。这类游戏的体现就是我们需要自己去思考,用什么方式,策略来赢得比赛,非常刺激。我们首先需要创建一些建筑,然后建筑可以生产军队等。我们然后带领军队去战胜其他玩家就可以了。那么你们知道游戏中的一些功能是怎么做的吗?比如建筑的创建,军队的控制等。那么我们今天就要搞定这些。 首先,我们做RTS游戏,创建建筑是非常必要的。那么这个怎么做呢?其实用射线检测就可以了,判断点击的是否是空地,如果是就可以创建了,如果不是就不能创建,同时需要作出视觉上的提示,比如显示不同的颜色。来区别可建地域及不可建地域。那么这里我是这么做的: 然后可以创建了过后,我们需要一些显示相关的操作,所有我们需要特殊的Shader来帮助我们达到这样的效果,那么怎么做呢?我这里采用的是透明度混合来做的。用颜色和主纹理的颜色来进行透明度混合,然后外部根据情况改变物体的透明度。做到选择时半透明,创建后就恢复原状的需求。然后颜色的改变也是通过外部改变Shader里面的变量。通过射线检测碰到的物体来区别不一样的颜色显示。具体代码如下: 这是核心代码,其他代码无关紧要。然后我们就能够做出这样的需求了。做出后的效果就是开头图片的样子。OK,这节就到这里了,素材源码视频教程