DB9引脚在UART,CAN,RS485中的定义

  今日核对DB9的信号,突然发现此类问题居然需要百度解决,心绪惘然,遂将次整理成章,以备后用。

  DB9的公母如下:

  

  需要注意公母的定义,印象比较深刻的公头,因为用的比较多,引脚序号已经深入印在我的脑海。母座如果和公头对接,引脚定义是完全一一对应的,所以母座的引脚序号与公头是倒置相反的。即如果按照公头的方式摆放母座,12345的序号与54321的序号是一一对应的。6789与9876的序号是一一对应的。注意无论是公头还是母座都是序号1紧靠序号6,序号5紧靠序号9。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  DB9的UART定义公头是2-RX,3-TX,5-GND,对应的母座就是2-TX,3-RX,5-GND,这是为了能让设备之间TX与对方的RX一一对应。

  

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  DB9的RS485定义。RS485常用的的半双工两线制的接口定义为,1-DATA-, 2-DATA+, 5-GND。因RS485的DATA+与DATA+对应,DATA-与DATA-一一对应,所以RS485的公母头不存在信号不一致的情况。

  4线制的RS485有几种不同的命名方法:英式标识为  TDA(-)   TDB(+)   RDA(-)   RDB(+)   GND ;美式标识为Y  Z  A  B  GND;

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  DB9 CAN接口的定义:信号引脚在2与7,因CAN的CAN_H与CAN_H对应,CAN_L与CAN_L一一对应,所以RS485的公母头不存在信号不一致的情况。

  

  好了,今天的收获也算是总结完成,加油。

时间: 2024-08-03 05:46:26

DB9引脚在UART,CAN,RS485中的定义的相关文章

Matlab中函数定义方法

Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件,直接定义: n4.匿名函数: n5.Syms+subs:无需M文件,直接定义: n6.字符串+subs:无需M文件,直接定义. ------------ 1.函数文件+调用函数文件:定义多个M文件 % 调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t);

在phpWeChat中如何定义一个授权登录(获取昵称)的链接

在phpWeChat中如何定义一个授权登录(获取昵称)的超链接?使其点击后出现如下效果? 由于集成了这个功能,其实这个需要是很简单的. 假如您想在授权后跳转到http://www.baidu.com/,那么这个链接的地址就是: 1 http://devtest.phpwechat.com/index.php?m=wechat&a=auth20&redirect_url=urlsafe_b64decode('http://www.baidu.com') 授权登录后,系统自动生成$_SESSI

C语言中宏定义(#define)时do{}while(0)的价值(转)

C语言中宏定义(#define)时do{}while(0)的价值 最近在新公司的代码中发现到处用到do{...}while(0),google了一下,发现Stack Overflow上早有很多讨论,总结了一下讨论,加上自己的理解,do{...}while(0)的价值主要体现在: 1. 增加代码的适应性 下面的宏定义没有使用do{...}while(0) #define FOO(x) foo(x); bar(x); 这样宏定义,单独调用不会出现问题,例如: FOO(100) 宏扩展后变成: 1 f

编写STL中没有定义的函数(如果能编译)

实例目标:本例介绍如何编写标准模板库STL中没有定义的函数.这里列举两个例子,一个是将所有数据类型转换成字符串型的to_string函数,另一个是它的"反函数"from_string函数,用来将字符串转化为某一类型 具体内容: 在std::string模板中没有包含一些函数实用性较强的,原因就是因为客户轻易编写其中的代码.例如:可以实现一个将所有数据类型转换为字符串型的to_string函数代码如下: #include<iostream> template<class

ATL中宏定义offsetofclass的使用

近日学习ATL,通过对宏定义offsetofclass的解惑过程,顺便分析下虚函数表,以及通过虚函数表调用函数的问题. 1 解开ATL中宏定义offsetofclass的疑惑 #define _ATL_PACKING  8 #define offsetofclass(base, derived) ((unsigned long)(static_cast <base*>((derived*)_ATL_PACKING))-_ATL_PACKING) 分析如下:(base 基类 , derived

sencha 2.3中自己定义PullRefreshFn给PullRefresh加入下拉刷新事件

Sencha removed the refreshFn from the pullrefresh plugin in ST 2.2. Here is an user extension with gives the old functionality back to you. /** * This user extension gives st 2.3.0 Pullrefresh the RefreshFn back * based on sencha touch 2.3.0 * * @cla

C++编译与链接(0)-.h与.cpp中的定义与声明

C++中有的东西需要放在可以在.h文件中定义,有的东西则必须放在.cpp文件中定义,有的东西在不同的cpp文件中的名字可以一样,而有的则不能一样 那么究竟哪些东西可在头文件中定义,声明,哪些东西又必须在.cpp中定义,声明呢? *以下所有的讨论都是在全局命名空间中(即不定义自己的namespace)下进行的 函数 1.在.h中只能声明函数,在.cpp中可以声明与定义函数 如果在.h中声明并定义一个函数,则该函数只能被#include一次,否则则会出现重定义错误 比如 1.h #pragma on

ATL中宏定义offsetofclass的分析

近日学习ATL,通过对宏定义offsetofclass的解惑过程.顺便分析下虚函数表,以及通过虚函数表调用函数的问题. 1 解开ATL中宏定义offsetofclass的疑惑 #define _ATL_PACKING  8 #define offsetofclass(base, derived) ((unsigned long)(static_cast <base*>((derived*)_ATL_PACKING))-_ATL_PACKING) 分析例如以下:(base 基类 , derive

Web应用中监听者的通知顺序按照DD中的定义顺序

Web应用中监听者的通知顺序按照DD中的定义顺序: XML: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http:/