JPH0722281B2 - 車載コンピュータ間のデータ通信方法 - Google Patents
車載コンピュータ間のデータ通信方法Info
- Publication number
- JPH0722281B2 JPH0722281B2 JP2298449A JP29844990A JPH0722281B2 JP H0722281 B2 JPH0722281 B2 JP H0722281B2 JP 2298449 A JP2298449 A JP 2298449A JP 29844990 A JP29844990 A JP 29844990A JP H0722281 B2 JPH0722281 B2 JP H0722281B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- computer
- byte
- communication
- transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Debugging And Monitoring (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Description
コンピュータ間のデータ通信方法に関する。
タを搭載するものが多くなり、例えば、特開昭61−4915
4号公報には、第1,第2のマイクロコンピュータを備
え、複数種類の制御項目を分担処理させる技術が開示さ
れている。
ンピュータをシリアルチャンネルで結合し、互いに必要
とするデータを直列伝送しており、このデータの直列伝
送には、クロック同期式を採用し、双方向通信を行なう
ものが多い。
データを2回受信し、各受信データを比較して一致した
場合、有効データとする方法が採用され、通信データの
信頼性を確保するようにしている。
から受信側装置へ、送信データと、その反転データとを
交互に送信し、受信側装置でデータの反転が検出された
とき送信データ正常と判断し、データの反転が検出され
ないとき送信データの誤りと判断することで、同時に複
数ビットの誤りを検出可能とした技術が開示されてい
る。
送信と受信とが同時に行われるため、各コンピュータの
通信インターフェースは、送信と受信とを兼用する送受
信バッファを備えるものが多く、上述のように、データ
を2回送信し、各受信データを比較して一致した場合に
有効データとする方法では、例えば第1のコンピュータ
からデータを送信した場合、万一、相手側の第2のコン
ピュータに異常が生じると、この第2のコンピュータで
は送信値を送受信バッファにセットできず、この送受信
バッファに蓄えられたデータが、次の送受信サイクル
で、そのままエコーバックされて第1のコンピュータに
返信されてしまう。
値が同一データとなり、上述した方法では第2のコンピ
ュータの異常を検出できず、返信値が有効データとみな
されるおそれがある。
れている技術では、その目的を達成するための手段とし
て、データ送信側装置においてデータレジスタからの送
信データをデータ反転回路により反転し、データレジス
タからの送信データとデータ反転回路からの反転データ
とをセレクタ回路により交互に受信側装置に出力する一
方、このセレクタ回路から交互に出力される送信データ
及び反転データを受信側装置のレジスタでラッチし、こ
のレジスタでラッチされ出力されるデータと、セレクタ
回路からのデータとを反転検出回路により比較し、反転
が検出されたとき送信データ正常と判断し、反転が検出
されないとき送信データの誤りと判断するようにしてい
るため、データ反転回路、セレクタ回路、ラッチとして
のレジスタ、及び、反転検出回路等の多くの付加回路を
必要とし、これらの付加回路を必要とする分、ハードウ
ェア構成が複雑となるばかりでなく、コストアップを招
くことになる。
された第1のコンピュータと第2のコンピュータとの双
方向通信システムに適用した場合には、第2のコンピュ
ータにおける送受信バッファに相当するデータレジスタ
からの送信データをデータ反転回路により反転し、か
つ、送信データ及びデータ反転回路により反転されたデ
ータをセレクタ回路を介して交互に第1のコンピュータ
側に送信することになり、第1のコンピュータ側では、
レジスタ及び反転検出回路を設け、第2のコンピュータ
側から正規の送信データが送信されているときにはレジ
スタに前回の反転されたデータをラッチし、第2のコン
ピュータ側から反転されたデータが送信されているとき
にはレジスタに前回の送信データをラッチすることにな
るため、第2のコンピュータ側のセレクタ回路から出力
されるデータとレジスタにラッチされたデータとを反転
検出回路により比較し、送信データの有効性を判断しな
ければならず、各回路の同期を正確に取る必要が生じる
等の新たな課題が派生する。
合、第2のコンピュータにおける送受信バッファに相当
するデータレジスタからデータをデータ反転回路により
反転させることになり、データレジスタからの送信デー
タと、これを反転したデータとを比較しても、第2のコ
ンピュータに異常が生じたときのデータを認識すること
はできない。
へデータを送信したとき、第2のコンピュータに異常が
生じると、第2のコンピュータでは第1のコンピュータ
からの送信データに応じた返信値を送受信バッファに相
当するデータレジスタにセットできず、これ以前にデー
タレジスタに蓄えられたデータが、次の送受信サイクル
でそのままエコーバックされ第1のコンピュータに送信
されてしまう。
ータレジスタからエコーバックされるデータであって
も、このデータと、このデータをデータ反転回路により
反転したデータとが交互に第1のコンピュータ側に送信
されることになり、第1のコンピュータ側では受信した
データが交互に反転しているため、第2のコンピュータ
の異常を検出できずに第2のコンピュータからの返信値
を有効と誤判断してしまい、双方向通信におけるデータ
の有効性を判断できない。
異常によるデータを第1のコンピュータで認識し、デー
タの有効性を正確に判断して双方向通信の信頼性を向上
することが可能な車載コンピュータ間のデータ通信方法
を提供することを目的とする。
1のコンピュータと第2のコンピュータとをシリアルチ
ャンネルで結合し、双方向通信を行う車載コンピュータ
間のデータ通信方法において、上記第1のコンピュータ
では、上記第2のコンピュータへデータ読み出しのコマ
ンドを含むデータを送信し、次に、上記第2のコンピュ
ータへ同じデータを送信したときに上記第2のコンピュ
ータから返信された所定のビット数からなる第1のデー
タを保持した後、さらに、上記第2のコンピュータへ同
じデータを送信し、上記第2のコンピュータでは、上記
第1のコンピュータからデータ読み出しのコマンドを含
むデータを最初に受信したとき、このデータの内容に応
じてメモリから上記第1のデータを読み出し、次に、上
記第1のコンピュータから同じデータを受信したとき、
上記第1のデータを上記第1のコンピュータに送信し、
その後、さらに上記第1のコンピュータから同じデータ
を受信したときには、上記第1のデータの全ビットを反
転した第2のデータを上記第1のコンピュータに送信
し、上記第1のコンピュータにおいて、上記第2のコン
ピュータから上記第2のデータを受信した後、受信した
上記第2のデータを全ビット反転し、この反転したデー
タと保持した上記第1のデータとを比較して、両データ
が一致するとき、上記第1のデータの受信値を有効と判
断し、両データが相違するとき、異常と判断することを
特徴とする。
タへデータ読み出しのコマンドを含むデータを送信する
と、このデータの内容に応じて第2のコンピュータでメ
モリから所定ビット数の第1のデータが読み出され、こ
の第1のデータが、第1のコンピュータから第2のコン
ピュータへ同じデータが再度送信されたときに返信され
て第1のコンピュータで保持される。そして、第1のコ
ンピュータから第2のコンピュータへ、さらっに同じデ
ータを送信すると、第1のデータの全ビットを反転した
第2のデータが第2のコンピュータから第1のコンピュ
ータへ送信され、この第2のデータが第1のコンピュー
タで全ビット反転されて第1のデータと比較され、両デ
ータが一致するとき第1のデータの受信値が有効と判断
され、相違するとき異常と判断される。
ュータの通信手順を示すフローチャート、第2図はサブ
コンピュータの通信手順を示すフローチャート、第3図
は制御装置の回路ブロック図、第4図は送受信バッファ
を示す説明図、第5図はクロック同期通信のタイムチャ
ート、第6図は通信ブロックの構成を示す説明図であ
る。
る電子制御装置(ECU)であり、このECU1には、第1の
コンピュータとしてのメインコンピュータ1a及び第2の
コンピュータとしてのサブコンピュータ1bの2つのマイ
クロコンピュータが内蔵され、さらに、駆動回路1cなど
の周辺回路が内蔵されている。
CPU10、ROM11、RAM12、I/Oインターフェイス13、シリア
ルインターフェイス(SCI)14、及び、タイマ15がバス
ライン16を介して接続され、また、上記サブコンピュー
タ1bは、例えば8ビットのサブCPU20、ROM21、RAM22、I
/Oインターフェイス23、シリアルインターフェイス(SC
I)24、及び、タイマ25がバスライン26を介して接続さ
れている。
イス13では、入力ポートに運転状態を検出するセンサ・
スイッチ類30が接続されるとともに、出力ポートに駆動
回路1cを介してインジェクタ、点火コイルなどのアクチ
ュエータ類31が接続され、一方、上記サブコンピュータ
1bのI/Oインターフェイス23では、入力ポートにノック
センサ32が接続されている。
ンジン制御プログラム、サブコンピュータ1bとのデータ
通信のための通信プログラム、および、制御用固定デー
タ類が記憶されており、一方、上記ROM21には、ノック
検出処理プログラム及びメインコンピュータ1aとのデー
タ通信のための通信プログラムが記憶されている。
プなどの固定データをSCI14を介してサブコンピュータ1
bに転送し、次いで、上記センサ・スイッチ類30からの
エンジン運転状態パラメータに基づいて点火時期、燃料
噴射パルス幅などを演算してアクチュエータ類31に出力
するとともに、上記サブコンピュータ1bへ点火時期など
のエンジンコントロール情報を送信する。
エンジンコントロール情報をSCI24を介して受信し、ノ
ックセンサ32からの信号を処理してメインコンピュータ
1aに送信する。その結果、ノック発生の場合には、メイ
ンコンピュータ1aは点火時期を遅角補正してノックを解
消させ、常に適切な状態にエンジンを制御する。
び、受信信号RXの各ラインで互いに接続され、第4図に
示すように、シフトレジレタからなる送受信バッファ40
に受信データが蓄えられて所定のタイミングで各CPU10,
20に取込まれ、また、各CPU10,20から書込まれたデータ
が所定のタイミングで送信される。
は、クロック信号CLKに同期して1パルスに1ビットの
シリアルデータとして順に記憶され、8ビットのデータ
が蓄積されると、各CPU10,20に1バイト分のパラレルデ
ータとして取込まれる。次いで、各CPU10,20から上記送
受信バッファ40に1バイトの返信データが書込まれ、次
の送受信タイミングでシリアルデータとして送信され
る。
クロック信号CLKが供給されて上記メインCPU10と上記サ
ブCPU20との間でクロック同期式の全二重双方向通信が
行われ、第5図に示すように、通信データDATAのLSB
(ビット0)からMSB(ビット7)までの各ビットが、
上記クロック信号CLKの立上がりのタイミングでストロ
ーブされる。
について説明する。
ータ通信においては、第6図に示すように、DATA1,DATA
2,DATA3からなる3バイトのデータを1ブロックとし
て、周期T(例えば、T=4ms)のバイトサイクルの通
信が行われ、この1ブロックの通信ブロックT XBに続け
て非通信状態であるブランク区間T BLANKをおき、この
ブランク区間T BLANKにより先頭データである第1バイ
トデータDATA1を検出する。
ンドC OMが上位2ビットによって示され、このコマンド
C OMは、例えば、以下の示すような体系となっている。
信のタイミングでサブコンピュータ1bから通信可能のコ
ードが返信されたとき開始され、各モードに応じ、以下
のように動作する。
を送信すると、サブコンピュータ1bから第1バイト目で
受信した値が返信される。メインコンピュータ1aでは、
第1バイト送信値と第2バイト目でのサブコンピュータ
1bからの返信値との一致をとることにより、第1バイト
送信値がサブコンピュータ1bで正常に受信されたか否か
を確認でき、通信が正常のとき第3バイト送信値を第2
バイト送信値と同一のデータとし、通信が異常のとき第
3バイト送信値を第2バイト送信値の全ビットを反転し
たチェックデータとして送信する。
3バイト受信値との一致をとることにより、第1バイト
から第3バイトまでの受信値が正常か否かを判別でき、
異常の場合には受信データの書込みを中止する。
トまでコマンドC OMを含む同一データを送信し、一方、
サブコンピュータ1bは、第2バイトで読出しデータ(第
1のデータ)を返信し、さらに、この読出しデータの全
ビットを反転した値(第2のデータ)を第3バイトで返
信する。
第2バイト受信値(第1のデータの受信値)と、サブコ
ンピュータ1bからの第3バイト受信値(第2のデータの
受信値)を全ビット反転した値とを比較し、これらのデ
ータの一致をとることによりサブコンピュータ1bから受
信した読出しデータが正常か否かを判別できる。
ンピュータ1a、1bの通信手順を具体的に説明する。
に起動されるメインコンピュータ1aの通信ルーチンであ
り、最初のステップS101は、送信カウンタのカウント値
M CNTによって条件分岐する多岐選択のステップであ
る。すなわち、1バイト毎の通信に対応して0から1,2,
3へとカウントアップされる送信カウンタのカウント値M
CNTに応じ、ステップS101からステップS102,S104,S11
3,S124へと、それぞれ分岐する。
CNTが“0"であるときには、通信のブランク区間T BLANK
であり、上記ステップS101からステップS102へ分岐して
通信のモードを設定し、次いで、ステップS103へ進んで
送信カウンタをカウントアップし(M CNT←M CNT+
1)、ルーチンを抜ける。
信カウンタのカウント値M CNTが“1"で先頭データの送
信の場合には、ステップS101からステップS104へ分岐し
て前回設定したモードを判定し、ベースアドレス設定モ
ードのときステップS104からステップS105へ、ライトモ
ードのときステップS104からステップS106へ、リードモ
ードのときステップS104からステップS107へと分岐す
る。
このベースアドレス設定モードにおいては、ステップS1
05で、コマンドC OMの2ビットを上位として、この上位
2ビットにベースアドレスAD BASEの下位6ビットAD BA
SE/Lを加えた1バイトのデータを送信データT XDATAに
セットし(T XDATA←C OM+AD BASE/L)、ステップS108
へ進む。
に対するアドレス指定の際に予め基準となるアドレスで
あり、ベースアドレスAD BASEの設定以降、1バイト未
満のオフセットアドレスAD OFFSETのみを指定し、実際
の物理アドレスをベースアドレスAD BASEとオフセット
アドレスAD OFFSETとの論理和で指定することにより、
通信バイト数の低減を図るものである。
合、そのアドレス空間64Kバイト(16進数で0000〜FFF
F)の指定は、通常2バイトのデータを要するが、一
旦、上述のベースアドレスAD BASEを設定すれば、以降
は1バイト未満のオフセットアドレス値AD OFFSETによ
る論理アドレスで物理アドレスを指定することができ、
通信バイト数を少なくしてデータ転送の際の効率を向上
することができるのである。
テップS106でコマンドC OMの2ビットにオフセットアド
レスAD OFFSET(6ビット)を加えた1バイトのデータ
を送信データT XDATAにセットして(T XDATA←C OM+AD
OFFSET)ステップS108へ進み、リードモードのときに
は、ステップS107で、同様にコマンドC OMの2ビットに
オフセットアドレスAD OFFSET(6ビット)を加えた1
バイトのデータを送信データT XDATAにセットし(T XDA
TA←C OM+AD OFFSET)、ステップS108へ進む。
08へ進むと、送信データT XDATAを第1バイトデータDAT
A1として(DATA1←T XDATA)RAM12のワークエリアにス
トアし、ステップS109でSCI14を介してサブコンピュー
タ1bに送信するとともに、サブコンピュータ1bから1バ
イトの返信データを受信してステップS110へ進む。
ンピュータ1bからのデータを調べ、このデータの上位2
ビットが“00"のとき、サブコンピュータ1bは通信可能
の状態と判別してステップS111へ進み、送信カウンタを
カウントアップして(M CNT←M CNT+1)ルーチンを抜
ける。
ータの上位2ビットが“11"のときには、サブコンピュ
ータ1bは通信不可と判別してステップS112へ分岐し、送
信カウンタをクリアして(M CNT←0)ルーチンを抜
け、次のサイクルをブランクとして、再び第1バイトか
らのデータ通信を行なう。
ウンタのカウント値M CNTが“2"、すなわち第2バイト
データDATA2の送信のときには、ステップS113でモード
判定を行ない、ベースアドレス設定モードのとき、ステ
ップS113からステップS114へ進んでベースアドレスAD B
ASEの上位バイトAD BASE/Uを送信データT XDATAにセッ
トし(T XDATA←AD BASE/U)、ステップS116へ進む。
記ステップS113からステップS115へ進み、既にアドレス
指定してあるサブコンピュータ1bのメモリに書込むべき
ライトデータW DATAを送信データT XDATAにセットし(T
XDATA←W DATA)、ステップS116へ進む。
テップS116へ進むと、送信データT XDATAを第2バイト
データDATA2として(DATA2←T XDATA)RAM12のワークエ
リアにストアし、ステップS117でサブコンピュータ1bに
送信するとともに、サブコンピュータ1bから1バイトの
返信データを受信してステップS118へ進む。
タ1bから受信したデータR XDATAが、既にサブコンピュ
ータ1bへ送信した第1バイトデータDATA1と一致するか
否かを調べ、R XDATA=DATA1のとき、通信が正常に実行
されたと判定してステップS118からステップS123へジャ
ンプし、上記ステップS118でR XDATA≠DATA1のときに
は、通信が正常に行われず、正しいデータがサブコンピ
ュータ1bにて受信されなかったと判定して上記ステップ
S118からステップS119へ進んでエラーフラグFLAG1をセ
ットし(FLAG1←1)、ステップS123へ進んで送信カウ
ンタをカウントアップし(M CNT←M CNT+1)、ルーチ
ンを抜ける。
イトデータDATA1がメインコンピュータ1aから送信され
ると、同時にサブコンピュータ1bからメインコンピュー
タ1aに対して受信可能か否かを示すコードが返信され、
通信可能の場合、第2バイトデータDATA2がメインコン
ピュータ1aから通信モードに応じて送信される。サブコ
ンピュータ1bは、メインコンピュータ1aから受信した第
1バイトデータDATA1を、メインコンピュータ1aからの
第2バイトデータDATA2の送信タイミングで返信するた
め、メインコンピュータ1aでは、RAM12のワークエリア
にストアした第1バイトデータDATA1とサブコンピュー
タ1bからの受信データR XDATAとが一致するか否かによ
り、通信が正常に実行されたか否かを判別することがで
きるのである。
記ステップS113からステップS120へ進み、コマンドC OM
の2ビットにオフセットアドレスAD OFFSET(6ビッ
ト)を加えた1バイトのデータを送信データT XDATAに
セットし(T XDATA←C OM+AD OFFSET)、ステップS121
でサブコンピュータ1bとの送受信を実行する。
T XDATAは、第1バイトデータDATA1と同じデータを送信
し、先にアドレス指定したメモリの内容をサブコンピュ
ータ1bから受信すると、ステップS122で、この受信デー
タR XDATAを第2バイトデータDATA2としてRAM12のワー
クエリアにストアし(DATA2←R XDATA)、ステップS123
で送信カウンタをカウントアップして(M CNT←M CNT+
1)ルーチンを抜ける。
信カウンタのカウント値M CNTが“3"、すなわち第3バ
イトデータDATA3の送信のときには、ステップS124でモ
ード判定を行ない、ベースアドレス設定モードのとき、
ステップS124からステップS125へ進んでベースアドレス
AD BASEの上位バイトAD BASE/Uを送信データT XDATAに
再びセットして(T XDATA←AD BASE/U)ステップS127へ
進み、ライトモードのときには、ステップS124からステ
ップS126へ進んでライトデータW DATAを送信データT XD
ATAに再びセットし(T XDATA←W DATA)、ステップS127
へ進む。
回、通信が正常に行われたか否かを判別し、FLAG1=0
すなわち通信が正常に実行れたときにはステップS129へ
ジャンプしてサブコンピュータ1bに対する送受信を実行
し、FLAG1=1すなわち通信に異常があったときにはス
テップS127からステップS128へ進んで、送信データT XD
ATAの全ビットを反転し、ステップS129でサブコンピュ
ータ1bに対する送受信を実行する。つまり、第2バイト
までのデータ通信が正常に実行された場合、第3バイト
データDATA3は第2バイトデータDATA2と同一のデータを
送信し、通信が異常の場合、第3バイトデータDATA3は
第2バイトデータDATA2を全ビット反転したデータを送
信するのである。
サブコンピュータ1bから受信したデータR XDATAとサブ
コンピュータ1bに送信した第2バイトデータDATA2とが
一致するか否かにより通信が正常に行われたか否かを判
別する。
は、既に送信した第2バイトデータDATA2と同一のデー
タが返信されるため、上記ステップS130でR XDATA=DAT
A2のときには3バイトのデータの通信が正常に実行され
たと判別でき、上記ステップS130からステップS137へジ
ャンプして送信カウンタをクリアして(M CNT←0)ル
ーチンを抜ける。
通信に異常があるため上記ステップS130からステップS1
31へ進んでエラーフラグFLAG2をセットし(FLAG2←
1)、ステップS137で送信カウンタをクリアして(M CN
T←0)ルーチンを抜ける。
記ステップS124からステップS132へ進んでコマンドC OM
の2ビットにオフセットアドレスAD OFFSET(6ビッ
ト)を加えた1バイトのデータを送信データT XDATAに
セットし(T XDATA←C OM+AD OFFSET)、この送信デー
タT XDATAをステップS133でサブコンピュータ1bに送信
するとともに、サブコンピュータ1bから1バイトの返信
データを受信する。
サブコンピュータ1bから受信したデータR XDATAの全ビ
ットを反転した値▲ ▼が、既にサブコン
ピュータ1bから受信した第2バイトデータDATA2と一致
するか否かを判別する。
信データは、第2バイト目の返信データの全ビットを反
転した値であるため、この第3バイト目の返信データを
受信した値R XDATAの全ビットを反転して元に戻し、第
2バイトデータDATA2と比較することによりデータの有
効性を判別できる。
送受信バッファ40に正規の返信データがセットされない
場合、従来のように単に連続した2つの受信データの一
致によりデータの有効性を判別すると、メインコンピュ
ータ1aから送信したデータ(コマンドC OMの2ビットに
オフセットアドレスAD OFFSETの6ビットを加えたデー
タ)が上記ステップS121およびステップS133でエコーバ
ックされ、データが有効と誤判定されてしまうが、本発
明によれば、サブコンピュータ1bの異常を正しく認識し
てデータの有効性を正確に判別でき、信頼性を大幅に向
上することができるのである。
TA2の場合には、通信が正常に行われているため、上記
ステップS134からステップS135へ進んでサブコンピュー
タ1bから受信したデータR XDATAの全ビットを反転した
値▲ ▼(あるいはすでにRAM22のワーク
エリアにストアしてある第2バイトデータDATA2)を確
定データとしてRAM12のデータエリアにストアし、ステ
ップS137へ進んで送信カウンタをクリアして(M CNT←
0)ルーチンを抜ける。
の場合には、通信に異常があるため、上記ステップS134
あらステップS136へ進んでエラーフラグFLAG2をセット
し(FLAG2←1)、ステップS137で送信カウンタをクリ
アして(M CNT←0)ルーチンを抜ける。
チンでエラーチェックを行い、クリアする。
ータ1aからのデータ受信毎に第2図に示す通信ルーチン
が起動され、まず、ステップS201で受信間隔を時間変数
T Rにセットし(T R←受信間隔)、次いで、この時間変
数T Rと設定値T SETとをステップS202で比較する。
るバイトサイクルの周期T(例えば、T=4ms)よりも
長く、通信ブロックT XB間のブランク区間T BLANKを識
別可能な値(例えば、T SET=6ms)に設定されており、
上記ステップS202で、T R>T SETのときには、受信間隔
が通常のバイトサイクルの周期Tよりも長く、ブランク
区間T BLANKを経て初めてのデータ受信すなち先頭の第
1バイトのデータ受信であると判別でき、ステップS203
で受信カウンタのカウント値S CNTをクリアする(S CNT
←0)。
の送信タイミングでは、後述する受信許可コードSCを返
信してサブコンピュータ1bが通信可能状態か否かをメイ
ンコンピュータ1aに知らせ、通信可能のときメインコン
ピュータ1aとの2バイト目以降のデータ通信が開始され
る。
受信データR XDATAの上位2ビット(R XDATA)B7B6、す
なわちコマンドC OMを解釈し、 (R XDATA)B7B6=11、すなわちベースアドレスモード
を指示するコマンドC OMのときには、上記ステップS204
からステップS205へ進んでベースアドレスモードに設定
してステップS207へ進み、 (R XDATA)B7B6=01、すなわちライトモードを指示す
るコマンドC OMのときには、上記ステップS204からステ
ップS206へ進んでライトモードに設定してステップS207
へ進む。
テップS207へ進むと、受信データR XDATAを第1バイト
目のデータDATA1としてRAM22のワークエリアにストアし
(DATA1←R XDATA)、ステップS208で受信データR XDAT
Aをメインコンピュータ1aへの返信データ(サブコンピ
ュータ1bからの送信データ)T XDATAにセットし(T XDA
TA←R XDATA)、ステップS222へ進んで受信カウンタの
カウント値S CNTをカウントアップし(S CNT←S CNT+
1)、ルーチンを抜ける。
わちリードモードを指示するコマンドC OMのときには、
上記ステップS204からステップS209へ進んでリードモー
ドに設定し、ステップS210でベースアドレスAD BASEと
オフセットアドレスAD OFFSETにより定まるRAM22の物理
アドレスからメモリの内容(AD BASE+AD OFFSET)を読
出し、このメモリの内容(AD BASE+AD OFFSET)をメイ
ンコンピュータ1aへの返信データT XDATAにセットし(T
XDATA←(AD BASE+AD OFFSET))、同様に、ステップ
S222で受信カウンタS CNTをカウントアップして(S CNT
←S CNT+1)ルーチンを抜ける。
返信データT XDATAは、次のメインコンピュータ1aから
の第2バイトのデータ送信のタイミングで返信され、ベ
ースアドレスモード及びライトモードのときには、メイ
ンコンピュータ1aからの第1バイトのデータDATA1と同
じチェックデータが返信され、また、リードモードのと
きには、ベースアドレスAD BASEとオフセットアドレスA
D OFFSETによって指定されたRAM22の内容(AD BASE+AD
OFFSET)が返信される。
バイト目以降のデータ受信であるときには、上記ステッ
プS202からステップS211へ分岐し、受信カウンタのカウ
ント値S CNTから第2バイトのデータ受信か第3バイト
のデータ受信かを判別する。
ータ受信のときには、上記ステップS211からステップS2
12へ進んでモード判定を行ない、ベースアドレスモード
及びライトモードのときには、ステップS213で受信デー
タR XDATAを第2バイトのデータDATA2としてRAM22のワ
ークアリアにストアする(DATA2←R XDATA)。
回受信した第1バイトのデータDATA1をメインコンピュ
ータ1aへの返信データT XDATAにセットし(T XDATA←DA
TA1)、ステップS222で受信カウンタをカウントアップ
して(S CNT←S CNT+1)ルーチンを抜ける。
記ステップS212からステップS215へ進み、ベースアドレ
スAD BASEとオフセットアドレスAD OFFSETにより定まる
RAM22の物理アドレスのメモリの内容(AD BASE+AD OFF
SET)を全ビット反転し、この全ビットを反転した値
(▲ ▼)をメイン
コンピュータ1aへの返信データT XDATAにセットし(T X
DATA←(▲
▼))、同様に、ステップS222で受信カウンタS CNTを
カウントアップして(S CNT←S CNT+1)ルーチンを抜
ける。
バイトのデータ通信であり、上記ステップS211からステ
ップS216へ進んでモード判定を行ない、リードモードの
とき、上記ステップS216からステップS221へジャンプ
し、ベースアドレスモードのとき、ステップS217でメイ
ンコンピュータ1aからの受信データR XDATAとRAM22にス
トアした第2バイトのデータDATA2とを比較する。
データは、通信が正常に行われている場合、第2バイト
と第3バイトのデータは同じデータであり、通信に異常
がある場合、第3バイトのデータは第2バイトのデータ
を全ビット反転したデータであるため、上記ステップS2
17でR XDATA≠DATA2のときには、通信に際して異常があ
るため上記ステップS217からステップS221へジャンプ
し、R XDATA=DATA2のときには通信は正常であるため、
上記ステップS217からステップS218へ進んで第2バイト
データDATA2を上位バイトにセットするとともに、第1
バイトのデータDATA1の下位6ビットを上位シフトして
下位2ビットを“00"とするバイトデータ(DATA1)00を
下位バイトにセットし、ベースアドレスAD BASEを設定
して(AD BASE←DATA2+(DATA1)00)ステップS221へ
進む。
記ステップS216からステップS219へ進み、同様に、メイ
ンコンピュータ1aからの受信データR XDATAとRAM22にス
トアした第2バイトのデータDATA2とを比較して、R XDA
TA≠DATA2のとき、上記ステップS219からステップS221
へジャンプし、R XDATA=DATA2のとき、上記ステップS2
19からステップS220へ進んで、メインコンピュータ1aか
らの受信データR XDATAを確定データとして、ベースア
ドレスAD BASEとオフセットアドレスAD OFFSETにより定
まるRAM22の物理アドレスに書込み((AD BASE+AD OFF
SET)←R XDATA)、ステップS221へ進む。
の各ステップからステップS221へ進むと、通信可能の場
合上位2ビットを“00"、通信不可の場合上位2ビット
を“11"とする受信許可コードSCをメインコンピュータ1
aへの返信データT XDATAにセットし、ステップS222で受
信カウンタS CNTをカウントアップして(S CNT←S CNT
+1)ルーチンを抜ける。
て起動される次の通信ブロックT XBにおいて、先頭バイ
トのデータ送信タイミングでメインコンピュータ1aに返
信される。
タと第2のコンピュータとの間でシリアルチャンネルを
介して双方向通信を行う際に、第2のコンピュータへデ
ータ読み出しのコマンドを含むデータを送信すると、こ
のデータの内容に応じて第2のコンピュータでメモリか
ら所定ビット数の第1のデータが読み出され、この第1
のデータが、第1のコンピュータから第2のコンピュー
タへ同じデータが再度送信されたときに返信されて第1
のコンピュータで保持される。そして、第1のコンピュ
ータから第2のコンピュータへ、さらに同じデータを送
信すると、第1のデータの全ビットを反転した第2のデ
ータが第2のコンピュータから第1のコンピュータへ送
信され、この第2のデータが第1のコンピュータで全ビ
ット反転されて第1のデータと比較され、両データが一
致するとき第1のデータの受信値が有効と判断され、相
違するとき異常と判断されるため、第2のコンピュータ
に異常が生じ、データが第1のコンピュータへエコーバ
ックされたとしても、エコーバックされたデータが第1
のコンピュータで全ビットが反転されて元のデータと比
較されるため両データが不一致となり、確実に第2のコ
ンピュータに生じた異常によるデータを認識することが
できる。
2のコンピュータから第1のコンピュータへ返信される
返信データの有効性を正確かつ確実に判別して双方向通
信の信頼性を向上することができる。
の付加回路を必要とせず、ハードウェア構成を変更せず
に対処することができるため、コストアップを招くこと
がない。
ュータの通信手順を示すフローチャート、第2図はサブ
コンピュータの通信手順を示すフローチャート、第3図
は制御装置の回路ブロック図、第4図は送受信バッファ
を示す説明図、第5図はクロック同期通信のタイムチャ
ート、第6図は通信ブロックの構成を示す説明図であ
る。 1a…メインコンピュータ 1b…サブコンピュータ T XDATA…送信データ R XDATA…受信データ
Claims (1)
- 【請求項1】車輌に搭載された第1のコンピュータと第
2のコンピュータとをシリアルチャンネルで結合し、双
方向通信を行う車載コンピュータ間のデータ通信方法に
おいて、 上記第1のコンピュータでは、上記第2のコンピュータ
へデータ読み出しのコマンドを含むデータを送信し、次
に、上記第2のコンピュータへ同じデータを送信したと
きに上記第2のコンピュータから返信された所定のビッ
ト数からなる第1のデータを保持した後、さらに、上記
第2のコンピュータへ同じデータを送信し、 上記第2のコンピュータでは、上記第1のコンピュータ
からデータ読み出しのコマンドを含むデータを最初に受
信したとき、このデータの内容に応じてメモリから上記
第1のデータを読み出し、次に、上記第1のコンピュー
タから同じデータを受信したとき、上記第1のデータを
上記第1のコンピュータに送信し、その後、さらに上記
第1のコンピュータから同じデータを受信したときに
は、上記第1のデータの全ビットを反転した第2のデー
タを上記第1のコンピュータに送信し、 上記第1のコンピュータにおいて、上記第2のコンピュ
ータから上記第2のデータを受信した後、受信した上記
第2のデータを全ビット反転し、この反転したデータと
保持した上記第1のデータとを比較して、両データが一
致するとき、上記第1のデータの受信値を有効と判断
し、両データが相違するとき、異常と判断することを特
徴とする車載コンピュータ間のデータ通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2298449A JPH0722281B2 (ja) | 1990-11-02 | 1990-11-02 | 車載コンピュータ間のデータ通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2298449A JPH0722281B2 (ja) | 1990-11-02 | 1990-11-02 | 車載コンピュータ間のデータ通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04170829A JPH04170829A (ja) | 1992-06-18 |
JPH0722281B2 true JPH0722281B2 (ja) | 1995-03-08 |
Family
ID=17859856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2298449A Expired - Lifetime JPH0722281B2 (ja) | 1990-11-02 | 1990-11-02 | 車載コンピュータ間のデータ通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0722281B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006261948A (ja) * | 2005-03-16 | 2006-09-28 | Toyota Motor Corp | 通信システム、送信装置及び受信装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007285745A (ja) * | 2006-04-13 | 2007-11-01 | Matsushita Electric Ind Co Ltd | 角速度センサ |
JP6133622B2 (ja) | 2013-02-27 | 2017-05-24 | 日立オートモティブシステムズ株式会社 | 車両制御装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63290033A (ja) * | 1987-05-21 | 1988-11-28 | Nec Corp | デ−タ送受信回路 |
-
1990
- 1990-11-02 JP JP2298449A patent/JPH0722281B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006261948A (ja) * | 2005-03-16 | 2006-09-28 | Toyota Motor Corp | 通信システム、送信装置及び受信装置 |
Also Published As
Publication number | Publication date |
---|---|
JPH04170829A (ja) | 1992-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6237113B1 (en) | Method of initializing a control unit connected to a diagnostic bus | |
US9042274B2 (en) | Serial peripheral interface having a reduced number of connecting lines | |
US6898490B2 (en) | Vehicle controller for controlling rewriting data in a nonvolatile memory | |
US20030184447A1 (en) | Method for transmitting data from at lest one sensor to a control unit | |
US6690733B1 (en) | Method for data transmission | |
US5367644A (en) | Communication system | |
KR100362236B1 (ko) | 다중데이타통신시스템 | |
JPH0722281B2 (ja) | 車載コンピュータ間のデータ通信方法 | |
US5398238A (en) | Data communication system | |
EP0620665B1 (en) | Data transmission system for automotive vehicle | |
US5696776A (en) | Data transmission method in a real-time data processing system | |
EP0085973B1 (en) | Information transmission system | |
JPH0744516B2 (ja) | 車載コンピュータ間のデータ通信方法 | |
US6499067B1 (en) | Serial communication apparatus and serial communication system | |
JPH09293028A (ja) | 半導体記憶装置 | |
WO1996037984A1 (en) | A digital data bus system including arbitration | |
JP3442633B2 (ja) | 車両多重伝送装置 | |
CN1107956C (zh) | 通过传输包的叠加减少接口等待时间的方法和设备 | |
US6760854B2 (en) | Method and apparatus for handling a framing error at a serial interface by forcing invalid commands to be read upon determine the command is invalid | |
US7228449B2 (en) | Method and device for transmitting a selection signal from a processor to a peripheral by violating a symmetry of transmission of a data signal | |
JP3442632B2 (ja) | 車両多重伝送装置 | |
CN214585956U (zh) | 一种控制电路及激光雷达 | |
KR20110006980A (ko) | 메인 mcu와 서브 mcu간 통신의 폭주 검출 방법 | |
KR100245708B1 (ko) | 이모빌라이져 시스템 | |
JP2580146B2 (ja) | 車両用通信制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080308 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090308 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090308 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100308 Year of fee payment: 15 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100308 Year of fee payment: 15 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110308 Year of fee payment: 16 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110308 Year of fee payment: 16 |