精华内容
下载资源
问答
  • 介绍了研究院常用设备的几种串口通信协议及其在软件设计中的应用。说明了各通信协议协议内容、通信格式以及根据各通信协议所开发的 VB 程序。对几种串口通信协议在实际应用中遇到的问题进行了分析,并给出了解决...
  • 串口通信协议

    2017-08-06 09:26:10
    串口通信协议常用标准协议
  • 串口协议的整理

    2020-06-30 00:49:59
    串口协议的整理 转载自博客园的一篇博客几个串口协议学习整理 一、UART UART是一个大家族,其包括了RS232、RS499、RS423、RS422和RS485等接口标准规范和总线标准规范。它们的主要区别在于其各自的电平范围不相同。...

    几串口协议的整理

    转载自博客园的一篇博客几个串口协议学习整理

    一、UART

    UART是一个大家族,其包括了RS232、RS499、RS423、RS422和RS485等接口标准规范和总线标准规范。它们的主要区别在于其各自的电平范围不相同。

    嵌入式设备中常常使用到的是TTL、TTL转RS232的这种方式。常用的就三根引线:发送线TX、接收线RX、电平参考地线GND。

    1.1 电路示意图
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uQfszldr-1593448573103)(image\UART连线示意图.png)]
    1.2 通信协议

    将传输数据的每个字符一位接一位地传输。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OfSXkxcu-1593448573105)(image\串口数据传输示意图.png)]

    起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。

    数据位:紧接着起始位之后。数据位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。

    奇偶校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。

    停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。

    空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。

    波特率:数据传输的速率。有以下几个档位:300、600、1200、2400、4800、9600、19200、38400、43000、56000、57600、115200.当然也可以自定义。在数据传输和接收双方,需要预先统一波特率,以便正确的传输数据。

    二、I2C 总线

    2.1 电路示意图

    I²C (Inter-Integrated Circuit)。其拥有一根数据线SDA和一根时钟线SCL。其总线通过上拉电阻与电源相连接。每个接到I2C总线上的器件都有唯一的地址。其中,主动发起操作的一方为主机,另外一方为从机。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fTbaRKdK-1593448573106)(image\IIC 总线电路示意图.png)]

    2.2 数据传输

    当没有数据传输的时候,两根总线都为高电平;当采集IIC上的数据时,其时钟线SCL必须是高电平且SDA的数据必须保持稳定不变—将SDA的电平与SCL的高电平进行“与”操作后,以便确定SDA上是1还是0;在SCL为低电平的时候,SDA上的数据可以进行跳变。

    数据传输开始时,需要发送一个起始信号;数据传输结束后,需要发送一个终止信号;每8bit数据传输结束,都需要一个ACK。起止信号都有Master发出,而ACK则可能由Master或者SLAVE来发出。数据的传输采用大端传输。

    开始信号:SCL为高电平,SDA的电平由高跳到低表示开始信号。

    终止信号:SCL为高电平,SDA的电平由低跳到高表示终止信号。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gKGyvHc4-1593448573108)(image\IIC总线时序图.png)]

    2.3 数据协议

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O7RWWoVN-1593448573110)(image\IIC数据协议.png)]

    2.4 I2C读写流程

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1xd1fjFL-1593448573111)(image\I2C读写流程.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lJdWS3IQ-1593448573112)(image\I2C写寄存器的标准流程.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uSmPoiQ2-1593448573113)(image\I2C读寄存器的标准流程.png)]

    三、SPI总线

    SPI(Serial Peripheral Interface)是一种串行串行同步通讯协议,由一个主设备和一个或多个从设备组成。其拥有四根(类)硬脚引线,分别为 SDI(串行数据输入),SDO(串行数据输出),SCK(串行移位时钟),CS(片选)。因为一个主设备可以挂多个从设备,则通过片选引脚对从设备进行选择。从设备的工作时钟则是来自于主设备的SCK线。

    3.1 电路示意图

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b13tYSoq-1593448573115)(image\SPI总线电路示意图.png)]

    3.2 数据的传输

    SPI在数据传输的时候,需要确定两件事情:其一,数据是在时钟的上升沿采集还是下降沿采集;其二,时钟的初始(空闲)状态是为高电平还是低电平。而I2C的空闲状态,时钟线为高电平;数据采集的时候,时钟线也为高电平。但SPI给出了更自由的方式。

    CPOL:时钟极性, 表示 SPI 在空闲时, 时钟信号是高电平还是低电平。

    CPHA:时钟相位, 表示 SPI 设备是在 SCK 管脚上的时钟信号变为上升沿时触发数据采样, 还是在时钟信号变为下降沿时触发数据采样。

    那么,SPI CPOL有两种可能,CPHA有两种可能,则SPI数据传输就有四种可能—按照标准的说法,SPI数据传输就有四种模式。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ElSTmVYV-1593448573116)(image\SPI数据传输就有四种模式.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f0ZHucjY-1593448573117)(image\SPIMode0.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dbYaU7Hd-1593448573117)(image\SPIMode1.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t9dByzdB-1593448573118)(image\SPIMode2.png)]

    在这里插入图片描述

    3.3 SPI读写

    SPI在硬件设计上采用的双数据线制,根据设计,在SPI通信过程中,主从设备之间会形成一个数据环形链路—也即是,主设备向从设备写一次数据,从设备就会回一次数据(至于该从设备回复的数据是否有效,则另当别论—如果有效,主设备就把它读入;如果无效,则丢弃即可)。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JqoiPWNo-1593448573119)(image\SPI主从连接.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UI8I2HIn-1593448573120)(image\SPI读写.png)]

    展开全文
  • 串口通信协议常用的校验算法

    千次阅读 2020-08-10 10:00:55
    1.数据校验过程 ...为了防止这些错误所带来的影响,一般在通信时采取数据校验方法,而奇偶校验和循环冗余码校验就是其中最常用的校验算法。串行数据在传输过程中,由于干扰可能引起信息的错

    原文链接:https://blog.csdn.net/shenziheng1/article/details/52942879

    1.数据校验过程

    由于数据传输距离的因素影响,计算机和受控设备间的通信数据就常常出现不可预知的错误。为了防止这些错误所带来的影响,一般在通信时采取数据校验方法,而奇偶校验和循环冗余码校验就是其中最常用的校验算法。串行数据在传输过程中,由于干扰可能引起信息的错误,出现“误码”。我们把如何发现传输中的错误,叫“检码”;发现错误后,如何进行修订,叫“检错”。
    之前,就有过提示,为了保证数据在传输过程中不会出错,每个数据包后面一般都会加上校验字节。


    校验过程是发送端(TX端)和接收端(RX端)共同完成的过程。如上图所示,首先,TX端按照用户层协议(数据包格式)将数据根据校验算法计算出TX校验字节,并将TX校验字节按照协议放在数据包的指定位置。RX端接收到数据包后,在指定位置取出TX校验字节,同时,再将接收到的数据按规定方式计算出RX校验字节,如果RX校验字节与接收到的TX校验字节相等,则说明数据包是有效的,否则就应该放弃该数据包。

    2.简单粗暴地奇偶校验

    最简单粗暴的方法就是“奇偶校验”了,即在传输字符的各位之外,再传送一位奇/偶校验位。可采用的策略分为奇校验和偶校验。

    2.1 奇校验

    所有传送的位数(含字符的个数位和校验位)中,“1”的个数为奇数,如1 0110,0101;0 0110,0001

    2.2 偶校验

    所有传送的位数(含字符的各位数和检验位)中,“1”的个数为偶数,如1 0100,0101;0 0100,0001
    奇偶校验能够检测出信息传输过程中的部分错误的数据(一位错误的代码能够检出,两位及以上的错误代码不能检出)。奇偶检验有一个劣势,就是他只能发现错误,而不能纠正错误;一旦发现错误,那么没办法,只能重发。但是由于奇偶校验使用起来非常简单,仍然被广泛使用。但是仍存在一些良好的矫正错误数据的方法,并具有自动訆错能力,如循环冗余码(CRC)检错等。

    3.BCC异或校验

    异或校验方法也是非常简单,而且非常通用,虽然使用该方法校验后仍存在出错的可能,但是因为异或算法非常简单,编程毫不费力,一般新手都用这种方法。
    之前介绍过的NMEA-0183无线通信协议是在异或算法基础之上进行了一定的改进。能够理解异或运算,并使用好异或校验算法,会使得数据处理编程变得轻松容易。

    4.CRC循环冗余码校验

    循环冗余码校验(Cyclical Redundancy Check, CRC)是利用除法和余数的原理来做错误侦测(Error Detecting)的。实际应用时,发送装置计算出CRC值并随数据一同发送给接收装置RX,RX对收到的数据重新计算CR并与收到的CRC值相比较,若两个CRC值不同,则说明数据通信出现了错误,该数据包应该舍弃不用。
    在远距离数据通讯中,为确保高效而无差错的传送数据,必须对数据进行校验控制,而CRC是对一个传送数据块进行校验,是一种非常高效的差错控制方法。目前,主流的CRC可以分为以下几个标准:CRC-12码;CRC-16码;CRC-CCITT码;CRC-32码。
    CRC-12码通常用来传送6-bit字符串。CRC-16及CRC-CCITT码则用来传送8-bit字符,其中CRC-16为美国采用,而CRC-CCITT为欧洲国家所采用。CRC-32码用途有限。
    在数据存储和数据通信领域,CRC无处不在:著名的通信协议X.25的FCS(帧检错序列)采用的是CRC/CCITT,ARJ/LHA等压缩工具软件采用的是CRC32,磁盘驱动器读写采用的日式CRC16,通常用到的图像存储格式GIF/TIFF等也是采用CRC作为检错手段的。

    4.1 CRC-16的生成过程

    CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高位向低位进行移位,在最高位(MSB)的位置补零,而最低位(LSB,移位后已经被移除CRC寄存器)如果是1,则把寄存器与预定义的多项式码进行异或,否则如果LSB为零,就无需进行进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处理完毕,用此时CRC寄存器的值与下一个8-bit数据异或并进行如前一个8-bit数据似的8次移位。所有的字符处理完成后CRC寄存器的值即为最终的CRC值。
    下面为CRC的计算过程:
    (1)设置CRC寄存器,并给其赋值FFFF(hex);
    (2)将数据的第一个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果存入CRC寄存器;
    (3)CRC寄存器向右移一位,MSB补零,移出并检查LSB;
    (4)如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多项式码相异或;
    (5)重复第3与第4步直到8次移位全部完成。此时,一个8-bit数据处理完毕;
    (6)重复第2至第5步直到所有数据全部处理完成;
    (7)最终CRC寄存器的内容即为CRC值。

    4.2 如何理解CRC码?

    CRC校验是一种多项式除法:将需要发送的数据包当做一个很大的二进制数,用它来除以一个固定的二进制数,所得到的余数即是所求得的CRC校验码。
    展开全文
  • 10X串口协议解析

    2019-01-18 11:28:02
    10X串口协议解析 1、串口协议解析 首先所有命令都要带传感器地址,一般传感器的地址都是1,所以如果没有修改修改传感器地址的话,那么命令的前面都是01(16进制),最大地址是127,即是7F。 常用命令 1、获取传感器...

    10X串口协议解析

    1、串口协议解析
    首先所有命令都要带传感器地址,一般传感器的地址都是1,所以如果没有修改修改传感器地址的话,那么命令的前面都是01(16进制),最大地址是127,即是7F。
    常用命令
    1、获取传感器ID信息4个字节:0x0181(01是传感器地址,8固定,1是指获取传感器ID的代码)
    返回值16个字节:
    – device type(2个字节,设备类型)
    – modification(2个字节,版本)
    – serial number(4个字节,序列号)
    – max distance(4个字节,起始量程)
    – range(4个字节,量程)

    例子:
    设备类型是:65,版本是00;
    序列号是:0402;
    起始量程是:300;
    量程是:25;
    那么其返回值就是:
    91h, 94h (设备类型);
    90h, 90h (版本);
    92h, 99h, 91h, 90h (序列号);
    9Ch, 92h, 91h, 90h (起始量程);
    99h, 91h, 90h, 90h (量程)。
    每个字节只取后面4位的数,然后再组成16进制的数,再转换成10进制就可以了
    91h, 94h:就取1和4,根据传感器返回来数据是先低位再高位,所以就组成0x41,换成10进制就是65
    同理:90h, 90h就是0x00,换成10进制就是0,92h, 99h, 91h, 90h就是0x0192,换成10进制就是402,9Ch, 92h, 91h, 90h就是0x012C,换成10进制就是300,99h, 91h, 90h, 90h就是0x19,换成10进制就是25

    2、
    获取测量结果有两种方式,一种是慢速测量(每发一次慢速测量命令就得到一个测量结果),一种是快速测量(发送一次快速测量命令,传感器连续不断的上来测量结果,直接你发停止快速测量命令),但两种方式得到的测量数据都要通过一个公式来获取测量结果,该公式就是:X=D*S/16384 (mm),其中X是指测量结果,单位是mm,D是指传感器上来的数据,S是指传感器量程,16384是指传感器的分辨率(常数,固定不变)
    (1)慢速测量4个字节:0x0186(01是传感器地址,8固定,6是指让传感器启动慢速测量的代码)
    返回值4个字节:
    B5h, BAh, B2h, B0h,那么其组成的值就是0x02A5,那么测量值就为:
    X=677(02A5h)*25/16384=1.033mm

    注意:每次读取到测量值时,需要比较每个字节的高4位是不是一样,像B5h, BAh, B2h, B0h这4个字节的前面4位都是B,那么该测量值就是有效值。如果像A5h, BAh, B2h, B0h这种,那么这个值就不对,去掉。

    (2)同理,快速测量也是4个字节,0x0187(01是传感器地址,8固定,7是指让传感器启动快速测量的代码),0x0188就是停止快速测量命令(01是传感器地址,8固定,7是指让传感器启动慢速测量的代码)
    发了0x0187命令,传感器就会不连续不断的上来测量值,我们就必须每4个组成一个值来获取测量结果。

    例子:
    C5 CA C2 C0 D5 DA D2 D0 E5 EA E2 E0 F5 FA F2 F0 C5 CA C2 C0……
    我们每4个字节的数组成一起,再判断是否是同一个测量值就可以了,如果不是则丢掉,其校验位是C,D,E,F这样轮换

    修改参数命令慎用,一般我们传感器发货过去,参数都已设置好,不需要再设置,所以下面的命令如无必要请不要乱设置
    3、修改参数命令
    0x0183(01是传感器地址,8固定,3是指让传感器修改参数代码),详细命令请看ZLDS100硬件使用说明(38页)
    (1)修改波特率(代码04h),其值从1-192之间,每个值代表2400的增量
    例:
    修改波特率为9600,那么我们只需要把值设成4(16进制为04),那么其代表的波特率就为:4*2400=9600,命令如下:
    0183 8480 8480

    (2)修改采样周期(代码低位08h,高位09h),其值由两个字节组成,而且每个值代表0.01ms
    例:
    修改采样周期为50,那么我们只需要把值设成50(16进制为0032),那么其代表的采样周期就为50*0.01=0.5ms,命令如下:
    低位:0183 8880 8283
    高位:0183 8980 8080

    4、把修改的参数写入闪存(如果没有发送该命令,那么修改的参数在传感器断电后会回复修改前的设置)
    0184 8a8a
    请慎用该命令,防止写入闪存,导致通讯不上的状况
    使用外部触发模式的方法:
    (1)接线;需要给传感器提供5V的TTL方波脉冲,传感器白线接脉冲正,传感器灰线接脉冲地;
    (2)参数设置:
    测量模式:018382808180
    采样周期:
    低位:018388808180
    高位:018389808080

    展开全文
  • UART通用异步收发传输器(Universal Asynchronous ...二、通信协议UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接着一位传输。传输一帧中格式为:起始位、数据位、奇偶校验位、停止位、空...

    UART

    通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)。

    一、定义

    UART是一种通用串行数据总线,用于异步通信。该总线实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信。

    二、通信协议

    UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接着一位传输。

    传输一帧中格式为:起始位、数据位、奇偶校验位、停止位、空闲位

    其中各位意义如下:

    起始位:先发出一个逻辑“0”的信号,表示传输字符的开始。

    数据位:紧接着从起始位后,数据位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。

    奇偶校验位:数据位加这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。

    停止位:是一个字符数据的结束标志。

    空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。

    波特率:是衡量数据传送速率的指标。表示每秒钟传送的符号数(symbol)。一个符号代表的信息量(比特数)与符号的阶数有关。例如传输使用256阶符号,每8bit代表一个符号,数据传送速率为120字符/秒,则波特率为120*8=960bit/s。

    三、基本结构

    ①输出缓冲寄存器:它接收CPU从数据总线上送来的并行数据,并加以保存。

    ②输出移位寄存器:它接收从输出缓冲器送来的并行数据,以发送时钟的速率把数据逐位移出,即将并行数据转换位串行数据输出。

    ③输入移位寄存器:它以接收时钟的速率把出现在串行数据输入线上的数据逐位移入,当数据装满后,并行送往输入缓冲寄存器,即将串行数据转换成并行数据。

    ④输入缓冲寄存器:它从输入移位寄存器钟接收并行数据,然后由CPU取走。

    ⑤控制寄存器:它接收CPU送来的控制字,由控制字的内容,决定通信时的传输方式以及数据格式等。例如采用异步方式还是同步方式,数据字符的位数,有无奇偶校验,是奇校验还是偶校验,停止位的位数等参数。

    ⑥状态寄存器:存放着接口的各种状态信息,例如输出缓冲区是否空,输入字符是否准备好等。在通信过程中,当符合,某种状态时,接口种的状态检测逻辑将状态寄存器的相应位置“1”。

    四、功能

    在手机设计和测试阶段被用来控制CPU与其余部分的讯息传送。

    UART是通用异步收发器(异步串行通信口)的英文缩写,它包括了RS232、RS449、RS423、RS422和RS485等接口标准规范和总线标准规范,即UART是异步串行通信口的总称。 而RS232、RS449、RS423、RS422和RS485等,是对应各种异步串行通信口的接口标准和总线标准,它规定了通信口的电气特性、传输速率、连接特性和接口的机械特性等内容。实际上是属于通信网络中的实体层(Physical Layer)的概念,与通信协议没有直接关系。而通信协议,是属于通信网络中的资料链接层(Data Link Layer)的概念。 COM是PC(个人计算机)上,异步串行通信口的简写。由于历史原因,IBM的PC外部接口配置为RS232,成为实际上的PC界默认标准。所以,现在PC机的COM均为RS232。若配有多个异步串行通信口,则分别称为COM1、COM2... 。

    USART

    通用同步/异步串行接收/发送器(Universal Synchronous/Asynchronous Receiver/Transmitter)。

    一、主要特点

    1. 全双工操作;

    2. 同步操作时,可主机时钟同步,也可从机时钟同步;

    3. 独立的高精度波特率发生器,不占用定时/计数器;

    4. 支持5、6、7、8和9位数据位,1或2位停止位的串行数据桢结构;

    5. 由硬件支持的奇偶检验位发生和检验;

    6. 数据溢出检测;

    7. 帧错误检测;

    8. 包括错误起始位的检测噪声滤波器和数字低通滤波器;

    9. 三个完全独立的中断,TX发送完成、TX发送数据寄存器空、RX接收完成;

    10.支持多机通信模式;

    11.支持倍速异步通信模式。

    二、结构组成

    USART收发模块一般分为三大部分:时钟发生器、数据发送器和接收器。控制寄存器为所有的模块共享。

    时钟发生器由同步逻辑电路(在同步从模式下由外部时钟输入驱动)和波特率发生器组成。发送时钟引脚XCK仅用于同步发送模式下,

    发送器部分由一个单独的写入缓冲器(发送UDR)、一个串行移位寄存器、校验位发生器和用于处理不同帧结构的控制逻辑电路构成。使用写入缓冲器,实现了连续发送多帧数据无延时的通信。

    接收器是USART模块最复杂的部分,最主要的是时钟和数据接收单元。数据接收单元用作异步数据的接收。除了接收单元,接收器还包括校验位校验器、控制逻辑、移位寄存器和两级接收缓冲器(接收UDR)。接收器支持与发送器相同的帧结构,同时支持帧错误、数据溢出和校验错误的检测。

    三、与UART兼容性

    USART 在如下方面与AVR UART 完全兼容:

    所有USART 寄存器的位定义;

    波特率发生器;

    发送器操作;

    发送缓冲器的功能;

    接收器操作。

    UART和USART的区别

    USART在UART基础上增加了同步功能,即USART是UART的增强型。

    同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。

    异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

    同步是阻塞模式,异步是非阻塞模式。

    其实当我们使用USART在异步通信的时候,它与UART没有什么区别,但是用在同步通信的时候,区别就很明显了:大家都知道同步通信需要时钟来触发数据传输,也就是说USART相对UART的区别之一就是能提供主动时钟。

    展开全文
  • 几个串口协议学习整理 一、UART UART是一个大家族,其包括了RS232、RS499、RS423、RS422和RS485等接口标准规范和总线标准规范。它们的主要区别在于其各自的电平范围不相同。 嵌入式设备中常常使用到的是TTL、TTL...
  • 串口通讯协议

    万次阅读 多人点赞 2018-03-02 10:02:47
    文章转载自http://www.cnblogs.com/firege/p/5805753.html20.1 串口通讯协议简介串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,大部分电子设备都支持该通讯方式,电子工程师...
  • 常用串口通信UART详解,结合实物一看就会 UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信,如汽车音响与外接AP之间的通信,与...
  • 但是很多人并没有去研究过细节,这篇文章干货满满,将带你深入串口协议的内部。1、串口协议简介什么是串口通信? 简而言之,串口通信就是通过一根导线(TX,只讨论发送,当然一定还包括GND),将需要的数据按bit流传...
  • linux驱动开发:串口协议

    千次阅读 2016-11-13 13:14:26
    我们也可以通过串口来向内核传入命令,可以说它是开发人员常用的一个交互终端。当进行驱动开发时,总是需要用到串口来显示内核的打印信息。对于开发来说,很是重要。串口:属于串行通信的一种,与之对应的是并行通信...
  • proteus虚拟串口的实现:https://mp.csdn.net/console/editor/html/107251649 一、使用proteus绘制简单的电路图,用于后续仿真 二、编写程序 /***********************************************************...
  • 为了防止这些错误所带来的影响,一般在通信时采取数据校验方法,而奇偶校验和循环冗余码校验就是其中最常用的校验算法。串行数据在传输过程中,由于干扰可能引起信息的错误,出现“误码”。我们把如何发现传输中的...
  • 几个串口协议的整理

    2019-02-15 09:41:00
    一、UART UART是一个大家族,其包括了RS232、RS499、RS423、RS422和...常用的就三根引线:发送线TX、接收线RX、电平参考地线GND。 1.1 电路示意图 1.2 通信协议 将传输数据的每个字符一位接一位地传输。 https://...
  • 勇哥也是初学欧姆龙PLC,如果我们按着官方手册来初学,障碍与花的时间都是很多的,因此在此把学习心得记录下来,以方便大家能按此心得加快学习的进度。...欧姆龙cp1h常用指令学习(四)串口协议读写指令TXD,RXD
  • 串口通信协议简介

    万次阅读 多人点赞 2019-07-19 14:02:04
    串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,大部分电子设备都支持该通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。 在计算机科学里,大部分...
  • 但是很多人并没有去研究过细节,这篇文章干货满满,将带你深入串口协议的内部。1、串口协议简介什么是串口通信? 简而言之,串口通信就是通过一根导线(TX,只讨论发送,当然一定还包括GND),将需要的数据按bit流传...
  • 串口常用参数

    千次阅读 2012-08-22 15:46:27
    串口常用参数 目录 波特率:数据位:停止位:奇偶校验位:补充:  串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的...
  • 一、美系厂家Rockwell ABRockwell的PLC主要是包括:PLC2、PLC3、PLC5、SLC500、ControlLogix等型号,PLC2...DF1协议是Rockwell各PLC都支持的通讯协议,DF1协议可以通过232或422等串口介质进行数据传输,也可以通过D...
  • 串口通信协议概述

    2020-10-01 15:54:54
    串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,大部分电子设备都支持该通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。 通讯数据格式: l 起始位: 1 ...
  • 刚刚完成一个串口通讯的系统。...做通信的系统一定会涉及到通信规约的解析,而解析必然涉及到byte[]与常用类型的转换。当然,最简单的方式就是利用C#提供给我们的BitConvert类来做。这里面需要注意:在设
  • RS-232串口通信协议

    千次阅读 2020-09-16 10:57:52
    串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。 通讯协议,我们以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 663
精华内容 265
关键字:

常用串口协议