一种延时时间可控制的RS-422串口通信方法与流程

文档序号:16531965发布日期:2019-01-05 10:49阅读:2016来源:国知局
导航: X技术> 最新专利> 计算;推算;计数设备的制造及其应用技术
一种延时时间可控制的RS-422串口通信方法与流程

本发明属于通信领域,具体涉及一种延时时间可控制的rs-422串口通信方法。



背景技术:

rs-422串口通信为全双工传输,使用差分电平发送和接收信号,抗干扰能力强,传输距离远,最高数据传输速度可达10mb/s,广泛应用于工业领域。

目前工程中对于rs-422通信总线的一种主要应用方式如图1所示,rs-422芯片接收数据后,将数据写入内存,应用计算机程序从内存中读取数据,对数据进行处理,处理后对要发送的数据进行组帧,写入内存,rs-422芯片从内存中读取数据发送。

在一个通讯流中,从rs-422芯片接收数据到芯片发送数据所花费的时间较长,多为几毫秒到几十毫秒之间,并且不可控制。由于应用计算机的操作系统不同、使用的软件不同,以及程序设计的不同,rs-422将数据写入内存后,应用程序从内存中读取数据的时间具有随机性,应用程序对数据进行处理所需要的时间具有随机性,将数据写入内存后,芯片读取数据的时间同样也具有随机性。因此当在对返回时间要求稳定可控且较短(如200微秒)时,传统的设计方式不能满足要求。



技术实现要素:

本发明为了解决现有rs-422串口通信方案延时时间不可控制的技术问题,提出了一种延时时间可控制的rs-422串口通信方法。

本发明方案如下:

一种延时时间可控制的rs-422串口通信方法,包括fpga芯片和应用计算机;

所述fpga芯片的程序包括接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程;

所述fpga芯片的程序通过fifo1和fifo2进行接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程之间的通信;

所述应用计算机的内存以标签形式存储数据;

程序运行首先初始化,对rs-422通信参数进行配置,初始化后进入所述fpga芯片的程序;

所述fpga芯片的程序同时反复执行所述接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程;

所述接收rs-422数据进程检测引脚电平状态,当检测到rs-422数据的电平起始位后,对rs-422数据进行按位接收;接收数据后进行校验,当校验通过,检测到停止位时,将rs-422数据写入所述fifo1;当在校验失败或者在检测停止位时间内检测不到停止位时,rs-422数据丢弃;

所述处理rs-422数据进程对接收的rs-422数据和发送的rs-422数据进行处理;当所述处理rs-422数据进程检测到fifo1中有rs-422数据时,取出rs-422数据,按照约定的应用层通信协议进行数据处理,当数据符合协议要求时,从应用计算机的内存中取出标签形式的rs-422数据,将rs-422数据按照应用层通信协议按字节写入fifo2;当rs-422数据不符合协议要求时,将rs-422数据丢弃;

当所述发送rs-422数据进程检测到fifo2中有rs-422数据后,取出rs-422数据进行数据发送。

所述rs-422串口通信方案基于pxi总线。

所述fpga芯片的程序的1个时钟周期为7.8ns,fpga芯片的程序通过控制时钟周期个数控制延时时间。

从接收rs-422数据到发送rs-422数据的延时时间范围为1μs至100ms,且延时时间误差为1μs。

本发明的有益效果:本发明基于pxi总线,方便资源扩展整合;利用fpga芯片强大的时序控制能力、对数据的快速处理能力,通过fpga进行数据读取,数据处理,数据发送,缩小rs-422通信的延时时间到微秒级,并且延时时间可以控制,误差1微秒内。

附图说明

图1为本发明一种延时时间可控制的rs-422串口通信方法的传统rs-422通信总线的主要应用方式示意图;

图2为本发明一种延时时间可控制的rs-422串口通信方法的系统硬件结构示意图;

图3为本发明一种延时时间可控制的rs-422串口通信方法的fpga芯片的程序流程示意图;

图4为本发明一种延时时间可控制的rs-422串口通信方法的fpga芯片的程序的进程间时序图;

图5为本发明一种延时时间可控制的rs-422串口通信方法的具体实施例2中接收到的数据为aaaaaa时,接收数据时间为277.71μs时的延时时间测量结果图;

图6为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置1μs、实际测量时间△t为1.0665μs时的数据整体波形图;

图7为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置1μs、实际测量时间△t为1.0665μs时的数据局部波形图;

图8为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置50μs、实际测量时间△t为50.056μs时的数据整体波形图;

图9为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置50μs、实际测量时间△t为50.056μs时的数据局部波形图;

图10为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置200μs、实际测量时间△t为200.22μs时的数据整体波形图;

图11为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置200μs、实际测量时间△t为200.22μs时的数据局部波形图;

图12为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置500μs、实际测量时间△t为500.23μs时的数据整体波形图;

图13为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置1ms、实际测量时间△t为1.00002ms时的数据整体波形图;

图14为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置10ms、实际测量时间△t为9.9993ms时的数据整体波形图;

图15为本发明一种延时时间可控制的rs-422串口通信方法的延时时间设置100ms、实际测量时间△t为100.00ms时的数据整体波形图。

具体实施方式

下面结合附图对本发明进行进一步详细说明。

