[发明专利]一种上位机与微处理器的通信方法无效
申请号: | 200910251472.3 | 申请日: | 2009-12-23 |
公开(公告)号: | CN101753396A | 公开(公告)日: | 2010-06-23 |
发明(设计)人: | 王瑛;陈立冲;宋波 | 申请(专利权)人: | 奇瑞汽车股份有限公司 |
主分类号: | H04L12/40 | 分类号: | H04L12/40;H04L29/06 |
代理公司: | 深圳市金阳行专利商标事务所(普通合伙) 44240 | 代理人: | 杨大庆 |
地址: | 241009 安徽*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 上位 微处理器 通信 方法 | ||
技术领域
本发明涉及通信方法领域,特别涉及一种应用于汽车故障诊断的一种微处理器(MCU)与上位机间进行通信的方法,该方法中,上位机和微处理器间的通信协议是KWP2000协议。
背景技术
目前,在现有的车辆测试系统中,当需要在上位机与MCU间进行信息传递时,一种常用的方式是使用电平信息进行状态信息的交换,不仅占用了宝贵MCU I/O端口资源,而且可以进行传递的信息状态有限;在比较复杂的系统中,系统可靠性低,功能实现受到极大限制,并且成本较高。
发明内容
为克服现有技术中的不足,本发明的目的在于提供上位机与微处理器的通信方法,该方法利用现有的汽车CAN网络连接上位机和微处理器,通过网络进行通信,是一种成本低,可靠性高,易扩充的上位机与微处理器通信的方法。
为解决上述技术问题,本发明的技术方案为:一种上位机与微处理器的通信方法,所述的上位机通过CAN网络与微处理器连接,采用KWP2000通信协议进行信息发送和信息接收。
利用本方法实现上位机和微处理器之间的通信,充分地利用了现有的CAN网络,是一种成本低、可靠性高,易扩充的上位机与微处理器通信的方法。
以下将结合附图,对本发明的各较佳实施例进行较为详细的说明。
附图说明
图1是本发明通信接口示意图。
图2是本发明数据帧格式图。
图3是本发明实施例1数据传输流程图。
图4是本发明实施例2数据传输流程图。
图5是本发明发送数据流程图。
图6是本发明接收数据流程图。
具体实施方式
如图1所示:一种上位机与微处理器的通信方法,所述的上位机通过CAN网络与微处理器连接,CAN网络传输采用差分信号传输,抗干扰能力强,信号传输的可靠性高,只需要两根网络线分别为CANH和CANL。本通信方法采用KWP2000通信协议,将需要传送的信息进行预先定义,信源通过传输层、网络层、数据链路层和物理层将其传输到信宿,本实施例中,信息的传送时序有固定时序传送方式和非固定时序传送方式两种方式。
本实施例广泛地应用于汽车故障诊断领域,一般汽车故障诊断系统都需要利用一台上位机获取汽车的状态信息,近几年在汽车故障诊断领域,针对诊断设备和汽车ECU之间的数据交换,各大汽车公司几乎都制订了相关的标准和协议。其中,欧洲汽车领域广泛使用的一种车载诊断协议标准是KWP2000(Keyword Protocol2000),该协议实现了一套完整的车载诊断服务,并且满足E-OBD(European On Board Diagnose)标准。CAN(Controller Area Network)网络由于其非破坏性的网络仲裁机制、较高的通讯速率(可达1M bps)和灵活可靠的通讯方式,在车载网络领域广受青睐,因此,近年来欧洲汽车领域广泛采用了基于CAN总线的KWP2000,即ISO 15765协议。
在利用本发明的方法中,分别给上位机和MCU定义一个通讯地址(ID),用于在指定的上位机和MCU之间收发消息。上位机以固定时序T(例如每10ms)或者是可变时序通过CAN BUS发消息给MCU(微处理器)。数据格式遵循KWP2000协议,幁格式如图2所示。例如我们可以定义,第0字节高4位代表数据类型,低4位代表数据长度,第1字节到第7字节为所要传送的数据。MCU首先会判断接收到的消息是否符合格式要求。若不符合,则返回负响应信息给上位机;若符合,则返回正响应信息给上位机,并调用相应的子程序。返回的消息格式同样遵循KWP2000协议。
实施例1,本实施例是一种在固定时序传送方式,如图3所示:上位机或者MCU在开机时进行初始化以后,运行其应用程序,当程序运行到相应语句处,将需要传送的信息分析按下面方法处理:如图5所示:
A1、依据KWP2000协议对要发送的信息打包,生成数据包;
A2、将数据包发送到CAN网络上。
按以下步骤接收数据:如图6所示:
B1、从CAN网络上收取数据包;
B2、依据KWP2000协议对数据包解包;
B3、将解包的数据暂存。
按照传输层协议打包成数据帧的格式后进行传送。程序每循环一次,进行一次数据传送。从外部看来就是每隔固定的时间间隔收发一次信息。数据传送的周期T就是完成一次主循环的周期,其与代码执行的速度和程序的大小有关。这种方式流程控制比较清晰,数据传送的时间固定,传送过程中不需人为介入就可以在上位机和MCU之间自动完成数据的发送和接收,实现两者的通讯,自动化程度高。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奇瑞汽车股份有限公司,未经奇瑞汽车股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910251472.3/2.html,转载请声明来源钻瓜专利网。