概述:

一. UDS 协议软件架构框图
二. UDS 软件文件结构
三.  UDS 软件模块的调度机制

一. UDS 协议软件架构框图

二. UDS 软件文件结构

三.  UDS 软件模块的调度机制

1.UDS 软件基于网络协议分层的架构,分别有协议应用层,网络层和数据链路层
2.应用层基于 ISO15765-3,ISO14229-1 编写, 应用层分为应用层协议控制部分和应用层各功能
服务(SID),各功能服务 SID 都有一个对外函数接口(用过此函数执行服务, 并给出正响应或负
响应的应用层报文,输入以指针的函数双向传递报文, 出粗则以函数参数返回报文数据长度),
应用层协议控制部分通过 SID 查表的方式, 以服务函数的指针调用各服务
3.网络层协议基于 ISO15765-2 编写,
网络层协议实现功能:
1)从数据链路层接收数据重组并传递至应用层
2)执行应用层数据发送请求,实现应用层报文的分组和发送至数据链路层
3)执行网络层数据格式的检查,发送,定时参数的执行和错误的处理
4.数据链路层基于 ISO15765-2,ISO11898-1 编写
实现功能:
1)接收来自物理层的 CAN 数据, 传递至网络层

2)发送来自网络层的数据

UDS 协议软件架构相关推荐

  1. UDS协议一致性测试之Service 27环境NRC 13、NRC 24优先级判断

    UDS协议一致性测试之Service 27环境NRC 13.NRC 24优先级判断 周末咯!!! 预祝各位看官周末愉快,牙齿晒太阳哈. 今天闲聊下在进行UDS协议一致性测试时,Service 27测试 ...

  2. UDS协议发展历史(UDS是什么?)

    诊断协议那些事儿 本文为诊断协议那些事儿专栏首篇文章,旨在介绍诊断的起源.发展历史,让读者对诊断有一个基本的认识,明确UDS到底是什么. 关联文章: UDS的应用场景 UDS的OSI模型 UDS服务列 ...

  3. 对于UDS协议的传输控制协议ISO15765的学习记录

    参考:UDS网络层/TP层(ISO 15765-2)的解读 讲的很非常好. can报文一帧只能最多传输8个字节,但是UDS协议要求最多能传输4095字节,因此就产生了ISO15765协议. 数据单元( ...

  4. 读取 DTC 信息服务 (0x19) – UDS 协议

    总目录链接==>> AutoSAR入门和实战系列总目录 0x19读取 DTC 信息服务概述 读取 DTC 信息服务在 UDS 协议中用于从车辆或特定 ECU 或节点读取 DTC.UDS 协 ...

  5. 基于scapy uds协议包实践

    一.UDS协议说明: 源自百度:UDS协议(Unified Diagnostic Services,统一诊断服务)是诊断服务的规范化标准,比如读取故障码应该向ecu发什么指令,读数据流又发什么指令.O ...

  6. UDS协议-0x10(诊断会话控制)

    UDS诊断协议是一种汽车诊断技术,通过收发车辆ECU的请求信号,即可做出相应的响应. 命令 0x10 (诊断会话控制) Diagnostic Session Control 0x10命令用于确定模式, ...

  7. UDS协议中常见的NRC

    UDS诊断协议中常见的NRC NRC:Negative Response Code,否定响应码

  8. 解读UDS协议中NRC以及NRC优先级

    最近被新东方转型之举震撼,让自己震撼的不是销售业绩.不是俞敏洪再创业启航,震撼的是多读书是真的可以改变一个人的,多读的这些书不是应用工作的功利书,是能慰藉心灵的"闲书".为使自己摆 ...

  9. PCAN-UDS API实现uds协议的BootLoader刷写流程

    本文探讨使用PCAN官方的PCAN-UDS API来实现BootLoader刷写流程.不对流程进行详解,对流程不熟悉的同学可以参考https://blog.csdn.net/king110108/ar ...

  10. 记:从零开始讲解UDS(一)——协议概述

    0x00 UDS概述 UDS(University Diagnostics System通用诊断系统)是一个在整车系统上经常使用的设备维护协议.其主要遵循的法规为:ISO-15765.ISO-1422 ...

最新文章

  1. 关于Windows不能在本地计算机启动Apache2.......并参考特定服务错误代码1问题解决...
  2. 【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)
  3. jQuery ajax的traditional参数的作用
  4. android壁纸选择器,Android 图片选择器
  5. U Sparkle 开发者计划招募中!
  6. 一个本科生,只用了两年就拿下诺贝尔奖,拯救了无数糖尿病患者
  7. 学习笔记之-------UIScrollView 基本用法 代理使用
  8. spark 架构_深入研究Spark内部和架构
  9. python车牌字符分割_OpenCV+Python识别车牌和字符分割的实现
  10. 最全最新个税计算公式---今天你税了吗?
  11. zuul业务检查相关模块
  12. java项目实战之404错误原因总结
  13. 电脑怎么把大量音频合并
  14. 家庭局域网_分析 | 如何查询局域网内在用的IP地址?
  15. 开题报告、论文摘要、摘要翻译、论文结论怎么写?
  16. 阿里矢量图标iconfont在微信小程序的使用
  17. JMeter配置元件
  18. Big-man进军Linux系统(一)
  19. Python中的随机数
  20. C语言编程之字母转换并保存至磁盘

热门文章

  1. 烧录superboot.bin 到 友善之臂mini2440 开发板
  2. 从0开始写外挂(2)
  3. ttf字体,简单获取
  4. OPPO Find X5系列领衔OPPO春季新品发布会,多款产品亮相
  5. c语言实现lcd显示自动滚动,lcd1602实现字幕滚动原理_lcd1602滚动显示程序
  6. 通过IP地址获取地理位置信息
  7. DNF私服单机搭建教程
  8. 如何将一个完整项目推到码云_「码云下载项目」如何通过Git将本地项目提交到码云或GitHub...
  9. oracle 函数的使用
  10. jvisualvm的使用