导航:首页 > 编程语言 > 汽车总线编程

汽车总线编程

发布时间:2022-12-17 07:02:08

① 如何进行汽车CAN总线开发

接上一篇:

我们先研究数据帧吧。

一,数据帧由7 个不同位场组成(帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结尾)。

这里的位场,就是不同位的组合,这名字起的很烂,让人看了感觉很抽象。我们来看看这些个不同的位场吧。一开始是一位帧起始,也叫SOF。它用显性位表示,也就是0;它告诉我们,两个线上有电压差了,也就是有数据了。

这个帧起始看起来只有一位,其实不简单了。为了让所有的分站都同步于发送报文的发送站,好接收数据,有很多要考虑的地方。

帧结尾

每一个数据帧和远程帧均由一标志序列界定。这个标志序列由7个“隐性”位组成。

② 如何进行汽车 CAN 总线开发

首先,请看这份恒润工程师写的论文《CAN总线系统测试技术》。
里面基本描述了CAN总线开发的流程,但主要侧重于CAN总线的测试,不过也能让你有所了解。
根据你的描述,假设你的要求是:能够基于某嵌入式平台(最好该平台在汽车ECU开发中被广泛使用),根据给定的通信协议(一般由通信矩阵描述),编写CAN接口代码,并能通过相关设备进行简单测试。
推荐的学习步骤为:
1. 了解CAN基本知识
可以通过这个ppt,恒润的东西还是不错的。
CAN基础_网络文库
2. 直观的了解CAN
这需要你购买或借用CAN总线检测设备,档次差很多。如果是你自己想玩,可以买个周立功的USB转CAN,淘宝也就几百块钱。如果是课题组采购,可以买个Kvaser的USBCAN,几千块吧。大致这个样子。
要是土豪的话,可以买Vector的VN1600,这个就好几万了。以上三种我都用过。一定要买双通道,然后一个口发,一个口接,可以自己接延长线通过示波器看信号了。尝试修改报文ID,数据,波特率等等,看示波器的变化,对理解第一部分的内容很有帮助
3. 选择嵌入式平台,学习CAN接口的编程
飞思卡尔MC9S08DZ60MLH 8位汽车级CAN总线 开发板 学习板超
可以选择这个小板子练习一下,程序的写法都是差不多的。然后和第二部分的总线检测设备连在一起进行测试。
这一步需要详细了解信号转换的知识,特别是Big Endian和Little Endian的区别,factor和offset的作用,如何置1或置0,可以参考DBC_File_Format_DocumentaTIon_网络文库,很详细,看完就懂了。
4. 如果有兴趣,可以看看J1939协议(用于商用车)或者CANOpen协议(用于现场控制,很多电机控制器使用)或者ISO 15031-5(用于OBD诊断)。
最后,希望你在了解CAN以后,不要花过多的精力在底层上,基本都是体力劳动。体现价值的还得是上层。请看看一汽技术中心的相关招聘要求:
工作职责
1.设计新能源汽车网络拓扑和制定网络技术需求;
2.制定新能源汽车网络通信需求、网络通信矩阵和网络数据库;
3.设计和开发新能源汽车网络通信协议仿真试验、网络通信规范、网络线束规范;
4.设计新能源汽车网关控制器及具有相同网络通信功能的接口控制器产品定义与技术规范;
5.负责新能源汽车电子电气开发过程中的问题解决,配合生产和售后服务。来源:知乎 作者:Wang Yu

阅读全文

与汽车总线编程相关的资料

热点内容
dvd光盘存储汉子算法 浏览:758
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:672
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:486
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:383
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:350
风翼app为什么进不去了 浏览:779
im4java压缩图片 浏览:362
数据查询网站源码 浏览:151
伊克塞尔文档怎么进行加密 浏览:893
app转账是什么 浏览:163