1 车速传感器性能测试平台简介
车速传感器是电控汽车的关键部件,其性能优劣直接关系到发动机怠速和变速器控制,因此,必须对其各项性能进行全面严格的测试。而这一系列的性能测试又有赖于一个稳定、高效的测试平台。传统测试平台通常采用由测试设备、测试操作台计算机和后台管理计算机组成的三级系统结构,如图1所示。
在此测试平台中,测试设备一般只提供串行通信接口(如RS-232、RS-485等),无法直接接入管理计算机所在局域网(如最常用的Ethernet)。所以,整个系统必须通过一个测试操作台计算机将上层局域网和底层串行总线网络连接起来以保证实测数据(各项性能指标数据)的顺利上传和测试操作命令(如车速传感器耐温测试、动/静态特性测试)的准确下达。为此不但要增设测试操作台计算机工作站,同时还必须安装各种串行口通信卡、以太网网卡和相应的板卡驱动程序,开发包含串行口通信模块和以太网通信模块的测控软件。由此可见,由于通信接口和协议的不兼容,使得传统车速传感器性能测试平台不仅软硬件投资成本高,系统结构复杂,调试和维护工作量大,而且管理计算机和测试设备间的数据传输要经过中转,传输过程显得过于复杂。
2 基于串行口-以太网桥的测试平台
通过对图1所示测试平台的研究,发现造成系统平台成本高、结构复杂、中间处理过程繁多的根本原因是底层各测试设备和上层局域网通信接口、协议的不兼容。一般来说,底层测试设备需传输的数据量很小,大多只提供通信距离短、成本低的串行口(如RS-232、RS-485);而上层的局域网大多采用以太网。所以针对此类应用,可以开发一种基于微处理器的嵌入式串行口-以太网桥实现协议转换,直接将各种仅支持串行口的测试设备接入以太网,实现各测试设备与管理计算机局域网的无缝连接,简化数据传输过程。
引入嵌入式串行口-以太网桥后的车速传感器性能测试平台结构如图2所示。
相比图1所示的传统测试平台,新测试平台下的串行口-以太网桥负责完成串行口测试设备和以太网之间的协议转换(即在底层完成串行帧数据和以太网帧数据的格式转换),实现了各测试设备和以太网的无缝连接,简化了数据传输过程。测试人员可以在远端通过上层管理计算机直接下达各种测试命令来控制各测试设备完成传感器各项性能指标的测试;而各项实测数据也能从各测试设备直接传送到后台管理计算机进行处理;从而使后台管理计算机能以多任务方式同时完成前台测试设备控制和后台数据处理(如数据报表统计分析,图形曲线显示和数据库更新),成为平台中的管控一体化工作站,省去了原平台中的测试操作台计算机工作站,测试人员也不必再亲临现场进行各种测试操作,极大地降低了工作强度。这样一来,不仅使系统成本大为降低、体积大为缩小、结构更加简单,同时将前台测试控制和后台数据处理集中于一台计算机,实现了管控一体化,节省了人力资源,使得系统的软硬件资源得到了最大限度的利用。
3 串行口-以太网桥设计
通过新旧测试平台对比,可以看到测试设备和后台管理计算机两大部件在性能和成本上基本相同。所以新测试平台的性能好坏和成本高低很大程度上取决于新引入的嵌入式串行口-以太网桥的性能和成本。目前嵌入式产品市场上此类网络设备大多是基于高档微处理器和实时操作系统开发的,其价格昂贵,且提供的串行口也只有1~2个,不适合需将多个串行口设备集中接人以太网,同时又要控制成本的应用场合。本文根据这类具体的应用需求在8位微控制器平台上设计了一种提供多个串行口的低成本嵌入式串行口-以太网桥。下面对其硬件和软件系统设计进行介绍。
3.1 硬件系统设计
实现本系统所用串行口-以太网桥的功能,需要进行多个串行口设备的以太网接人,以及串行通信协议和以太网通信协议的相互转换。所以硬件电路设计主要包括多路串行口电路模块和以太网接口电路模块设计。本文硬件系统方案选用ST公司的工业级SoC型微控制器μPSD3254和Realtek公司的高性能以太网控制器RTL8019AS两大核心器件进行电路设计。硬件系统设计如图3所示。
其中μPSD3254是一款由8051内核模块和PSD模块构成的具有SoC特征的增强型高速微控制器。晶振频率最高可达40MHz,芯片内的PSD模块为用户提供了丰富的可配置存储器资源(256KB主Flash、32KB次Flash及32KB的SRAM)、灵活的DPLD地址译码电路以及3000门的CPLD模块电路,片内硬件看门狗大大提高了系统可靠性,芯片自带JTAG接口支持ISP在系统编程,方便了程序调试和下载;而RTL8019AS是一款非常成熟的基于ISA总线、NE2000兼容的高性价比10M以太网控制器,其本身能完成以太网协议处理,只需和微控制器进行简单连接即可实现以太网通信;另外硬件电路还包括MAX232电平转换器和20F001N网络滤波器等少数外围器件。整个硬件系统仅由4、5个芯片构成,结构简单紧凑,可靠性高,成本低廉。下面从三方面给出硬件电路的具体设计。
3.1.1 PSD模块配置设计
微控制器μPSD3254的PSD模块使得硬件电路的设计大为简化。它本身提供的两块大容量Flash以及SRAM(支持后备电池)使用户无需再进行外部程序/数据存储器扩展。同时PSD模块中的DPLD子模块为Flash和SRAM提供了灵活的地址译码,CPLD子模块可供用户设计一些简单的组合/时序逻辑电路。本设计根据具体应用需求,对PSD模块配置如下:
(1) 主Flash扇区0(fs0)配置在程序存储器的0000H~FFFFH空间;
(2) 主Flash扇区1(fsl)配置在程序存储器的8000H~7FFFH空间;
(3) SRAM(rs0)配置在外部数据存储器的0000H~7FFFH空间;
(4) CPLD的PA口和PB口被分别设计为两个多路转换器,以供串行通信时进行信道切换。
3.1.2 串行口扩展设计
由图2可知,车速传感器性能测试平台中四个仅支持串行口的测试设备(分别负责耐温、转速、传感器静态特性和动态特性的测试)要同时接人嵌入式串行口-以太网桥,而微控制器μPSD3254本身只提供两个串行口(uart0、uart1),所以必须进行串行口扩展。一种简单的扩展方法是利用单片机I/O端口控制多路转换器(如CD4052)进行串行口扩展(图3),实现了一点对多点分时串行口通信。根据微控制器μPSD3254的I/O端口资源情况,依此方法系统最多可扩展32个串行口。根据此思路并结合测试平台的具体应用需求,利用μPSD3254的CPLD模块设计了两个二选一的多路转换器,从而不仅将两个串行口扩展为四个(uart00、uart01和uart10、uart11),而且省去了多路转换器芯片。另外,电平转换器实现TTL—RS232电平转换,这样就为四个测试设备提供了四个标准RS-232串行口供其接入串行口-以太网桥。 [page]
3.1.3 以太网接口设计
以太网接口是硬件电路设计的关键。因为RTL8019AS是基于ISA总线PC主板的以太网控制器,所以在和8位微控制器进行接口(见图3)时其硬件电路与通用方式有很大不同。下面从RTL8019AS以太网控制器自身功能配置、与微控制器μPSD3254之间的总线接口及与网络介质的接口等三方面给出具体电路设计。
(1) RTL8019AS功能管脚设置
RTL8019AS提供3种工作方式:PnP即插即用方式、免跳线方式和跳线方式。由于8位微控制器μPSD3254无法支持PnP工作方式,而免跳线方式又需外加专用串行E2PROM 93C46以存放相应的工作参数,因此选择跳线工作方式。在这种方式下RTL8019AS的中断、I/O端口地址、网络接口类型选择等就完全取决于表1所示功能管脚的状态。
JP脚接高电平使芯片工作于跳线方式,IOCS16B脚接低电平选8位数据总线,IRQS0~IRQS2接低电平选INT0为中断请求源,IOS0~IOS3接低电平选芯片I/O端口基地址为300H,AUI、PL0、PL1接低电平分别选。BNC网络接口和10Base-T双绞线传输介质,SMEMRB/SMEMWB接高电平屏蔽BROM读写操作。
(2) RTL8019AS与微控制器的总线接口
RTL8019AS与微控制器的接口连接如图4所示。
针对以上总线接口还有几点说明:①由于在8位微处理器系统中,只需操作RTL8019AS的32个I/O端口地址,所以只需5根地址线进行译码,其余15根地址线要根据I/O端口基地址接固定电平。②AEN使能端为低电平有效,而PC7的内部逻辑方程为PC7=A15,所以RTL8019AS映射到μPSD3254外部数据区的地址范围是8000H~FFFFH,这样μPSD3254通过读写外部数据区的此地址范围就能实现对RTL8019AS的读写。③由于RTL8019AS的处理速度比μPSD3254快很多,其内部数据缓冲区也相对较大,为了避免RTL8019AS每收到一帧数据就发出中断请求,从而频繁地打断处理器,所以μPSD3254以查询而非中断方式读写RTL8019AS以太网控制器。④RTL8019AS在复位时要进行一系列内部寄存器操作,所以用单片机的P3.7端口控制其复位,以保证有足够的复位时间。
(3) 网络介质接口连接
由于RTL8019AS内部已集成以太网收发器,而且对外提供AUI(支持粗同轴电缆)和BNC(支持细同轴电缆和双绞线)两种网络介质接口,所以本方案选择较常用的BNC接口,这样就只需再外加一个网络变压器20F001N和RJ45水晶头插座即可解决网络介质接口问题。
3.2 软件系统设计
由于整个网桥的底层功能(如以太网协议实现)已由硬件电路完成(见图4),所以在软件上只需完成RTL8019AS驱动、精简TCP/IP协议栈实现、用户自定义应用层处理以及串行口通信等功能。为了便于软件功能的实现和扩充,软件系统采用模块化方法进行设计。
3.2.1 RTL8019AS驱动模块
此模块设计依赖于RTL8019AS的硬件工作原理,即对RTL8019AS的驱动是通过操作其内部寄存器组来完成的。通常,在进行数据收发前需先向各寄存器写入相应的控制字,当发送以太网数据帧时,微控制器μPSD3254通过RTL8019AS的I/O端口将打包好的数据以远程DMA方式写入到RTL8019AS的内部数据发送缓冲区,然后启动发送;接收以太网数据帧时,RTL8019AS会自动接收数据并将其存人自己的内部数据接收缓冲区,然后以寄存器标志或中断请求方式通知μPSD3254,μPSD3254再通过RTL8019AS的I/O端口将数据以远程DMA方式读到自己的数据缓冲区并进行下一步的拆包处理。基于以上分析,RTL8019AS驱动程序分三部分设计,即芯片初始化(设置MAC地址、收发缓冲区大小、中断等)、发送数据子程序和接收数据子程序。详细的驱动程序见文献。
3.2.2 精简TCP/IP协议栈模块设计
此模块负责TCP/IP协议的处理。由于以太网协议只规定了物理层和数据链路层,所以要想实现进程间通信还必须实现上层的TCP/IP协议。但此协议非常复杂,而且很多功能都是针对PC平台的应用,在嵌入式系统中根本用不上;另外,8位微控制器的处理能力和内存空间也使得在其上实现完整的TCP/IP协议根本不可能。因此,在8位机上用软件实现TCP/IP协议时首先必须根据应用需求对整个协议栈进行裁剪。在本应用中,由于只需要在串行口和以太网间进行简单的测试数据和测试命令传输,所以在应用层采用了自定义协议,在传输层选择了能保证可靠性的TCP协议并进行了有针对性的TCP协议机制裁剪,而在网络层只实现了不提供分片和路由功能的IP协议、测试网络连通性所需的ICMP协议(仅支持Ping应答)以及提供IP地址到以太网地址(MAC地址)映射的ARP协议。这样,就得到了一个能在低档8位机上实现和运行的精简TCP/IP协议栈。此协议栈从物理层到应用层的完整结构如图5所示。
3.2.3 应用程序模块设计
应用程序模块直接面向用户需求提供相应服务。本设计中,根据整个软件模块的功能划分,应用程序需要完成串行口通信处理及串行帧和IP分组的格式转换。由于嵌入式串行口-以太网桥的TCP/IP协议栈传输层选择了保证数据传输可靠性的TCP协议(向应用层提供流式套接字接口),所以应用程序无需再进行超时重发和回传确认处理,仅需要完成串行口的数据收发操作以及串行数据帧和IP分组的格式转换。进行串行数据帧和IP分组的格式转换时使用了共享数据缓冲区和指针技术以避免协议分层间的数据拷贝,不仅节省了内存空间,而且大大提高了打包和拆包的处理速度;另外,由于串行口设备每次需传输的数据量很小,所以四个串行口缓冲区的数据采用集中打包、一次发送的方法减少了网络访问次数,既提高了通信效率又避免了因频繁短帧传输造成的网络拥堵;最后应用程序模块还提供了嵌入式串行口-以太网桥的串行门属性配置功能,用户可根据各测试设备串行口的具体属性,在管控计算机上通过以太网对网桥的各串行口收发数据缓冲区以及波特率进行远程动态设置,从而极大地提高了网桥的适应性。
实验证明,本文提出的嵌入式串行口-以太网桥应用于车速传感器性能测试平台,不但能完全满足测试平台的通信要求,还具有成本低、体积小、可靠性高等优点。同时在此网桥的硬件平台上,只要针对具体应用需求对应用程序模块稍作修改就可应用于其他汽车传感器性能测试平台(如轮速传感器性能测试平台)以及温室、环保、气象等需要远程监测的场合。因而该串行口-以太网桥具有很强的适应性和很高的推广应用价值。
关键字:传感器 串行口 性能测试 以太网桥
引用地址:用于车速传感器性能测试平台的串行口以太网桥设计
车速传感器是电控汽车的关键部件,其性能优劣直接关系到发动机怠速和变速器控制,因此,必须对其各项性能进行全面严格的测试。而这一系列的性能测试又有赖于一个稳定、高效的测试平台。传统测试平台通常采用由测试设备、测试操作台计算机和后台管理计算机组成的三级系统结构,如图1所示。
在此测试平台中,测试设备一般只提供串行通信接口(如RS-232、RS-485等),无法直接接入管理计算机所在局域网(如最常用的Ethernet)。所以,整个系统必须通过一个测试操作台计算机将上层局域网和底层串行总线网络连接起来以保证实测数据(各项性能指标数据)的顺利上传和测试操作命令(如车速传感器耐温测试、动/静态特性测试)的准确下达。为此不但要增设测试操作台计算机工作站,同时还必须安装各种串行口通信卡、以太网网卡和相应的板卡驱动程序,开发包含串行口通信模块和以太网通信模块的测控软件。由此可见,由于通信接口和协议的不兼容,使得传统车速传感器性能测试平台不仅软硬件投资成本高,系统结构复杂,调试和维护工作量大,而且管理计算机和测试设备间的数据传输要经过中转,传输过程显得过于复杂。
2 基于串行口-以太网桥的测试平台
通过对图1所示测试平台的研究,发现造成系统平台成本高、结构复杂、中间处理过程繁多的根本原因是底层各测试设备和上层局域网通信接口、协议的不兼容。一般来说,底层测试设备需传输的数据量很小,大多只提供通信距离短、成本低的串行口(如RS-232、RS-485);而上层的局域网大多采用以太网。所以针对此类应用,可以开发一种基于微处理器的嵌入式串行口-以太网桥实现协议转换,直接将各种仅支持串行口的测试设备接入以太网,实现各测试设备与管理计算机局域网的无缝连接,简化数据传输过程。
引入嵌入式串行口-以太网桥后的车速传感器性能测试平台结构如图2所示。
相比图1所示的传统测试平台,新测试平台下的串行口-以太网桥负责完成串行口测试设备和以太网之间的协议转换(即在底层完成串行帧数据和以太网帧数据的格式转换),实现了各测试设备和以太网的无缝连接,简化了数据传输过程。测试人员可以在远端通过上层管理计算机直接下达各种测试命令来控制各测试设备完成传感器各项性能指标的测试;而各项实测数据也能从各测试设备直接传送到后台管理计算机进行处理;从而使后台管理计算机能以多任务方式同时完成前台测试设备控制和后台数据处理(如数据报表统计分析,图形曲线显示和数据库更新),成为平台中的管控一体化工作站,省去了原平台中的测试操作台计算机工作站,测试人员也不必再亲临现场进行各种测试操作,极大地降低了工作强度。这样一来,不仅使系统成本大为降低、体积大为缩小、结构更加简单,同时将前台测试控制和后台数据处理集中于一台计算机,实现了管控一体化,节省了人力资源,使得系统的软硬件资源得到了最大限度的利用。
3 串行口-以太网桥设计
通过新旧测试平台对比,可以看到测试设备和后台管理计算机两大部件在性能和成本上基本相同。所以新测试平台的性能好坏和成本高低很大程度上取决于新引入的嵌入式串行口-以太网桥的性能和成本。目前嵌入式产品市场上此类网络设备大多是基于高档微处理器和实时操作系统开发的,其价格昂贵,且提供的串行口也只有1~2个,不适合需将多个串行口设备集中接人以太网,同时又要控制成本的应用场合。本文根据这类具体的应用需求在8位微控制器平台上设计了一种提供多个串行口的低成本嵌入式串行口-以太网桥。下面对其硬件和软件系统设计进行介绍。
3.1 硬件系统设计
实现本系统所用串行口-以太网桥的功能,需要进行多个串行口设备的以太网接人,以及串行通信协议和以太网通信协议的相互转换。所以硬件电路设计主要包括多路串行口电路模块和以太网接口电路模块设计。本文硬件系统方案选用ST公司的工业级SoC型微控制器μPSD3254和Realtek公司的高性能以太网控制器RTL8019AS两大核心器件进行电路设计。硬件系统设计如图3所示。
其中μPSD3254是一款由8051内核模块和PSD模块构成的具有SoC特征的增强型高速微控制器。晶振频率最高可达40MHz,芯片内的PSD模块为用户提供了丰富的可配置存储器资源(256KB主Flash、32KB次Flash及32KB的SRAM)、灵活的DPLD地址译码电路以及3000门的CPLD模块电路,片内硬件看门狗大大提高了系统可靠性,芯片自带JTAG接口支持ISP在系统编程,方便了程序调试和下载;而RTL8019AS是一款非常成熟的基于ISA总线、NE2000兼容的高性价比10M以太网控制器,其本身能完成以太网协议处理,只需和微控制器进行简单连接即可实现以太网通信;另外硬件电路还包括MAX232电平转换器和20F001N网络滤波器等少数外围器件。整个硬件系统仅由4、5个芯片构成,结构简单紧凑,可靠性高,成本低廉。下面从三方面给出硬件电路的具体设计。
3.1.1 PSD模块配置设计
微控制器μPSD3254的PSD模块使得硬件电路的设计大为简化。它本身提供的两块大容量Flash以及SRAM(支持后备电池)使用户无需再进行外部程序/数据存储器扩展。同时PSD模块中的DPLD子模块为Flash和SRAM提供了灵活的地址译码,CPLD子模块可供用户设计一些简单的组合/时序逻辑电路。本设计根据具体应用需求,对PSD模块配置如下:
(1) 主Flash扇区0(fs0)配置在程序存储器的0000H~FFFFH空间;
(2) 主Flash扇区1(fsl)配置在程序存储器的8000H~7FFFH空间;
(3) SRAM(rs0)配置在外部数据存储器的0000H~7FFFH空间;
(4) CPLD的PA口和PB口被分别设计为两个多路转换器,以供串行通信时进行信道切换。
3.1.2 串行口扩展设计
由图2可知,车速传感器性能测试平台中四个仅支持串行口的测试设备(分别负责耐温、转速、传感器静态特性和动态特性的测试)要同时接人嵌入式串行口-以太网桥,而微控制器μPSD3254本身只提供两个串行口(uart0、uart1),所以必须进行串行口扩展。一种简单的扩展方法是利用单片机I/O端口控制多路转换器(如CD4052)进行串行口扩展(图3),实现了一点对多点分时串行口通信。根据微控制器μPSD3254的I/O端口资源情况,依此方法系统最多可扩展32个串行口。根据此思路并结合测试平台的具体应用需求,利用μPSD3254的CPLD模块设计了两个二选一的多路转换器,从而不仅将两个串行口扩展为四个(uart00、uart01和uart10、uart11),而且省去了多路转换器芯片。另外,电平转换器实现TTL—RS232电平转换,这样就为四个测试设备提供了四个标准RS-232串行口供其接入串行口-以太网桥。 [page]
3.1.3 以太网接口设计
以太网接口是硬件电路设计的关键。因为RTL8019AS是基于ISA总线PC主板的以太网控制器,所以在和8位微控制器进行接口(见图3)时其硬件电路与通用方式有很大不同。下面从RTL8019AS以太网控制器自身功能配置、与微控制器μPSD3254之间的总线接口及与网络介质的接口等三方面给出具体电路设计。
(1) RTL8019AS功能管脚设置
RTL8019AS提供3种工作方式:PnP即插即用方式、免跳线方式和跳线方式。由于8位微控制器μPSD3254无法支持PnP工作方式,而免跳线方式又需外加专用串行E2PROM 93C46以存放相应的工作参数,因此选择跳线工作方式。在这种方式下RTL8019AS的中断、I/O端口地址、网络接口类型选择等就完全取决于表1所示功能管脚的状态。
JP脚接高电平使芯片工作于跳线方式,IOCS16B脚接低电平选8位数据总线,IRQS0~IRQS2接低电平选INT0为中断请求源,IOS0~IOS3接低电平选芯片I/O端口基地址为300H,AUI、PL0、PL1接低电平分别选。BNC网络接口和10Base-T双绞线传输介质,SMEMRB/SMEMWB接高电平屏蔽BROM读写操作。
(2) RTL8019AS与微控制器的总线接口
RTL8019AS与微控制器的接口连接如图4所示。
针对以上总线接口还有几点说明:①由于在8位微处理器系统中,只需操作RTL8019AS的32个I/O端口地址,所以只需5根地址线进行译码,其余15根地址线要根据I/O端口基地址接固定电平。②AEN使能端为低电平有效,而PC7的内部逻辑方程为PC7=A15,所以RTL8019AS映射到μPSD3254外部数据区的地址范围是8000H~FFFFH,这样μPSD3254通过读写外部数据区的此地址范围就能实现对RTL8019AS的读写。③由于RTL8019AS的处理速度比μPSD3254快很多,其内部数据缓冲区也相对较大,为了避免RTL8019AS每收到一帧数据就发出中断请求,从而频繁地打断处理器,所以μPSD3254以查询而非中断方式读写RTL8019AS以太网控制器。④RTL8019AS在复位时要进行一系列内部寄存器操作,所以用单片机的P3.7端口控制其复位,以保证有足够的复位时间。
(3) 网络介质接口连接
由于RTL8019AS内部已集成以太网收发器,而且对外提供AUI(支持粗同轴电缆)和BNC(支持细同轴电缆和双绞线)两种网络介质接口,所以本方案选择较常用的BNC接口,这样就只需再外加一个网络变压器20F001N和RJ45水晶头插座即可解决网络介质接口问题。
3.2 软件系统设计
由于整个网桥的底层功能(如以太网协议实现)已由硬件电路完成(见图4),所以在软件上只需完成RTL8019AS驱动、精简TCP/IP协议栈实现、用户自定义应用层处理以及串行口通信等功能。为了便于软件功能的实现和扩充,软件系统采用模块化方法进行设计。
3.2.1 RTL8019AS驱动模块
此模块设计依赖于RTL8019AS的硬件工作原理,即对RTL8019AS的驱动是通过操作其内部寄存器组来完成的。通常,在进行数据收发前需先向各寄存器写入相应的控制字,当发送以太网数据帧时,微控制器μPSD3254通过RTL8019AS的I/O端口将打包好的数据以远程DMA方式写入到RTL8019AS的内部数据发送缓冲区,然后启动发送;接收以太网数据帧时,RTL8019AS会自动接收数据并将其存人自己的内部数据接收缓冲区,然后以寄存器标志或中断请求方式通知μPSD3254,μPSD3254再通过RTL8019AS的I/O端口将数据以远程DMA方式读到自己的数据缓冲区并进行下一步的拆包处理。基于以上分析,RTL8019AS驱动程序分三部分设计,即芯片初始化(设置MAC地址、收发缓冲区大小、中断等)、发送数据子程序和接收数据子程序。详细的驱动程序见文献。
3.2.2 精简TCP/IP协议栈模块设计
此模块负责TCP/IP协议的处理。由于以太网协议只规定了物理层和数据链路层,所以要想实现进程间通信还必须实现上层的TCP/IP协议。但此协议非常复杂,而且很多功能都是针对PC平台的应用,在嵌入式系统中根本用不上;另外,8位微控制器的处理能力和内存空间也使得在其上实现完整的TCP/IP协议根本不可能。因此,在8位机上用软件实现TCP/IP协议时首先必须根据应用需求对整个协议栈进行裁剪。在本应用中,由于只需要在串行口和以太网间进行简单的测试数据和测试命令传输,所以在应用层采用了自定义协议,在传输层选择了能保证可靠性的TCP协议并进行了有针对性的TCP协议机制裁剪,而在网络层只实现了不提供分片和路由功能的IP协议、测试网络连通性所需的ICMP协议(仅支持Ping应答)以及提供IP地址到以太网地址(MAC地址)映射的ARP协议。这样,就得到了一个能在低档8位机上实现和运行的精简TCP/IP协议栈。此协议栈从物理层到应用层的完整结构如图5所示。
3.2.3 应用程序模块设计
应用程序模块直接面向用户需求提供相应服务。本设计中,根据整个软件模块的功能划分,应用程序需要完成串行口通信处理及串行帧和IP分组的格式转换。由于嵌入式串行口-以太网桥的TCP/IP协议栈传输层选择了保证数据传输可靠性的TCP协议(向应用层提供流式套接字接口),所以应用程序无需再进行超时重发和回传确认处理,仅需要完成串行口的数据收发操作以及串行数据帧和IP分组的格式转换。进行串行数据帧和IP分组的格式转换时使用了共享数据缓冲区和指针技术以避免协议分层间的数据拷贝,不仅节省了内存空间,而且大大提高了打包和拆包的处理速度;另外,由于串行口设备每次需传输的数据量很小,所以四个串行口缓冲区的数据采用集中打包、一次发送的方法减少了网络访问次数,既提高了通信效率又避免了因频繁短帧传输造成的网络拥堵;最后应用程序模块还提供了嵌入式串行口-以太网桥的串行门属性配置功能,用户可根据各测试设备串行口的具体属性,在管控计算机上通过以太网对网桥的各串行口收发数据缓冲区以及波特率进行远程动态设置,从而极大地提高了网桥的适应性。
实验证明,本文提出的嵌入式串行口-以太网桥应用于车速传感器性能测试平台,不但能完全满足测试平台的通信要求,还具有成本低、体积小、可靠性高等优点。同时在此网桥的硬件平台上,只要针对具体应用需求对应用程序模块稍作修改就可应用于其他汽车传感器性能测试平台(如轮速传感器性能测试平台)以及温室、环保、气象等需要远程监测的场合。因而该串行口-以太网桥具有很强的适应性和很高的推广应用价值。
上一篇:不断发展的汽车防盗技术
下一篇:基于模型和产品代码生成的汽车嵌入式系统设计
推荐阅读最新更新时间:2024-05-03 00:00
忘了智能音箱吧 这堵智能墙挥手就能控制家电
用智能音箱声控家电我们已经见怪不怪了,但随便朝着哪面墙挥挥手就能开灯关灯呢?卡内基梅隆大学和迪士尼研究机构又出黑科技,只要20美元一平方,让家中的普通墙壁也能秒变智能墙。 研究人员发现,刷上导电涂料、装上定制的传感器板就能制造电极,把一面普通的墙变成带有手势感应以及能够检测跟踪电子设备的智能墙,他们把它命名为墙++(Wall++)。 智能墙工作方式和科幻片就很像,每个人都可以自定义姿势、手势来完成特定的功能操作。而墙壁无处不在,智能化后它既能感知人的活动又能控制其他智能家电,当你回家时,自动开灯,打开电视看电影时,墙又能自动调暗灯光,就像家里多了一位贴心管家。 这不是卡内基梅隆大学的研究者们第一次尝试把普通
[家用电子]
爆胎预警系统硬件可靠性设计技术
据美国汽车工程师学会的调查,美国每年有26万交通事故是由于轮胎气压低或渗漏造车的,另外,每年75%的轮胎故障是由于轮胎渗漏或充气不足引起的。根据我国有关部门的统计,高速公路46%的交通事故是由于轮胎发生故障引起的,其中爆胎一项就占事故总量的70%。同时,随着我国社会经济水平和汽车工业的发展,我国的汽车产销量正逐年提高。根据中国汽车协会的统计,2010年中国汽车产量达到18 264 667辆,同比增加32.44%,而且我国的汽车总量在下个10年还会保持高速增长。因此怎样减少交通事故,最大限度地减少由于轮胎爆胎而引发的交通事故,尤其是防范由此引发的群死群伤事故,已成为社会各界共同关心的课题。轮胎爆胎监测系统能实时监测各个轮胎的压力和温
[嵌入式]
思特威闪耀亮相2021 CPSE,同期新品发布会圆满落幕!
2021年12月29日,中国深圳 — 技术先进的CMOS图像传感器供应商思特威(SmartSens)以“以芯见非凡,用影像连接未来”为主题亮相第18届国际社会公共安全博览会(CPSE)。在活动现场思特威举行了2021新品发布会,思特威首席运营官马伟剑先生带来精彩的开场发言,宣布新晋成立汽车芯片部及工业和新兴传感器部,意在进一步拓展车载、工业及专业级机器视觉市场。而后,安防、车载、工业和新兴传感器三大芯片部负责人也轮番发布最新的尖端产品,为安防、车载电子以及工业&机器视觉客户量身打造智视解决方案,现场座无虚席,氛围热烈。 目前,为期四天的第18届国际社会公共安全博览会已于深圳会展中心圆满落幕,此次安博会展示面积高达11万平
[安防电子]
纹身型传感器贴身更“贴心” 监测生命体征的弹性生物传感器有望上市
弹性可拉伸电子元器件能直接贴服在皮肤上了。不仅如此,它还能够测量重要的生命体征,比如呼吸频率、心率、大脑电波活跃程度、体温、血液含氧量等,为实时监测人们关心的身体状况提供数据。更特别的是,它们越来越隐形,诸如“生物贴”、“纹身”传感器、测皮肤热性能的柔性设备,以及“智能胰岛素贴”等,就像临时纹身一样,让人感觉更贴身、更贴心,正在越来越广泛的领域获得应用。
“生物贴”可感知生命体征
2013年,美国剑桥学区MC10公司发布了世界上第一款能与身体贴合很好的电子产品,它是专门为运动员定制的,被称为“检测之光”(Checklight),能够感知鸭舌帽和头部之间的压力。
现在,这家公司正在开发一种弹性的、像贴纸一
[医疗电子]
TDK推出支持高精度运动传感器应用的6轴IMU
TDK推出适用于IoT、机器人、AR / VR和可穿戴应用的、具有行业领先的运动传感器性能的高性能6轴IMU。 外部时钟输入改善了系统级性能 19位的陀螺仪分辨率提高了慢动作感应精度 温度稳定性提高了2倍,最大程度地减少了运动漂移 噪声系数降低40%,可增强传感器的响应能力 TDK推出了InvenSense ICM-42688-P高性能运动传感器,该6轴MEMS MotionTracking™设备在2.5mmx 3mmx 0.9mm的封装中结合了一个3轴陀螺仪和一个3轴加速度计。该设备支持高精度运动传感器应用,如机器人技术,可穿戴设备,无人机以及其他IoT设备等。 与传统消费品
[物联网]
东芝发布带色彩降噪的1.12微米CMOS图像传感器
东京—东芝公司(TOKYO:6502)今天宣布推出带色彩降噪(CNR)的1.12微米、1300万像素BSI CMOS图像传感器“T4K37”。从今天开始批量生产。 该产品采用业界最小级别 的1.12微米像素工艺制造,内部集成了CNR电路,使之可实现与采用1.4微米像素工艺制造的同等产品相同的信噪比。 T4K37还具有高动态范围(HDR)成像功能,可真实再现高对比度图像中的暗处和亮处。该产品具有全分辨率下30帧/秒的高帧率,可减少成像延迟,从而减少快门滞后,支持连续拍照。 应用 手机、智能手机和平板电脑的摄像头 主要特性 1.12微米像素 色彩降噪 高动态范围 高帧率:全分辨率30帧/秒(
[手机便携]
基于Linux的温度传感器DS18B20驱动程序设计
引言
传统的模拟温度测量抗干扰能力差,放大电路零点漂移大,导致测量值误差大,难以达到所需精度。在实际应用中,采用抗干扰能力强的数字温度传感器是解决上述问题的有效办法。
DS18B20是Dallas公司生产的数字温度传感器,具有体积小、适用电压宽、经济灵活的特点。它内部使用了onboard专利技术,全部传感元件及转换电路集成在一个形如三极管的集成电路内。DS18B20有电源线、地线及数据线3根引脚线,工作电压范围为3~5.5 V,支持单总线接口。
准确的温度测量是很多嵌入式系统中重要的一点。在Linux操作系统下使用数字温度传感器DS18B20,不仅可以得到高精度的温度测量值,而且硬件简单可靠。
1L
[嵌入式]
毕马威报告分享:汽车传感器市场观察
本报告所研究的汽车传感器是指汽车计算机系统的关键输入设备,它由敏感元件、转换元件、转换电路等多个辅助部件协同工作构成。在汽车运行过程中,汽车传感器能够精确捕捉车身的多种状态信息以及周围环境数据,并将这些信息转换为电信号,随后传输至汽车的控制单元,控制单元再根据传感器提供的数据信息,对车辆的运行状态进行精确监控和及时调整,从而确保汽车的安全性和性能表现。 根据不同应用目的,汽车传感器可被划分为两大类别:车身感知传感器和环境感知传感器。 车身感知传感器是车辆自身信息的核心感知元件,它们如同汽车的“神经元”,遍布在动力、底盘及车身等各个系统之中,显著提升了汽车的信息化水平。车身传感器包括但不限于压力传感器、位置传感器、温度传
[汽车电子]