can通信模块详细设计说明书

can通信模块详细设计说明书

ID:13322979

大小:613.00 KB

页数:22页

时间:2018-07-22

can通信模块详细设计说明书_第1页
can通信模块详细设计说明书_第2页
can通信模块详细设计说明书_第3页
can通信模块详细设计说明书_第4页
can通信模块详细设计说明书_第5页
资源描述:

《can通信模块详细设计说明书》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Can.cpp模块设计说明1.总则:传送故障记录数据或运行记录数据时,不传送参数数据和实时数据。传送参数数据和实时数据可同时传送。在界面层:1.读故障记录数据BUTTON和运行记录数据BUTTON和记录实时数据BUTTON没有按下,参数没有操作时,才能按下读故障记录数据BUTTON或运行记录数据BUTTON。否则弹出信息框。2.按下故障记录数据BUTTON后,把运行记录数据BUTTON和记录实时数据BUTTON变灰,参数MENU和参数界面上的读和修改BUTTON变灰,故障记录数据读完后,上述按钮复原。对按下运行记录数据BUT

2、TON作同样处理。3.按下记录实时数据BUTTON时,把故障记录数据BUTTON和运行记录数据BUTTON变灰。按下停止记录实时数据BUTTON时,把故障记录数据BUTTON和运行记录数据BUTTON复原。4.对参数上载和修改时,把故障记录数据BUTTON和运行记录数据BUTTON变灰,完成操作后把故障记录数据BUTTON和运行记录数据BUTTON复原。CAN和以太网类似,相应7种事件:关闭CAN、实时数据请求、读参数、写参数、发送心跳报文,读故障记录,读运行记录。2功能模块类名为:ClassCan类对象定义在Can.cpp

3、中,是一个全局对象。ClassLang_Can;该模块的功能为:1.通过USB转CAN与下位机进行实时数据请求和参数的上传下载,读故障记录,读运行记录;2.通过PCI插卡与下位机进行实时数据请求和参数的上传下载,读故障记录,读运行记录;3.出错处理。3流程逻辑CAN部分由线程CanThread()完成5个事件。OpenCan(DWORDDevType,DWORDDevIndex,DWORDReserved)函数通过调用API函数VCI_OpenDevice(DWORDDevType,DWORDDevIndex,DWORDRe

4、served)打开CAN;CloseCan(DWORDDevType,DWORDDevIndex)函数通过调用API函数VCI_CloseDevice(DWORDDevType,DWORDDevIndex)关闭CAN;StartCanThread()函数用于开启Can线程;SuspendedCanThread()函数用于关闭线程;CanThread()为Can线程函数,用于执行五种事件:关闭Can、发送实时数据请求、读参数、写参数和发送心跳报文。SendCanPacket(intiEvent,intIndex=0,intSu

5、bIndex=0,*Data=NULL)为CAN发送报文函数,iEvent为事件值,Index、SubIndex、Data用于参数的读写事件。根据不同的事件,发送相应的报文。RecvCanPacket()JudgeOvertime();以上函数形参封装在以下的数据结构中:typedefstruct_CAN_DEVICE_PARM_{DWORDdwDevType;//设备类型号DWORDdwDevIndex;//设备索引号DWORDdwReserved;//保留DWORDdwCANIndex;//Can第几路DWORDdwCh

6、ecCode;//验收码DWORDdwMask;//屏蔽码DWORDm_dwMode;//模式intiTimer0;//定时器intiTimer1;//定时器intiFilterType;//滤波方式}CAN_DEVICE_PARM;typedefstruct_VCI_CAN_OBJ{UINTuiID;UINTuiTimeStamp;BYTEbyTimeFlag;BYTEbySendType;BYTEbyRemoteFlag;//是否是远程帧BYTEbyExternFlag;//是否是扩展帧BYTEbyDataNbytes;

7、BYTEbyDataBuf[8];BYTEbyReserved[3];}VCI_CAN_OBJ,*PVCI_CAN_OBJ;成员uiID:报文ID;uiTimeStamp:接收到信息帧的时间标识,从CAN控制器初始化开始计时;byTimeFlag:是否使用时间标识,为1时uiTimeStamp有效,byTimeFlag和uiTimeStamp只在此帧为接收帧时有意义;bySendType:发送帧类型,0为正常发送,1为单次发送,2为自发自收,3为单次自发自收只在此帧为发送帧时有意义;byRemoteFlag:是否为远程帧;b

8、yExternFlag:是否为扩展帧;byDataNbytes:数据长度(<=8),即Data的长度;byDataBuf:报文的数据;byReserved:系统保留。typedefstruct_VCI_INIT_CONFIG{DWORDdwAccCode;DWORDdwAccMask;DW

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。