UDS-预编程阶段

1、定义了将一个或多个应用软件失性/数据模块以物理的方式下载到非易失性服务器内存的框架。

2、 编程顺序:

  1.  在数据链路上进行任何通讯之前,应该对网络进行初始化(例如,在网络上执行初始唤醒)。唤醒方法和策略是车辆制造商特定和可选的使用。此外,该步骤允许确定服务器通信参数,例如由服务器使用的网络参数和服务器诊断地址。
  2. 为了能够禁用服务器之间的正常通信和设置DTC,需要在每个服务器中启动非默认会话,其中正常通信和DTC将被禁用。这个通过sessionType等于extendedDiagnosticSessionControl(0x10)服务实现的。该请求是功能寻址或者对每个服务器进行物理寻址(要求通过TesterPresent(0x3E)请求将每个服务器转换到非默认会话状态)。由汽车制造商是否需要响应消息。
  3. 转换到扩展诊断会话之后,整车制造商可以选择性的执行数据链路初始化步骤。
    例如:汽车制造商定义的可选择性的初始化步骤发出请求,网关可以执行唤醒数据链路(客户端不能直接访问的),只要非默认会话一直处于激活状态,网关就会保持数据链路处于唤醒状态。 
  4. 这个可选择的routineIdentifier (汽车制造商选择的数字)允许客户检查转换到编程会话的前置条件是否满足。
  5. 客户端通过0x85服务器禁用DTC设置功能,这个请求可以通过功能寻址或者对每个服务器进行物理寻址。是否需要响应消息由汽车制造商决定。
  6. 这个可选择的routineIdentifier可以使用或者禁用服务器的安全故障响应。
  7. 客户端用0x28服务禁用传输和接收非诊断信息,控制类型和会话类型参数由汽车制造商决定(主机厂可能只会禁止传输,有些主机厂可能把传输和接收都禁用,这都根据主机厂实际情况决定),这个请求可以通过功能寻址或者对每个服务器进行物理寻址。是否需要响应消息由汽车制造商决定。
  8. 禁止可选择的正常通信之后,主机厂可以的具体步骤如下所示:
    ⎯ 读取要编程服务器的状态(例如:应用程序/编程数据)。
    ⎯通过服务器的编程数据读取服务器标识数据:
         ⎯ 标识 (see dataIdentifier definitions):应用软件标识/应用数据标识 
         ⎯ 指纹 (see dataIdentifier definitions):应用软件指纹/应用数据标指纹
    ⎯ 通信说明例如服务器的动态地址标识
    ⎯ 为了即将进行编程活动准备好处于非编程状态服务器,为了优化数据链路硬件接受过滤,以便在不丢弃数据的情况下可以100%处理总线使用率。(只可接受功能请求地址标识和它自己物理请求地址标识)。
  9. 增加编程事件的带宽是可以选择的,以便减少编程时间和获得额外的带宽同步 编程多个服务器。通过0x87服务的verifyBaudrateTransitionWithFixedMode or
    verifyBaudrateTransitionWithSpecificMode 传输。服务器用这个验证相关数据链路上的模式是否可以转换。此时不执行转换。带有子功能 transitionMode的0x87服务responseRequired为“no”传输数据(通过功能寻址的方式)。一旦请求成功的发送,客户端和服务器转换到先前先前验证的的编程模式。服务器必须发送主机厂定义的单个数据链路模式,为了这个过程中安全余量, 客户端不能传输任何请求消息到车辆网络里(包括3E请求)。当转换成功后,请求模式 应该激活非默认会话状态。一旦转换到默认会话状态,它应该重启整车链路被链接的正常模式。
    The usage of mode switches requires the support of functional diagnostic communication in each server on a
    single data link that shall be transitioned to the associated data link dependent mode.
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uds-server是一种基于Unix域套接字的服务器,用于实现进程间通信。Unix域套接字是一种在同一台主机上的进程间进行通信的机制,相比于网络套接字具有更高的效率和安全性。 uds-server可以充当服务器角色,接收客户端的连接请求,并处理客户端发来的数据。它可以用于实现各种不同的功能,例如文件传输、共享内存、管道等。通过uds-server,不同的进程可以在同一台机器上进行有效的数据交换,提高了程序的灵活性和性能。 uds-server的工作方式包括以下几个步骤。首先,uds-server需要创建一个Unix域套接字,以便客户端可以通过该套接字与之建立连接。然后,uds-server会监听该套接字,等待客户端的连接请求。一旦有客户端请求连接,uds-server就会接受该连接,并创建一个新的套接字,用于与该客户端进行通信。 接下来,uds-server可以根据具体的需求,对客户端发送过来的数据进行处理。例如,可以将客户端发送的数据写入文件,或者进行一些计算操作。在完成后,uds-server可以将处理结果发送给客户端。 uds-server的优点在于它能够在同一台主机上进行进程间通信,不需要经过网络传输,因此速度更快、效率更高。另外,由于使用Unix域套接字进行通信,所以通信过程更加安全可靠。 总而言之,uds-server是一种基于Unix域套接字的服务器,可以在同一台主机上实现进程间的高效通信。它的应用范围广泛,可以满足不同的需求,并提供更快速和安全的数据交换解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值