在线客服系统

期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

基于CPLD的串口网关设计与应用(2)

人气指数: 发布时间:2013-12-21 14:06  来源:http://www.zgqkk.com  作者: 朱洁 封坤
分享到:

 


  2.1串口网关的软件结构
  在系统软件设计中,整个软件采用模块化设计,其软件结构组成模块如图3。软件的核心在于CPLD接收和发送这两个模块,通过实现这两个模块,就能通过串口网关实现串口数据的协议以及波特率的转换。
  图3软件结构模块图
  在上面模块图中,CPLD主处理部分的软件主要包括波特率产生部分、接收部分、发送部分。这里重点介绍一下接收部分的软件。其中最主要的两个进程如下:
  process(clk1,clr)
  variableNum:integerrange0to9:=0;
  begin
  ifclr='0'orValid='0'then
  Enable<='1';Num:=0;-Q<="0000000000";elsif(rising_edge(clk1))then
  Q(Num)<=(N(0)andN(1))or(N(1)andN(2))or(N(0)andN(2));
  ifNum=9then
  Num:=0;Enable<='0';Hold<='1';
  else
  Num:=Num+1;Enable<='1';Hold<='0';
  endif;
  endif;
  endprocess;
  process(clr,com)
  begin
  if(clr='0'orEnable='0')then
  Valid<='0';
  elsiffalling_edge(com)then
  Valid<='1';
  endif;
  endprocess;
  第一个进程是将接收数据的每一位存储在预先定义好的数组中,当接收完一个字节后便可以产生Hold信号的上升沿,此信号是直接接到发送模块中的EN端,如前图2所示。然后在发送模块中将数据直接一位一位地通过串口发出去。其接收仿真波形如图4所示,其输入是0111100001,接收后数组中的数是1E1。
  图4数据接收仿真波形
  接收完一个字节数据后,便可以通过发送部分将数据发送出去,其总体接收和发送波形如图5所示。
  图5总体接收与发送仿真波形
  2.2异协议和异波特率的转换
  在这两个问题上,主要是对上面的软件里面做一些修改,主要体现于接收和发送控制模块的受外部频率控制的部分,其中让波特率发生器产生接收和发送模块需要的波特率就可以,这些波特率主要是通过CPLD的外部晶振进行分频产生所需要的波特率即可。协议转换方面主要改动体现于发送部分,发送过程中只要通过检测到使能信号和接收数组中的数据后,然后通过接收到的数据判断是属于哪一种协议后,按照预先的约定转换成要求发送数据的协议,此要发送的数据可以存储在一些常量数组中,然后一位一位的发出去。
  3调试
  串口网关的使用及其具体的测试硬件电路图6所示。图中的连接及其设置如下:
  首先:将所有的设备线连好,将PC1机的COM1通过RS232连到串口网关的串口上,PC2也是同样如此,一一对应即可。其次:在两台PC机上装上串口调试助手软件,设置好里面的波特率。
  经测试,发送和接收数据正常,在同一种波特率的情况下,可以看到两者的数据一样,无丢包;在不同波特率上,可以看到由低到高发送正常,而在高到低的情况下可以发现丢包,所以必须多发几帧同样的数据,以保证数据的正常接收和发送;在不同协议转换上能够按照自己的约定来发送和接收。
  4结束语
  基于CPLD的串口网关可以实现不同协议数据的转换和不同波特率数据的相互转换,此网关功能的实现便于那些使用不同协议的产品,另外还可以通过CPLD来分配引脚,使得任何一个串口可以给多串口发数据,串口之间互相发数据,这些便于实现各种复杂的控制功能,使系统具有最大的扩展性,并且尽可能的降低了系统的造价,具有经济性。
  参考文献:
  [1]赵曙.可编程逻辑器件原理、开发与应用[M].西安:西安电子科技大学出版社,2001.
  [2]JamesR.ArmstrongF,GailGray.VHDL设计表示和综合[M].2版.北京:机械工业出版社,2002.
  [3]王毅平,张振荣.VHDL编程与仿真[M].北京:人民邮电出版社,2000.
  [4]徐志军.CPLD/FPGA的开发与运用[M].北京:电子工业出版社,2002.

期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有