提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档文章目录前言一、UDS诊断1.概念2.多帧传输3.NRC码4.常见SID服务二、使用步骤1.引入库2.读入数据总结前言提示这里可以添加本文要记录的大概内容记录CAN和UDS学习的过程一、UDS诊断1.概念目的多种网络统一诊断类比应用层HTTP协议通过【请求】和【响应】形式对ECU进行测试、检测、诊断等功能。【1】由于数据场比较短 数据帧传输8字节CAN FD传输64字节如果一条诊断的命令超过数据场长度就需要分包传输———多帧传输。2.多帧传输ISO 156765规范规定了帧格式四种数据帧以CAN 数据场8字节标准【单帧】SF数据有效部分小于8字节不足使用0XAA/55/CC等填充。SF_DL表示有效字节数。无论单帧/多帧每一帧的0号字节的高4位用于区别帧类型0/1/2/3【第一帧】帧类型1FF0号字节低四位加1号字节组成FF_DL表示多帧传输的数据长度。【连续帧】帧类型2CFSN代表帧序号从1开始.第一个16进制 是帧类型第二个是FS状态【流控帧】帧类型3FC: 0号字节低四位流状态参数FS。BS代表接下来会发送几帧连续帧当BS0时块大小不做限制STmin规定连续帧发送的最小时间间隔第一个16进制 是帧类型第二个帧序号【FS】0CTS 继续发送1WT 等待 令发送方停发直到下一个流控帧到来2OVFLW 溢出 当接收方收到首帧判断到FF_DL的长度比接收方的缓冲区大时发送随后发送方中止发送。3F 保留简单判断一个字节两个16进制只需看第一位16进制分辨哪种帧类型。3.NRC码服务是以请求-响应格式构成涉及否定响应就需要知道为什么是否定故引入否定响应码NRCNRC——Negative Response Code【请求格式】1.SIDSF服务子功能2.SIDDID服务DID DID数据的ID 常读写用3.SIDSFDID用在例程服务动作A-B-C-D-E——封装成一个操作F通过某服务(SID)——执行F(DID)-执行了ABCDE操作开始 暂停 结束SF4.SID【响应】分肯定响应和否定响应肯定响应SID0x40SF(其他)req10 01rsp: 50 01否定响应7F服务SIDNRCrep:10 01rsp:7F 10 1313代表NRC码有具体含义查表。4.常见SID服务二、使用步骤1.引入库代码如下示例import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import warnings warnings.filterwarnings(ignore)import ssl ssl._create_default_https_contextssl._create_unverified_context2.读入数据代码如下示例datapd.read_csv(https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv)print(data.head())该处使用的url网络请求的数据。总结提示这里对文章进行总结例如以上就是今天要讲的内容本文仅仅简单介绍了pandas的使用而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。