诊断服务_0x10和0x11服务

0x10和0x11服务功能

10和11服务都是都是跟会话切换有关的服务,以下主要针对常用的子功能进行说明。

10服务

10服务是针对会话切换的服务,常见的子服务有01,02,03。
01子服务是指默认会话,02子服务是指编程会话,03子服务是指扩展会话。各个会话之间可以进行切换。
最常用的会话切换有:
1.默认会话切扩展会话(01->03)
2.扩展会话切默认会话(03->01)
3.扩展会话切编程会话(03->02)
4.编程会话切默认会话(02->01)
需要注意的是,一般不支持默认会话跳转编程会话(01->02)和编程会话跳转扩展会话(02->03)。

10服务响应格式

10服务肯定响应格式:

Client send:02 10 01
Server response: 06 50 01 00 32 01 F4

10服务常用的否定响应有0x7E,0x12,0x13

10服务否定响应格式:

1.当发送的诊断请求中子服务不支持时,回复NRC=0x12

Client send:02 10 05
Server response: 03 7F 10 12

2.当发送的诊断请求长度不正确时,回复NRC=0x13

Client send:03 10 01 00
Server response: 03 7F 10 13

3.当不支持02会话切换到03会话,此时处于02会话下,发送02 10 03请求,回复NRC=0x7E

Session in programming:
Client send:02 10 03
Server response: 03 7F 10 7E

11服务

11服务主要功能是复位,常用的子功能有01、03。01子功能是指硬复位,03子功能是指软复位。

11服务肯定响应格式

Client send:02 11 01
Server response: 02 51 01

11服务否定响应格式

11服务常用的否定响应有0x12,0x13
1.当发送的诊断请求中子服务不支持时,回复NRC=0x12

Client send:02 11 05
Server response: 03 7F 11 12

2.当发送的诊断请求长度不正确时,回复NRC=0x13

Client send:03 11 01 00
Server response: 03 7F 11 13

10和11服务使用场景:

  1. 在10服务的默认会话下,收到02 11 01/02 11 03,由于收到11复位请求,还是会切换到默认会话。
  2. 在10服务的编程会话下,收到11 01/11 03,会发生复位;从BT下切换到APP。
  3. 在10服务的扩展会话下,收到11 01/11 03,会发生复位,切换至默认会话。

当然,10和11服务的使用场景也会和其他服务结合起来。
比如28服务如果只支持在03会话下,在03会话下使用28服务禁止应用报文的收发,但是之后又发送了10 01/11 01,会话状态就会切换至01会话,那么28服务禁止应用报文收发的功能就不会再起作用了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值