多串口通讯协议转换案例
- 格式:doc
- 大小:2.22 KB
- 文档页数:1
USART串⼝协议1、串⾏通讯与并⾏通讯 按数据传送的⽅式,通讯可分为串⾏通讯与并⾏通讯,串⾏通讯是指设备之间通过少量数据信号线(⼀般是 8 根以下),地线以及控制信号线,按数据位形式⼀位⼀位地传输数据的通讯⽅式。
⽽并⾏通讯⼀般是指使⽤ 8、 16、 32 及 64 根或更多的数据线进⾏传输的通讯⽅式,它们的通讯传输对⽐说明见下图: 很明显,因为⼀次可传输多个数据位的数据,在数据传输速率相同的情况下,并⾏通讯传输的数据量要⼤得多,⽽串⾏通讯则可以节省数据线的硬件成本(特别是远距离时)以及 PCB 的布线⾯积,串⾏通讯与并⾏通讯的特性对⽐见下表:不过由于并⾏传输对同步要求较⾼,且随着通讯速率的提⾼,信号⼲扰的问题会显著影响通讯性能,现在随着技术的发展,越来越多的应⽤场合采⽤⾼速率的串⾏差分传输。
2、全双⼯、半双⼯及单⼯通讯 根据数据通讯的⽅向,通讯⼜分为全双⼯、半双⼯及单⼯通讯,它们主要以信道的⽅向来区分,见下图:3、同步通讯与异步通讯 根据通讯的数据同步⽅式,⼜分为同步和异步两种,可以根据通讯过程中是否有使⽤到时钟信号进⾏简单的区分。
在同步通讯中,收发设备双⽅会使⽤⼀根信号线表⽰时钟信号,在时钟信号的驱动下双⽅进⾏协调,同步数据,见下图。
通讯中通常双⽅会统⼀规定在时钟信号的上升沿或下降沿对数据线进⾏采样。
在异步通讯中不使⽤时钟信号进⾏数据同步,它们直接在数据信号中穿插⼀些同步⽤的信号位,或者把主体数据进⾏打包,以数据帧的格式传输数据,见下图,某些通讯中还需要双⽅约定数据的传输速率,以便更好地同步。
在同步通讯中,数据信号所传输的内容绝⼤部分就是有效数据,⽽异步通讯中会包含有帧的各种标识符,所以同步通讯的效率更⾼,但是同步通讯双⽅的时钟允许误差较⼩,⽽异步通讯双⽅的时钟允许误差较⼤。
4、通讯速率 衡量通讯性能的⼀个⾮常重要的参数就是通讯速率,通常以⽐特率(Bitrate)来表⽰,即每秒钟传输的⼆进制位数,单位为⽐特每秒(bit/s)。
USR-TCP232-T2说明书文件版本:V1.0.0目录USR-TCP232-T2说明书 (1)1.快速入门 (4)1.1.模块硬件环境测试 (4)1.2.网络连接 (4)1.3.默认参数 (5)1.4.数据传输测试 (5)2.产品概述 (7)2.1.产品简介 (7)2.2.产品特点 (7)2.3.电气参数 (7)2.4.硬件说明 (8)2.5.尺寸描述 (9)3.产品功能 (11)3.1.工作模式 (11)3.1.1.TCP Client模式特性 (11)3.1.2.TCP Server模式特性 (12)3.1.3.UDP Client模式特性 (12)3.1.4.UDP Server模式特性 (12)3.1.5.HTTPD Client (12)3.1.6.TCP和UDP机制 (12)3.2.DHCP和DNS功能 (13)3.3.VCOM应用模式 (14)3.3.1.模块做Client (14)3.3.2.模块做Server (15)3.3.3.建立串口的其他方式 (16)3.4.特殊功能 (17)3.4.1.RS485功能 (17)3.4.2.透传云功能 (17)3.4.3.Link功能 (18)3.4.4.恢复出厂设置功能 (19)3.4.5.Reset功能 (19)3.4.6.ID功能 (19)3.4.7.Index功能 (19)3.4.8.类RFC2217功能 (20)3.5.新增功能 (20)3.5.1.AT指令功能 (20)3.5.2.按连接显示IP及发送接收数据量 (20)3.5.3.TCP Server连接Client数量可设置 (21)3.5.4.MAC地址可自定义 (21)3.5.5.DNS服务器地址可自定义 (21)3.5.6.自定义注册包功能 (21)3.5.7.自定义心跳包功能 (21)3.5.8.HTTPD 功能 (21)3.6.固件升级 (21)4.设置方法 (23)4.1.用户配置流程 (23)4.2.打开管理网页 (23)4.3.状态显示 (24)4.4.本机IP设置 (25)4.5.串口参数 (25)4.6.扩展功能 (26)4.7.高级设置 (27)4.8.模块管理 (27)4.9.设置软件 (27)5.免责声明 (31)6.更新历史 (31)1.快速入门联网模块USR-TCP232-T2用于实现串口到以太网口的数据的双向透明转发,用户无需关心具体细节,模块内部完成协议转换,通过简单设置即可设定工作细节。
串口232转通讯485遇到的问题说的还是前一段时间给老板的朋友做控制器的事,在这个小项目上我可真是长见识了。
在这个项目里用到了一个霍尼韦尔的传感器,传感器是通过232口和上位机通讯的,通讯波特率2400,数据格式1位起始位、1位停止位、8位数据位、没有奇偶校验、每帧数据有一个求和校验。
有3中命令:50 03 AD;50 00 B0;50 01 AF。
这里咱们不研究通讯数据就不细说了,总之看起来很简单。
刚拿到传感器的时候我得先检验一下是不是好使,接上电源,接通232到我电脑的串口1,然后用串口调试软件发命令,传感器很快有了相应,这证明传感器是好的,可以放心的做我的工作了。
做程序之前我还要知道传感器响应的速度,这有关于我单片机处理能力,所以找来串口调试软件Commix这个软件可以显示发送到接收的时间。
测得结果还不算快,两个命令是10多毫秒的,一个命令是1秒多的,我的ATMEGA8完全可以应付得过来。
这里要说一下,这个传感器是232口的,它工作的地方距离我的控制器100多米,由于232的传输有效距离是15米,我们需要把232转成485传到我的控制器上,485的有效传输距离可达1000米。
测过通讯我就动手做程序了,没到一个星期就做好了,可问题接着就来了,当我把传感器接上232转485转换器连到我的控制器的485口上时无论如何也通不上。
用另一个232转485接到电脑上监视通讯数据时发现控制器发出的命令成了乱码,我的控制器通过一个232转485接到电脑上通讯正常,原来试传感器接电脑也正常,再试试传感器接232转485再接232转485接到电脑上,通讯失败。
于是怀疑是传感器的232口带不动485转换器,让老板买了一个232和485端都带驱动带隔离的转接器回来一试还是不行。
从网上找来一个232转485的电路,自己动手用MAX232和65LBC184搭了一个转换电路,仍然不行。
本来是很规则的波形,变成了杂乱无章的波形。
串口通讯—RS-232-C详解串行通信接口标准经过使用和发展,目前已经有几种。
但都是在RS-232标准的基础上经过改进而形成的。
所以,以RS-232C为主来讨论。
RS-323C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。
它适合于数据传输速率在0~20000b/s 范围内的通信。
这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。
由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。
在讨论RS-232C接口标准的内容之前,先说明两点:首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。
因此这个标准的制定,并未考虑计算机系统的应用要求。
但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。
显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。
有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了其次,RS-232C标准中所提到的“发送”和“接收”,都是站在DTE立场上,而不是站在DCE的立场来定义的。
由于在计算机系统中,往往是CPU和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。
一、RS-232-CRS-232C标准(协议)的全称是EIA-RS-232C标准,其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969),在这之前,有RS232B、RS232A。
它规定连接电缆和机械、电气特性、信号功能及传送过程。
串口 RS232/485 /422 转 WiFi/以太网服务器用户手册串口RS232/485/422 转WiFi/以太网服务器用户手册V1.3FB-W210上海丰宝电子信息科技有限公司版本信息说明版本型号说明版本修改时间修改内容Rev.1 2015 年04 月012 日创建原始文档Rev.2 2016 年09 月20 日增加了Modbus TCP 转换功能Rev.3 2019 年05 月16 日增加虚拟串口透传通道说明所有权信息未经版权所有者同意,不得将本文档的全部或者部分以纸面或者电子文档的形式重新发布。
本文档只用于辅助读者使用产品,上海丰宝电子信息科技有限公司不对使用该文档中的信息而引起的损失或者错误负责。
本文档描述的产品和文本正在不断地开发和完善中。
上海丰宝电子信息科技有限公司有权利在未通知用户的情况下修改本文档。
目录1.产品概述 (5)1.1概述 (5)1.2产品参数 (5)1.3主要应用 (7)2.硬件介绍 (8)2.1接口定义 (9)2.2RS232 接口说明 (10)2.3RS485 接口说明 (11)2.4RS422 接口说明 (11)2.5RJ45 接口说明 (11)2.6机械尺寸 (12)3.功能描述 (12)3.1基础网络协议 (13)3.2无线组网 (13)3.2.1基于AP 的无线网络 (14)3.2.2基于STA 的无线网络 (14)3.2.3AP+STA 方式的无线网络 (15)3.2.4IOT Manager 软件配置 (16)3.2.5网页配置方式 (17)3.3以太网接口功能 (17)3.3.1以太网接口+Wi-Fi 组合功能 (18)3.3.2以太网接口功能(路由模式) (18)3.3.2 以太网接口功能(桥接模式) (19)3.4工作模式 (21)3.4.1透明传输模式 (21)3.4.2TCP Server (21)3.4.3多Socket 通讯 (22)3.4.4HTTP 模式 (22)3.4.5Telnetd 模式 (26)3.4.6Web Socket 模式 (27)3.4.7MQTT 模式 (29)3.4.8阿里IOT 和阿里Studio (30)串口 RS232/485 /422 转 WiFi/以太网服务器用户手册3.4.9AES/DES3/TLS 数据加密 (30)3.5TCP Keepalive (31)3.6超时时间Timeout (32)3.7路由设置 (32)3.8UART 自动成帧功能 (33)3.8.1UART 自由组帧模式 (33)3.8.2UART 自动成帧模式 (34)3.8.3标签功能 (34)3.9Modbus 协议 (35)3.10Cli 命令 (35)3.11串口流控和RS485 功能 (36)3.12固件升级 (36)3.13网页功能 (37)3.14Auto-IP 功能 (37)3.15NTP 功能 (38)3.16注册包功能 (39)3.17心跳功能 (41)3.18IOT Server 工具软件 (41)3.19虚拟通道功能 (42)3.20参数保存功能 (42)4.快速应用 (44)4.1Auto-IP 模式下的TCP/IP 到串口透传测试 (44)4.2基于AP 组网模式下的测试 (50)4.3基于AP+以太网组网 (54)4.4基于STA 无线网络模式组网 (54)4.4.1基于STA 无线网络模式的虚拟串口透传功能 (55)4.4.2基于STA 模式的RS485 Modbus RTU 到Modbus TCP 转换功能 (59)4.5基于AP-STA 无线网络模式组网 (62)4.6基于AP-STA 无线级联模式组网 (63)4.7基于AP-STA 无线桥接模式组网 (63)5.售后服务及技术支持 (89)产品概述1.1.概述FB-W210 串口服务器提供了一种 RS232/RS485/RS422 和 Wi-Fi/Ethernet 之间协议转换的产品,满足工业产品串口到无线或者以太网数据传输的通道的解决方案,本产品集成了 MAC 等以太网硬件协议,集成了 TCP/IP 协议栈、内存管理、10/100M 以太网收发器、高速串口、RS232、RS485、RS422 等丰富的硬件接口,并且基于 eCos 操作系统,产品包含了 web 网页,可以方便的供远程配置、监控和调试。
串口基本信息用一台电脑实验串口自发自收,实验前要将串口(以9针为例)的发送引脚(2脚)和接受引脚(3脚)短接。
三线连接:适用于计算机之间尤其是PC机和单片机之间的数据通信。
其连接信号对为(TxD,RxD)、(RxD,TxD)、(SG,SG)。
即发送数据TxD端和接受数据RxD端交叉连接,信号地SG对应连接。
七线交叉连接:适用于同型号的计算机之间的连接,如PC机间的数据通信。
其连接信号对为:(TxD,RxD)、(RxD,TxD)、(SG,SG)、(RTS,CTS)、(CTS,RTS)、(DSR.DTR)、(DTR,DSR)。
其中,TxD、RxD、SG与前面信号的含义相同,RTS为请求发送,CTS为准许发送,DSR为数据装置准备好,DTR为数据终端准备好。
在本地连接的微机系统中,RTS、CTS、DTR、DSR用作硬件联络控制信号。
目前使用的串口连接线有DB9和DB25两种连接器,用户可以国家使用的具体机器选择相应的连接器。
一个串口通讯类在/network/serialport.shtml。
PC机的RS-232接口的电平标准是-12V标示“1”,和+12V表示“0”,有些单片机的信号电平时TTL 型,即大于2.4v表示“1”,小于0.5v表示“0”,因此采用RS-232总线进行异步通信是,发送端和接受端要有一个电平转换接口。
串口通讯方法的三种实现串口是计算机上一种非常通用的设备通信协议。
大多数计算机包含两个基于RS232的串口。
串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS一232口。
同时,串口通信协议也可以用于获取远程采集设备的数据。
串口通信(Serial Communication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。
串口通信方便易行,应用广泛。
在Windows应用程序的开发中,我们常常需要面临与外围数据源设备通信的问题。
串口及通讯协议1.1概述新一代UFT系列产品本身带有隔离的RS485接口,可以同时支持多种常用的通讯协议,包括MODBUS协议、M-BUS、FUJI扩展协议、并兼容国内其它厂家协议。
MODBUS协议是常规的工控常用协议。
MODBUS的两种格式RTU和ASCII都能支持。
M-BUS是国际上常用热表计量协议,使用该协议在M63菜单中选择“MODBUS ASCII”选项。
天泽FUJI扩展协议是在日本FIJI超声波流量计协议的基础上扩展实现的,能够兼容FUJI超声波流量计协议,以及第7版超声波流量计协议。
兼容协议可以兼容水表协议以及国内其他厂家协议,为了方便用户把UFT系列产品接入用户按照国际其它厂家通讯协议而开发的数据采集系统中,目前可以支持12种兼容通讯协议。
使用兼容通讯协议,用户需要在M63中,选择:MODBUS ASCII选项后再选择协议中的任意一种即可。
UFT系列产品还能够起到简易RTU设备的作用,可使用电流环及OCT输出控制步进式或模拟式电磁阀的开度,OCT输出可控制其它设备的上下电,其1路模拟输入可用来输入压力、温度等信号。
位于M63窗口外的设置选项设置为“MODBUS-RTU ONLY”时,用来支持MODBUS-RTU协议,当此选项设置为“MODBUS ASCII、Meter-BUS、天泽FUJI扩展协议及汇中流量计水表兼容协议。
不同的汇中流量计水表兼容协议的选择则也使用M63进行选择,在选择了“MODBUS-RTU”、“MODBUS-ASCII”之后进行选择。
M62菜单用于设置串口参数,能够支持的波特率有19200、14400、9600、4800、2400、1200、600、300共8种,停止位1比特或2比特、校验位也可以选择。
使用各种组态软件自带的标准MODBUS驱动,程序可以方便的把UFT连接到数据采集中。
通过使用MODBUS-PROFTBUS转换器,也可以方便的把UFT连接到PROFIBUS总线中。
利用RS232-CAN总线转换器实现多机通讯
孙飞;汤俊玲
【期刊名称】《江苏技术师范学院学报》
【年(卷),期】2004(10)4
【摘要】RS232通讯距离短,而且只能进行点到点通讯,不能直接组建多点通讯网络.为了延长RS232的通讯距离,并将RS232节点组成通讯网络,目前广泛使用
RS232/RS485信号转换器.但是,由于RS485通讯本身的局限性,在实际应用中存在许多不足.为此,可以将RS232通讯网络转换成CAN通讯网络,以更好地解决用户建立远程通讯网络的问题.
【总页数】5页(P47-51)
【作者】孙飞;汤俊玲
【作者单位】常州信息职业技术学院,计算机系,江苏,常州,213002;江苏技术师范学院,实验室与设备管理处,江苏,常州,213001
【正文语种】中文
【中图分类】TP303;TP311.11
【相关文献】
1.基于RS-485总线实现井下多机串口通讯 [J], 王鑫;苏楠;李佐;孙善超;史金安;张羽
2.RS232-CAN总线协议转换器设计 [J], 张同新;戴义保;吴斌
3.基于RS-422总线的单片机多机通讯接口的设计与实现 [J], 桑胜举;张华;沈丁;安琦
4.单根总线等级分布式串行中断多机通讯系统的设计与实现 [J], 张家栋
5.基于RS485总线的多机通讯的实现 [J], 由勇
因版权原因,仅展示原文概要,查看原文内容请购买。
UT-9061AWIFI转RS-232/485/422转换器使用说明书一、产品概述UT-9061A是一款无线WIFI转换器,能够实现用户RS-232、RS-485、RS-422和无线网(WIFI)接口之间的转换,数据转换采用隔离技术,有效的保证了产品的可靠性。
具有多种转换模式可以选择,支持AT指令+WEB界面设置,为用户设备实现简单的有线和无线网络之间的互联。
产品具备一定的防浪涌保护;广泛应用与数据通信,工业自动化领域。
二、产品技术参数◆工作电压:DC12-36V◆工作电流:200mA@12Vmax◆工作湿度:5%~95%(无凝结)◆工作温度:-40~85℃◆储存温度:-40~85℃◆储存湿度:5%~95%(无凝结)◆浪涌防护:电源、差模1KV,共模2KV(1.2/50uS)信号、RS-485/422:差模1KV,共模2KV(10/700uS)RS-232:600W◆静电防护:接触6kV,空气8kV◆通讯接口:RS-232/RS-485/RS-422◆通讯速率:300-921600bps◆工作方式:收发一体,异步半双工,异步全双工◆天线阻抗:50Ω(胶棒天线)◆外形尺寸:97x65x22mm±1(不含天线)◆支持802.11b/g/n无线标准◆支持无线工作在STA/AP/AP+STA模式◆支持心跳信号,WIFI连接指示◆提供Web配置页面+AT指令三、指示灯Power:红色;供电正常时常亮。
nLink:绿色;无线连接指示灯(有设备连接时常亮)nReady:绿色;工作状态指示灯(常亮代表启动成功)TXD:绿色;串口发送指示灯(发送数据时闪亮)RXD:黄色:串口接收指示灯(接收数据时闪亮)四、按键Reset:重启按键Reload:恢复出厂设置按键(按住3秒后松开)五、端子引脚(一)RS-232引脚定义:(二)RS-485/422引脚定义:序号信号说明2RXD RS-232接收3TXD RS-232发送5GND信号地7RTS请求发送8CTS清除发送1、4、6、9NC悬空序号信号说明1T/R+485+、422发送+2T/R-485-、422发送-3RXD+422接收+4RXD-422接收-六、通信接连示意图1、RS-485点到点/两线半双工2、RS-485点到多点/两线半双工3、RS-422点到点/四线全双工4、RS-422点到多点/四线全双工5、UT-9061A RS-232接口通信七、无线规格参数功能项功能说明无线标准802.11b/g/n频率范围2412~2484MHz输出功率72.2Mbps PA 输出功率:15dBm (Max )11b 模式下PA 输出功率:20.5dBm (Max )灵敏度DSSS ,1Mbps :-98dBm CCK ,11Mbps :-91dBm DFDM ,6Mbps :-93dBmDFDM ,54Mbps :-75dBm HT20,MCS0:-93dBm HT20,MCS7:-73dBm HT40,MCS0:-90dBm八、设置及使用默认情况下,UT-9061A 的AP 接口SSID 为UT-9061A,IP 地址和用户名、密码如下:UT-9061A 网络默认设置表九、快速开始向导(1)上电接通电源,红色电源灯亮起,设备通电正常(2)通电,等待1分钟,系统初始化完成,WiFi nReady 绿灯亮起,使用无线网卡电脑或者手机搜索周边的无线网络,找到网络号UT-9061A。
串口及通讯协议1.1概述新一代UFT系列产品本身带有隔离的RS485接口,可以同时支持多种常用的通讯协议,包括MODBUS协议、M-BUS、FUJI扩展协议、并兼容国内其它厂家协议。
MODBUS协议是常规的工控常用协议。
MODBUS的两种格式RTU和ASCII都能支持。
M-BUS是国际上常用热表计量协议,使用该协议在M63菜单中选择“MODBUS ASCII”选项。
天泽FUJI扩展协议是在日本FIJI超声波流量计协议的基础上扩展实现的,能够兼容FUJI超声波流量计协议,以及第7版超声波流量计协议。
兼容协议可以兼容水表协议以及国内其他厂家协议,为了方便用户把UFT系列产品接入用户按照国际其它厂家通讯协议而开发的数据采集系统中,目前可以支持12种兼容通讯协议。
使用兼容通讯协议,用户需要在M63中,选择:MODBUS ASCII选项后再选择协议中的任意一种即可。
UFT系列产品还能够起到简易RTU设备的作用,可使用电流环及OCT输出控制步进式或模拟式电磁阀的开度,OCT输出可控制其它设备的上下电,其1路模拟输入可用来输入压力、温度等信号。
位于M63窗口外的设置选项设置为“MODBUS-RTU ONLY”时,用来支持MODBUS-RTU协议,当此选项设置为“MODBUS ASCII、Meter-BUS、天泽FUJI扩展协议及汇中流量计水表兼容协议。
不同的汇中流量计水表兼容协议的选择则也使用M63进行选择,在选择了“MODBUS-RTU”、“MODBUS- ASCII”之后进行选择。
M62菜单用于设置串口参数,能够支持的波特率有19200、14400、9600、4800、2400、1200、600、300共8种,停止位1比特或2比特、校验位也可以选择。
使用各种组态软件自带的标准MODBUS驱动,程序可以方便的把UFT连接到数据采集中。
通过使用MODBUS-PROFTBUS转换器,也可以方便的把UFT连接到PROFIBUS总线中。
嵌入式UART转CAN应用案例在如今CAN总线应用越来越广泛的今天,很多人都开始学习使用这一技术,但是由于CAN总线协议的复杂度,不少IT新人只能浅尝辄止。
本文将介绍如何致远电子的嵌入式UART 转CAN模块来解决这一问题。
一、CSM100产品简介CSM100系列UART转CAN模块是集成微处理器、CAN-bus 控制器、CAN-bus收发器、DC-DC 转换、高速光电隔离于一体的嵌入式UART 转CAN 模块,用户可以不深入了解CAN-bus的相关知识,利用此芯片操作CAN-bus就如同操作UART 一样方便。
模块具有2种转换方式包括透明转换方式和透明带标示转换方式。
其中透明转换方式会预先设定数据帧ID,串口只需要发送报文数据段信息,其余信息模块会自动填充完整。
透明带标识转换方式通过既定的协议格式可以将CAN总线报文的类型、ID转发到串口数据的相应字段。
这两种方式在不同应用场景下灵活组合可以实现多种功能。
图 1 CSM100实物、结构图二、应用方案CSM100这个小模块不仅仅是做串口与CAN数据的转换,在很多应用场景中起着必不可少的作用。
下面就来介绍一下。
1、为缺少CAN控制器的单片机提供CAN接口虽然如今已经不再是51单片机横行的时代,但是仍然不是所有的MCU都具备CAN控制器,如果在某个项目中需要扩展CAN通讯而恰好我们的主控平台没有CAN外设,那么选择CSM100就是一个绝佳的选择。
只要主控上还有多余的URAT资源就可以利用它轻松的扩展。
扩展方式如图2所示。
图 2 为缺少CAN控制器的单片机提供CAN接口2、为点对点设备提供组网条件我们都知道CAN总线是一种多主总线,可以实现多节点组网通讯,自带优先级仲裁机制,可有效防止数据冲突。
基于这一优点,可以利用CSM100模块为点对点通讯设备提供组网的条件。
例如,某些串口接口的传感器,如果我们需要把多个传感器的数据读到MCU 而MCU的串口数量不足怎么办呢?如图3所示,与传感器对接的CSM100模块设定为透明转换模式,并通过设定不同的地址ID 加以区分。
乐幻索尔总线舵机通信协议1.概要采用异步串行总线通讯方式,理论多至253 个机器人舵机可以通过总线组成链型,通过UART 异步串行接口统一控制。
每个舵机可以设定不同的节点地址,多个舵机可以统一运动也可以单个独立控制。
通过异步串行接口与用户的上位机(控制器或PC 机)通讯,您可对其进行参数设置、功能控制。
通过异步串行接口发送指令,可以设置为电机控制模式或位置控制模式。
在电机控制模式下,可以作为直流减速电机使用,速度可调;在位置控制模式下,拥有0-240°的转动范围,外加±30°的偏差可调范围,在此范围内具备精确位置控制性能,速度可调。
只要符合协议的半双工UART 异步串行接口都可以和舵机进行通讯,对舵机进行各种控制2.UART接口原理图舵机用程序代码对UART 异步串行接口进行时序控制,实现半双工异步串行总线通讯,通讯波特率为115200bps,且接口简单、协议精简。
在您自行设计的控制器中,用于和舵机通讯的UART 接口必须如下图所示进行处理。
图13.指令包指令包格式表1:帧头ID号数据长度指令参数校验和0x55 0x55 ID Length Cmd Prm 1…Prm N Checksum帧头:连续收到两个0x55 ,表示有数据包到达。
ID: 每个舵机都有一个ID 号。
ID 号范围0~253,转换为十六进制0x00~0xFD。
广播ID: ID 号254(0xFE) 为广播ID,若控制器发出的ID 号为254(0xFE),所有的舵机均接收指令,但都不返回应答信息,(读取舵机ID号除外,具体说明参见下面指令介绍)以防总线冲突。
数据长度:等于待发送的数据(包含本身一个字节)长度,即数据长度Length 加3等于这一包指令的长度,从帧头到校验和。
指令:控制舵机的各种指令,如位置、速度控制等。
参数:除指令外需要补充的控制信息。
校验和:校验和Checksum,计算方法如下:Checksum = ~ (ID + Length + Cmd+ Prm1 + ... Prm N)若括号内的计算和超出255,则取最低的一个字节,“~”表示取反。
RS485通讯协议首先要知道什么是RS232和RS485.典型的串行通讯标准是RS232和RS485.它们定义了电压,阻抗等.但不对软件协议给予定义区别于RS232, RS485的特性包括:1. RS-485的电气特性:逻辑“1”以两线间的电压差为+(2—6)V表示;逻辑“0”以两线间的电压差为-(2—6)V表示。
接口信号电平比RS -232-C 降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。
2. RS-485的数据最高传输速率为10Mbps3. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。
4. RS-485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外RS-232-C接口在总线上只允许连接1个收发器,即单站能力。
而RS-485接口在总线上是允许连接多达128个收发器。
即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。
因RS-485接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点就使其成为首选的串行接口。
因为RS485接口组成的半双工网络,一般只需二根连线,所以RS485接口均采用屏蔽双绞线传输。
RS485接口连接器采用DB-9的9芯插头座,与智能终端RS485接口采用DB-9(孔),与键盘连接的键盘接口RS485采用DB-9(针)。
RS485编程串口协议只是定义了传输的电压,阻抗等,编程方式和普通的串口编程一样!!RS-232与RS-422之间转换原理和接法通常我们对于视频服务器、录像机、切换台等直接播出、切换控制主要使用串口进行,主要使用到RS-232、RS-422与RS-485三种接口控制。
下面就串口的接口标准以及使用和外部插件和电缆进行探讨。
RS-232、RS-422与RS-485标准只对接口的电气特性做出规定,而不涉及接插件、电缆或协议,在此基础上用户可以建立自己的高层通信协议。
串口通信协议制定篇一:单片机与上位机通信协议的制定单片机与上位机通信协议的制定单片机和上位机的串口通信协议分为上行协议和下行协议,要分别制定!上行协议,即由单片机向上位机发送数据。
下行协议,即由上位机向单片机发送数据。
而通信协议又要分固定长度和不定长度两种本文所介绍的协议属于简单的固定字长的通信协议!下行协议由四个字节构成上表是简单的上位机对单片机的控制指令下述函数是C#中封装的串口通信类中的发送函数的封装public void SerSendCommu(byte orderDef, byte data)//参数1为命令字,参数二为要发送的数//据,需要时可直接调用{Byte[] BSendTemp = new Byte[SEND_LENTH];BSendTemp[0] = PRE;BSendTemp[1] = orderDef; BSendTemp[2] = data; BSendTemp[3] = END;this.serialPort1.Write(BSendTemp, 0, SEND_LENTH);}下位机中用中断方式接收字符,本文用的是GCC语言,下面是串口接收数据中断 ISR(USART_RXC_vect)//串口接收中断 {unsigned char status,data;status = UCSRA; //**首先读取UCSRA的值,再读取UDR值,顺序不能颠倒,否则读取UDR后的UCSRA的//值即会改变** data = UDR;if(!Uart_RecvFlag)//判断缓存中的数据是否读完,读完则接收指令 {if((status&((1<<FE)|(1<<PE)|(1<<DOR)))==0){rx_buffer[rx_counter]=data; rx_counter++;switch(rx_counter) {case 1:if(data!=USART_BEGIN_STX)rx_counter=0;break; case 4:rx_counter=0;if(data==USART_END_STX) Uart_RecvFlag=1; break; }} }}在单片机主循环程序的最前部分进行指令译码if(Uart_RecvFlag)//接收到命令{switch(rx_buffer[1]) {case 0xAA://单片机状态命令控制;ucWorkStatue=rx_buffer[2];//指令数据 break;case 0xDD://PWM值修改指令 OCR2=rx_buffer[2];break;case 0xFF://初始温度设定 break; }Uart_RecvFlag=0;}//随后进行执行指令switch(ucWorkStatue){case 1://空闲模式 break;case 2://测量模式,但不输出 break;case 3://测量模式,由串口输出break;case 4://PWM输出测试break; default:break;}这样就可以利用串口对单片机进行在线命令控制了;上行协议的制定!和下行协议基本一致!在AVR单片机程序中定义了串口通信输出缓冲区,缓冲区的字长正好为协议的长度;//串口发送缓冲区变量声明volatile unsigned char tx_buffer[TX_BUFFER_SIZE];//定义串口发送缓冲区 volatile unsigned chartx_wr_index=0,tx_rd_index=0,tx_counter=0;//rx_wr_index 写指针,rx_rd_index读指针,rx_counter缓冲区数据个数//USART发送函数void USART_Transmit(unsigned char data)//发送数据函数{while(tx_counter==TX_BUFFER_SIZE);//输出缓冲区满,等待asm("cli");if(tx_counter||((UCSRA & DATA_REGISTER_EMPTY)==0)) {tx_buffer[tx_wr_index]=data;if(++tx_wr_index==TX_BUFFER_SIZE) tx_wr_index=0;++tx_counter;}elseUDR = data;asm("sei");}//发送中断服务程序ISR(USART_TXC_vect)//USART发送数据中断 {if(tx_counter) {--tx_counter;UDR=tx_buffer[tx_rd_index];if(++tx_rd_index==TX_BUFFER_SIZE){tx_rd_index=0;} } }在C#编写的上位机中,利用串口接收事件响应方法定义serialPort1.ReceivedBytesThreshold = RECEIVE_LENTH;在时间响应事件中调用协议分析处理函数serialPortCaculate()来分析协议private voidserialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e){bel_dispzedNum.Invoke(newMethodInvoker(delegate { //匿名方法 int inNumSData=0;try {inNumSData = this.serialPort1.BytesToRead;b_serial_bufin_diplay.Text =inNumSData.ToString();//串行数据处理 //图像显示byte dataID = 0x00;double temp = this.serialPortCaculate(ref dataID);switch(dataID) {case TEMVAL:break; default:this.serialPort1.DiscardInBuffer()break; }} catch { }}));}///////接收转换协议,接收数据时直接调用private double serialPortCaculate(ref byte dataID){Byte[] BReceiveTemp = new Byte[RECEIVE_LENTH];for (int i = 0; i < RECEIVE_LENTH; i++)//接收定长数据字符串{BReceiveTemp[i] =Convert.ToByte(this.serialPort1.ReadByte());篇二:RS232串口通信协议RS-232串口通信协议RS-232是个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。
RS232 通讯原理 ? RS485通讯原理?RS422 是什么?RS485接线的正确原理图常见的RS485错误接线RS-232是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。
RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。
为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英尺(速率低于100kb/s时),并允许在一条平衡总线上连接最多10个接收器。
RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。
为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。
由于EIA提出的建议标准都是以“RS”作为前缀,所以在通讯工业领域,仍然习惯将上述标准以RS作前缀称谓。
备注:以上是官方的专业描述,看不懂没有关系,大致有个印象就可以了,有兴趣的可以上网可以买一些专业书籍做深入研究,我再用通俗的语言补充描述一下。
RS232通讯的基础知识:RS232通讯又叫串口通讯方式。
是指计算机通过RS232国际标准协议用串口连接线和单台设备(控制器)进行通讯的方式。
通讯距离:9600波特率下建议在13米以内。
通讯速率(波特率Baud Rate):缺省常用的是9600 bps,常见的还有1200 2400 4800 19200 38400等。
波特率越大,传输速度越快,但稳定的传输距离越短,抗干扰能力越差。
备注:一般台式机会自带1-2个串口插座(公头(9针插头上带针的俗称公头,带针孔的俗称母头)),现在的笔记本一般不带串口插座,可以购买USB串口转换器,具体请参考怎样使用USB串口转换器?公头接线端子排序图母头接线端子排序图一般只用 2 3 5 号三根线。
多串口通讯协议转换案例
随着网络经济时代的到来,基于TCP/IP协议的IP网的应用得到广泛普及,利用网络资源可
以实现设备的网络接入,设备联网监控已经成为工业自动化的发展趋势。
恒颐多串口协议转换方案可以实现将工业现场的传统串口设备接入IP网络,实现多个不
同协议的串口设备与以太网进行双向数据交换。
恒颐成功案例
远程分散式设备控制
电力、电信、自动化设备通讯管理
安防、消防智能报警系统
系统架构
应用恒颐多串口通讯协议转换方案,只需通过简单的设计即可实现从RS232/485/422、
CAN到TCP/IP通讯协议的转变,实现对工业现场设备的远程监测和管理。在PC主机端,可
以通过WEB浏览器方式访问串口服务器上的多个串口设备,系统架构:
系统硬件设计
恒颐多串口通讯方案是一款应用于不同协议设备互联通讯的工业通讯协议转换解决方案。
方案采用AT91RM9200作为主处理器;多串口扩展以16c554芯片实现,并由一片cpld(altera
的epm7064)实现高效多串口中断源管理,利用中断源来管理多个扩展串口;数据采集模块以
ADS7842实现,并由DG506芯片实现对数据采集通道的选择;CAN通讯模块由CAN控制器
SJA1000实现。系统方框图:
系统软件设计
1)多种协议支持:可以将具有RS232、RS485、RS422、CAN等通信协议的接口设备直接
连接到串口协议转换设备。
2)远程参数设置
多串口协议转换设备上运行的系统实现了嵌入式WEB_Server的功能,连接网络和协议转
换设备,通过IE浏览器登录,可以对其工作参数进行设置,:
方案优势
多串口通讯方案实现了串口设备的联网和集中管理。该方案把工业现场现有的RS232、
RS485等设备的串口数据转换为TCP/IP数据,通过IP网络进行数据的存取和管理。采用恒
颐多串口通讯方案,无需更换现有串口设备,也无需投入大量的人力、物力,即可实现工业
现场的实时数据采集、生产监控、网络自动化管理。