RS232 RTS和CTS是什么意思
信号符号 |
25芯引脚 |
9芯引脚 |
方向 |
信号描述 |
TXD |
2 |
3 |
O |
发送数据 |
RXD |
3 |
2 |
I |
接收数据 |
RTS |
4 |
7 |
O |
请求传送 |
CTS |
5 |
8 |
I |
允许传送 |
DSR |
6 |
6 |
I |
数据通信装置(DCE)就绪 |
GND |
7 |
5 |
信号地 |
|
DCD |
8 |
1 |
I |
数据载波检测 |
DTR |
20 |
4 |
O |
数据终端设备(DTE)就绪 |
RI |
22 |
9 |
I |
振铃指示 |
在全双工时,RTS和CTS都缺省置为有效即可。【RTS的有效电平为低】
然而,在贺氏的MODEM串口定义中,RTS和CTS用于硬件流控,和全双工/半双工一点关系也没有。注意,硬件流控是靠软件实现的,之所以强调"硬件"二字,仅仅是因为硬件流控提供了用于流量情况指示的硬件连线,并不是说,你只要把线连上,硬件就能自己流控。如果软件不支持,光连上RTS和CTS是没有用的。
RTS和CTS硬件流控的软件算法如下:
(RTS有效表示PC机可以收,CTS有效表示MODEM可以收,这两个信号互相独立,分别指示一个方向的流量情况。)
单片机PC端处理:
发送:
当发现(不一定及时发现)CTS(-3v to-15v)无效时,停止发送,
当发现(不一定及时发现)CTS(3v to 15v)有效时,恢复发送;
收.0 MN LEN_OF_RX_BUFFERS当接收buffers中的bytes M时,给RTS有效信号(+3v to+15v),
当接收buffers中的bytes N时,给RTS无效信号(-3v to-15v);MODEM端处理:同上,但RTS与CTS交换。
————————————————
版权声明:本文为CSDN博主「你来吻」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zmq5411/article/details/6280332
原文地址:https://www.cnblogs.com/icaowu/p/15079043.html
- MySQL远程代码执行/权限提升漏洞的分析与实践(CVE-2016-6662)
- 如何在CDH集群上部署Python3运行环境及运行Python作业
- Hacking Aria2 RPC Daemon
- 如何修改CDH集群的DataNoe节点HOSTNAME
- Sparkjava Framework 文件遍历漏洞(CVE-2016-9177)分析与探究
- 绕过混合内容警告 - 在安全的页面加载不安全的内容
- 如何在Kerberos环境使用Flume采集Kafka数据并写入HDFS
- 熊市里生成几个BTC靓号,冷存储起来装死吧
- 傲游浏览器漏洞系列(上)- 任意文件写入,UXSS
- 如何使用Cloudera Manager在线为集群减容
- GitLab 任意文件读取漏洞 (CVE-2016-9086) 和任意用户 token 泄露漏洞
- 如何使用Hue通过数据文件创建Collections
- GNU tar 解压路径绕过漏洞(CVE-2016-6321) 分析
- Memcached 命令执行漏洞(CVE-2016-8704、CVE-2016-8705、CVE-2016-8706)简析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- springboot 默认日志配置源码
- logback 通过javaconfig实现配置
- springboot通过javaconfig实现logback配置
- 干货来了,vue 3.0 自定义指令变化
- XXE注入漏洞
- vue + typescript 类组件教程
- 图像处理笔记(3)----OpenCV图像算术运算
- V - Distpicker 是一个简单易用的地区选择器
- [漫谈] 状态
- 变量覆盖
- 【Rust日报】2020-08-27 在Arduino Uno上面跑 Rust 程序
- 浅谈类加载
- Rust FFI 编程 - Rust导出共享库06
- go语言文件操作汇总
- Redis 主从复制 哨兵模式实战