ISO 9141-2 and ISO 14230-2 INITIALIZATION and DATA TRANSFER
http://ecad.tu-sofia.bg/et/2005/pdf/Paper097-P_Dzhelekarski1.pdf

INITIALIZATION
Prior to any diagnostic communication an initialization must be performed.
This is the process of activating the OBD system for starting communication.
The initialization can be started after an idle-time on the bus.
Two types of initialization can be used:
5-baud and fast initialization.
ISO 9141-2 supports only 5-baud initialization,
whereas ISO 14230-2 supports both types.
5-BAUD (CARB) INITIALIZATION
This initialization starts with sending of 5-baud address byte from the tester (client) to the OBD system (server).
If L-line exists, the address byte must be sent simultaneously on both K & L-lines, otherwise it should be sent only on K-line.
The address byte contains the functional address of the OBD system.
This is implemented in two ways in initSlow() method.
In K&L initialization, both lines are driven by simultaneous setting/clearing of RTS and TxD according to the bit values of the address byte:
this is computed 5-baud init. A system timer for 200 ms (5-baud bit time) is used.
For K-only initialization the port is configured at 5 baud rate; the address byte is sent; 2000 ms pause follows; baud rate is restored to 10,400 baud.
Fig. 3 shows the format of the 5-baud initialization. The server returns baud rate synchronization pattern ($55)
(standard baud rate 10,4 kbit/s, other rate is manufacturer specific). All subsequent communications are using this baud rate.
After sending the pattern, the server sends two keywords (KW) which carry information about the form of the subsequent serial communications.
From these keywords the tester identifies the diagnostic protocol to be used, ISO 14230-2 or ISO 9141-2.
After that the client confirms with sending logical inversion of keyword 2.
Then the server confirms with logical inversion of the address byte.
From this time on the communication link is established and the tester can start to request diagnostic data.

FAST INITIALIZATION
The fast initialization begins with wake-up pattern (WuP), transmitted by the tester simultaneously on K and L lines
(if provided L line is used, otherwise transmitted only on K-line) – see Fig. 4.
This is implemented in initFast() method by setting the TxD and RTS , followed by waiting for TiniL time interval and clearing of these signals.
After the time TWuP has elapsed the client sends StartComminication message request.
This message uses functional addressing and contains the target address of the OBD system and the source address of the tester.
The server responds with StartCommunication positive response(s), which contains the keywords.

DATA TRANSFER
After the communication link has been established, the tester can send request messages
and receive message response(s) from the ECU(s) of the OBD system (see Fig. 5).
This is referred to as data transfer and is performed by the transfer() method.
The transfer timing is very important and is determined by the periods P1…P4 with specified maximal and minimal allowable values.
The timing is implemented by using system timer for wait function and by using communication read timeouts.
In this way it is possible to group received response bytes into messages, based on separation period P2.
The period P3max has value of 5000 ms. After that time the communication link is automatically terminated by the server.
Therefore, to keep connection alive the tester must send periodically request messages.


ISO 9141-2 and ISO 14230-2 INITIALIZATION and DATA TRANSFER的更多相关文章
- Stripe开发笔记之-ISO Currency Code(ISO 4217)
参考:维基百科和ISO官网 ISO Currency Code:国际标准组织通用货币代号,国际标准化组织(英语:International Organization for Standardizati ...
- Initialization of data members
In C++, class variables are initialized in the same order as they appear in the class declaration. C ...
- 从FreeBSD里面看到的网络协议列表,感觉可以保存一下
# # Internet protocols # # $FreeBSD$ # from: @(#)protocols 5.1 (Berkeley) 4/17/89 # # See also http: ...
- BW知识问答汇总
什么是sap的星型结构,能不能详细讲解一下? Cube的星型结构中SID技术的优点有哪些? 什么是BW的星型结构,与传统的星型结构的区别是什么? SAP的星型结构相对于传统的星型结构优势? Cube与 ...
- BW知识问答锦集
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- SAE/ISO standards for Automotive
On-Board Diagnostics J1962 Diagnostic Connector Equivalent to ISO/DIS 15031-3: December 14, 2001J201 ...
- Vehicle Network Protocols -- ISO/KWP CAN CCD PCI SCI / SCP / Class 2
Vehicle Network Protocols There are 5 protocols in the OBD2 system and a car will normally only use ...
- atitit.日期,星期,时候的显示方法ISO 8601标准
atitit.日期,星期,时候的显示方法ISO 8601标准 1. ISO 86011 2. DAte日期的显示1 2.1. Normal1 2.2. 顺序日期表示法(可以将一年内的天数直接表示)1 ...
- 自定义制作iso镜像
下载"/etc/yum.repos.d/"下的MondoRescue软件库,文件名为"mondorescue.repo".请为你的Linux OS发行版本下载正 ...
随机推荐
- 仿Twitter登陆移动背景效果
有使用Twitter客户端的朋友应该有发现在登录的时候,屏幕上方和下方的云朵图片是不断移动着的,再加上Twitter那支可爱的小鸟在不停的动着,给人的感觉就好像是小鸟在飞翔一样,感觉效果很不错. 我也 ...
- 基于JavaScript的REST客户端框架
现在REST是一个比较热门的概念,REST已经成为一个在Web上越来越常用的应用,基于REST的Web服务越来越多,包括Twitter在内的微博客都是用REST做为对外的API,先前我曾经介绍过“基于 ...
- 关于asp.net中页面事件加载的先后顺序
一.ASP.NET 母版页和内容页中的事件 母版页和内容页都可以包含控件的事件处理程序.对于控件而言,事件是在本地处理的,即内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件.控件事件 ...
- api-ms-win-crt-runtime-l1-1-0.dll丢失问题
笔者是在安装python 3.5 后,启动时提示该文件丢失的问题的,如下所示.
- Nginx - Windows下Nginx基本安装和配置
Nginx 是一个轻量级的高性能 Http WebServer,以事件驱动方式编写,因此相比 Apache 而言,Nginx 更加稳定.性能更好,而且配置简单,资源占用较低. 1. 安装 Nginx ...
- hdu5248 序列变换
百度之星的题.其实最简单的方法是二分答案,我竟然没想到,直接去想O(n)的去了,最后导致滚粗... 题意就是给一个数列,要求把它处理成递增序列. 首先我想到了O(n^2)的算法,然后再优化成O(n)过 ...
- php生成百度新闻源xml
<?php /* http://baike.baidu.com/view/125547.htm#2 百度网新闻开放协议 */ mysql_connect($CFG['db_host'] ,$CF ...
- LeetCode Database: Delete Duplicate Emails
Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique ...
- effective c++:virtual函数在构造函数和析构函数中的注意事项
如不使用自动生成函数要明确拒绝 对于一个类,如果你没有声明,c++会自动生成一个构造函数,一个析构函数,一个copy构造函数和一个copy assignment操作符. class Empty { p ...
- python异常以及面向对象编程
一.面向对象 需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__na ...