如图2所示,一种延时时间可控制的rs-422串口通信方法,基于pxi总线,包括fpga芯片和应用计算机,fpga芯片的程序主要分为三个进程,包括接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程。rs-422数据的读取、数据的处理以及数据的发送,均由fpga芯片完成,利用fpga芯片强大的时序控制能力,每个过程的时间均可控制,达到整体时间快速、可控。

如图3所示,所述fpga芯片的程序通过fifo1和fifo2进行接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程之间的通信。

所述应用计算机通过应用程序计算得出数据,以标签形式存储到数据内存中,fpga芯片能从内存中迅速取出数据,约为2时钟周期。当fpga芯片的时钟为128mhz时,1个时钟周期为7.8ns,根据设置的延时时间计算出所需的时钟周期个数,fpga芯片的程序进而通过控制运行时钟周期个数控制延时时间。从接收rs-422数据到发送rs-422数据的延时时间范围为1μs至100ms,且延时时间误差为1μs。

程序运行首先初始化,对rs-422通信参数如波特率、起始位、停止位位数等进行配置,初始化后进入fpga芯片的程序。

所述fpga芯片的程序同时反复执行所述接收rs-422数据进程、处理rs-422数据进程和发送rs-422数据进程。

接收rs-422数据进程检测引脚电平状态,当检测到rs-422数据的电平起始位后,对rs-422数据进行按位接收。接收数据后进行校验,当校验通过,检测到停止位时,将rs-422数据写入所述fifo1;当在校验失败或者在检测停止位时间内检测不到停止位时,rs-422数据丢弃;

所述处理rs-422数据进程是指fpga芯片的应用程序,主要负责对接收的rs-422数据和要发送的rs-422数据进行处理。当所述处理rs-422数据进程检测到fifo1中有rs-422数据时,取出rs-422数据进行数据处理,按照约定的应用层通信协议进行数据处理,当数据符合协议要求时,从应用计算机的内存中取出标签形式的rs-422数据,将rs-422数据按照应用层通信协议按字节写入fifo2;当rs-422数据不符合协议要求时,将数据丢弃;

当所述发送rs-422数据进程检测到fifo2中有rs-422数据后,取出rs-422数据进行数据发送。

具体实施例1:如图4所示,以rs-422通信协议为波特率115200bps,1起始位,8数据位,1校验位,1停止位为例,当接收到3字节数据后发送3字节数据,时序图如图4所示:

其中进程2从内存中读取数据写入fifo2时间根据写入字节数不同会有变动,写入1个字节时间约为2时钟周期。数据返回时间通过设置延时时间确定,单位为fpga时钟周期。例如当时钟源为128mhz,要求延时100μs时,设置延时时间为12820。

本发明在小卫星闭环模拟器系统中有成功的应用,通过对数据返回时间的控制,真实的模拟了卫星中rs-422单机的状态。

具体实施例:2:以下测试数据在如下条件下抓取:波特率115200bps,1起始位,8数据位,偶校验,1停止位,当系统接收aaaaaa数据时,随机返回3字节数据,返回时间分别在1μs、50μs、200μs、500μs、1ms、10ms、100ms下,使用ni-vb8012示波器(最大带宽100mhz,最大采样率1gs/s),示波器1通道表笔连接r+,2通道表笔连接t+,采用余晖的方式进行信号抓取。因停止位为高电平,rs-422通信无信息时也为高电平,因此测量延时时间时需测量停止位与返回时间的和,1位停止位约8.68μs。表1为各试验组实际测量结果与误差统计;

如图5所示,延时时间设置为1us情况下,系统接收数据为aaaaaa时,接收数据时间为277.71μs的延时时间测量,从r+校验位结束开始抓取,到t+起始位开始结束,用△x表示。因为停止位为高电平,总线无数据时也为高电平,因此,此处测量时间不包含最后一个字节的低电平,即,时间中少计算一停止位。图6至图15为延时时间测量结果图,用△t表示。

表1测量结果统计表

完整全部详细技术资料下载
当前第1页 1  2 
相关技术
  • USB Type-C接口电路...
  • 一种基于DSP的快速动态配置...
  • 主从机间协同使用的连接线及设...
  • 模拟量信号快速存储方法和装置...
  • 一种支持热插拔的RS232通...
  • 一种存储系统的制作方法
  • 一种多FPGA互联装置及方法...
  • 在电子扭矩扳手中使用USB用...
  • 通用串行总线电路的制作方法
  • 一种保持外接USB接口设备使...
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1

深圳SEO优化公司思茅优秀网站设计延安关键词按天计费公司西乡网站设计模板公司白城设计公司网站太原网站优化按天计费报价海南外贸网站设计多少钱同乐外贸网站制作白城百姓网标王推广多少钱塔城关键词按天收费多少钱衡阳seo网站推广推荐延边关键词排名包年推广公司临猗网站搜索优化淄博阿里店铺托管报价湘西阿里店铺托管报价和田网页制作价格常德网站开发报价烟台关键词排名包年推广多少钱林芝百度seo多少钱白山外贸网站建设推荐达州外贸网站制作多少钱吉祥建网站多少钱西安网站优化推广哪家好汕尾网站开发公司鹰潭网站排名优化报价湖州网站开发报价德州百度标王公司贵阳企业网站改版多少钱那曲SEO按天计费毕节网站排名优化推荐邵阳网站优化按天收费价格歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化