CN107180006A - 一种串口通信的系统及串口通信方法 - Google Patents
一种串口通信的系统及串口通信方法 Download PDFInfo
- Publication number
- CN107180006A CN107180006A CN201610148034.4A CN201610148034A CN107180006A CN 107180006 A CN107180006 A CN 107180006A CN 201610148034 A CN201610148034 A CN 201610148034A CN 107180006 A CN107180006 A CN 107180006A
- Authority
- CN
- China
- Prior art keywords
- serial
- register
- variable
- communication
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本发明涉及串口通信的系统及串口通信方法。本发明提供了一种传输速度快、操作简单的全双工高质量的串口通信。串口通信系统包括串口、寄存器以及变量存储器。首先,通过UART接口连接负责进行控制的寄存器以及提供数据变量操作的变量存储器。其次,设定好相应的参数:帧头、帧尾、校验、波特率和通信格式,这些参数用户可以自定义。最后,发送对应寄存器或者变量寄存器的串口指令,在寄存器以及变量存储器接收到指令后,根据不同类别的指令以及不同功能的具体指令内容作出相应的回应。
Description
技术领域
本发明涉及通信领域,尤其涉及一种串口通信系统及串口通信方法。
背景技术
串口通信即通过串口按位发送和接受字节,尽管比按字节的并行通信慢,但是由于其线路简单,易于实现远距离通信,并可以在使用一根线发送数据的同时用另一根线接收数据等优势,因此也被广泛应用于工业控制、测量设备以及部分通信设备中。
在人机交互领域,串口通信被更广泛地应用,串口通信主要涉及波特率、数据位、停止位以及奇偶校验这些参数。在实际应用中,串口通信大多数实现单工或者半双工通信,实现全双工的比较少,并且又由于波特率的参数的限制,导致在人机交互过程中,数据传输速度比较缓慢,程序设计比较繁杂。
发明内容
本发明所要解决的技术问题在于提供一种既简单快捷又精准的方法来实现串口通信,可以实现传输速度快、操作简单的全双工高质量的串口通信。
为解决上述技术问题,本发明提出了一种串口通信的系统及串口通信方法,包括:
串口通信系统包括串口、寄存器以及变量存储器。其中寄存器实现进程控制,为硬件操作直接提供便利,变量存储器主要提供数据变量操作,为数据之间的操作提供便利,通信接口采用UART串口接口,可以自定义波特率(最高通信速率为1Mbps),可以自定义帧头、帧尾、并带可选的CRC16校验。
首先,通过UART接口连接两边设备的寄存器以及变量存储器。其次,设定好相应的参数:帧头、帧尾、校验、波特率和通信格式。最后,发送对应寄存器或者变量寄存器的串口指令,在寄存器以及变量存储器接收到指令后,根据不同类别的指令以及不同功能的具体指令内容作出相应的回应。
与现有技术相比,本发明的优点在于:
1.规范化串口数据帧的内容,使之串口通信领域具有可规范性。统一规范化其格式可以让各种设备的通信很容易做的兼容。并且易于开发和维护,使之通晓其一便可知其全。
2.添加校验可以让通信质量和通信速率有效的提高,避免因提高通信速率而导致的通信误码率高的问题。同时CRC校验是一种快速地有效地检查数据帧是否有误的一种方法,并且占用资源很少,因此数据通信不会因为校验而耽误每一次的数据量传输,会缩短数据之间传输的间隔。
3.根据工程上的实际需求角度出发,把串口数据类型分成寄存器型以及变量数据寄存器型,寄存器型可以划分成直接控制硬件的指令、变量数据寄存器类型则化分成不同设备之间的数据交换的指令。这样把数据划分成不同的类型可以有效地调用设备的CPU资源,减缓CPU由于串口通信而造成运算缓慢。
附图说明
附图1为原理图。
附图2为流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的详细描述。在本实施例中,串口通信方法主要包括以下步骤:
首先,连接串口以及寄存器、变量存储器。串口为UART接口,可以实现异步通信。其中寄存器实现进程控制,为硬件接口;变量存储器主要显示变量,进行格式控制。
其次,设定好相应的参数,在本实施例中,波特率为115200bps。
再者,发送相应的串口指令,寄存器以及变量存储器接收到指令,根据指令的具体内容作出相应的回应。
串口通信数据帧包括四部分,包括帧头、数据长度(指令、数据以及校验)、指令、数据以及指令和数据的CRC校验。其中指令和数据的CRC校验并不是必须的,根据需要可用可不用。
串口指令具体为访问寄存器(读写寄存器)、访问变量存储器(读写变量存储器)。在本实施例中,通过读写寄存器实现串口通信。
首先,通过串口连通两台设备。串口为全双工接口,因此可以实现异步通信。通信中通过寄存器实现双方的进程控制,方便进行硬件上的直接操作;而变量存储器主要进行数据变量的交换,其功能是进行数据控制。
其次,设定好相应的通信参数,在本实施例中,帧头为0x5A,0xA5、帧尾为0xCC,0x33,0xC3,0x3C、CRC16校验、寄存器0x80指令控制、波特率为115200bps。
最后,发送相应的串口指令,寄存器或者变量存储器接收到指令,并根据预设好的指令所代表的具体内容作出相对应的回应。
串口通信数据帧包括五部分,包括帧头、帧尾、数据长度(指令、数据以及校验)、指令、数据以及指令和数据的CRC16校验。其中指令和数据的CRC16校验并不是必须的,根据需要可用可不用。
串口指令具体为访问寄存器(读写寄存器)、访问变量存储器(读写变量存储器)。在本实施例中,通过读写寄存器实现串口通信。
本实施例中,需要对已经通过UART接口连接的两个设备进行通信,往某一个寄存器空间写入数据,具体的数据帧为:0x5A 0xA5 0x06 0x80 0x02 0x10 0x70 0x2B0x5A 0xA5是整个数据帧的帧头部分,0x06是数据帧的有效长度,即为后面所具有的所有字节数量,0x80代表着是写寄存器操作,0x02代表着寄存器列表中的2号寄存器,0x10是要往2号寄存器中写入的数据值,0x70 0x2B是CRC16的校验结果。
以上实例代表一种具有完整功能的通信数据帧的格式,具有帧头、寄存器命令、CRC校验等。该实例最重要的地方在于把数据的类型分类,把数据类型分类可以减少设备的CPU资源,使之动态使用CPU,把重要的数据优先处理,把实时性较差的数据延迟处理可以有效地预防CPU因为满载工作而造成数据出错或者丢失现象。
在本说明书中,参考术语“一个实施例”、“本实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应当视为本发明的保护范围。
Claims (6)
1.一种串口通信的系统及串口通信方法,其特征在于,串口通信系统包括串口、寄存器以及变量存储器。
2.一种串口通信的系统及串口通信方法,其特征在于,包括如下步骤:
首先,通过UART接口连接两边设备的寄存器以及变量存储器;
其次,设定好相应的参数:帧头、帧尾、校验、波特率和通信格式;
再者,发送对应寄存器或者变量寄存器的串口指令,在寄存器以及变量存储器接收到指令后,根据不同类别的指令以及不同功能的具体指令内容作出相应的回应。
3.如权利要求1所述的一种串口通信的系统及串口通信方法,其特征在于,寄存器实现进程控制,为硬件接口;变量存储器主要显示变量,进行格式控制,串口为UART接口。
4.如权利要求2所述的一种串口通信的系统及串口通信方法,其特征在于,可以自定义波特率(最高为1Mbps),可以自定义帧头,可选的CRC16校验。
5.如权利要求2所述的一种串口通信的系统及串口通信方法,其特征在于,串口指令主要为访问寄存器(读写寄存器),访问变量存储器(读写变量寄存器)。
6.如权利要求2所述的一种串口通信的系统及串口通信方法,其特征在于,串口指令的通信格式为十六进制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610148034.4A CN107180006A (zh) | 2016-03-10 | 2016-03-10 | 一种串口通信的系统及串口通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610148034.4A CN107180006A (zh) | 2016-03-10 | 2016-03-10 | 一种串口通信的系统及串口通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107180006A true CN107180006A (zh) | 2017-09-19 |
Family
ID=59830443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610148034.4A Pending CN107180006A (zh) | 2016-03-10 | 2016-03-10 | 一种串口通信的系统及串口通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107180006A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711609A (zh) * | 2020-05-21 | 2020-09-25 | 重庆川仪自动化股份有限公司 | 一种串口通信中的协议设计方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1581763A (zh) * | 2003-08-06 | 2005-02-16 | 因芬尼昂技术股份公司 | 具slip编/译码及crc检查之串行异步接口 |
CN101192064A (zh) * | 2006-11-24 | 2008-06-04 | 中国科学院沈阳自动化研究所 | 小型无人直升机自主飞行控制系统 |
CN102070051A (zh) * | 2009-11-19 | 2011-05-25 | 上海三菱电梯有限公司 | 电梯运行性能实时监测系统 |
CN103207848A (zh) * | 2013-03-07 | 2013-07-17 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种适用于mems陀螺系数加载的通信方法 |
CN104461815A (zh) * | 2014-12-11 | 2015-03-25 | 深圳芯邦科技股份有限公司 | 一种芯片调试方法及片上系统芯片 |
-
2016
- 2016-03-10 CN CN201610148034.4A patent/CN107180006A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1581763A (zh) * | 2003-08-06 | 2005-02-16 | 因芬尼昂技术股份公司 | 具slip编/译码及crc检查之串行异步接口 |
CN101192064A (zh) * | 2006-11-24 | 2008-06-04 | 中国科学院沈阳自动化研究所 | 小型无人直升机自主飞行控制系统 |
CN102070051A (zh) * | 2009-11-19 | 2011-05-25 | 上海三菱电梯有限公司 | 电梯运行性能实时监测系统 |
CN103207848A (zh) * | 2013-03-07 | 2013-07-17 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种适用于mems陀螺系数加载的通信方法 |
CN104461815A (zh) * | 2014-12-11 | 2015-03-25 | 深圳芯邦科技股份有限公司 | 一种芯片调试方法及片上系统芯片 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711609A (zh) * | 2020-05-21 | 2020-09-25 | 重庆川仪自动化股份有限公司 | 一种串口通信中的协议设计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60213616T2 (de) | Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung | |
CN103714026B (zh) | 一种支持原址数据交换的存储器访问方法及装置 | |
DE102021118048A1 (de) | Systemleistungsverwaltung in e/a-hybridsystemen mit mehreren ports | |
DE96928129T1 (de) | Universeller programmierbarer mediaprozessor | |
CN104965808A (zh) | 用于实现串口复用的装置以及串口复用的方法 | |
DE10355583A1 (de) | Gemeinsame Nutzung eines Speichers in einer Zentralsteuerung | |
CN110474950A (zh) | Uds网络层协议实现方法、计算机可读存储介质、计算机设备 | |
CN107180006A (zh) | 一种串口通信的系统及串口通信方法 | |
CN107888337A (zh) | 一种fpga、fpga处理信息的方法、加速装置 | |
CN107193766A (zh) | 一种PCIe设备与主机之间的多路有序数据传输方法 | |
CN106980587A (zh) | 一种通用输入输出时序处理器及时序输入输出控制方法 | |
CN105045756B (zh) | 一种串口数据处理方法及系统 | |
CN103049401B (zh) | 一种控制外围串口设备的方法、系统及控制设备 | |
CN207780763U (zh) | 多接口cpu模块 | |
CN208128284U (zh) | 一种基于s698pm的以太网转多路同步串口接口通讯设备 | |
CN109426643A (zh) | Usb接口请求调度方法、装置及设备 | |
CN109217994A (zh) | 数据传输方法、装置及计算机可读存储介质 | |
CN204390237U (zh) | 一种基于pci-e总线技术的加解密卡 | |
DE112019001730T5 (de) | Technologien für kooperative verbindungsentzerrung ohne unterbrechung für den verbindungsverkehr | |
CN105763336A (zh) | 单一网卡的多种网络协议切换方法及切换装置 | |
CN108962335A (zh) | 一种内存循环注错的测试装置及方法 | |
CN209267595U (zh) | 一种仪器连接系统 | |
CN107783926A (zh) | 基于PowerPC与网口的FPGA与PC的通信方法 | |
CN104484293B (zh) | 一种在多控存储系统中实现前端协议的方法和设备 | |
CN110232038A (zh) | 一种工控机用智能通讯串口装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100048 01, 18 floor, 5 building, No. 2 hospital, West Third Ring Road, Haidian District, Beijing. Applicant after: BEIJING DWIN TECHNOLOGY Co.,Ltd. Address before: 100086 Beijing Haidian District Zhichun Road 108 Hao Jing building A block 9 9 901 Applicant before: BEIJING DWIN TECHNOLOGY Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170919 |