+

JP2006268107A - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP2006268107A
JP2006268107A JP2005081661A JP2005081661A JP2006268107A JP 2006268107 A JP2006268107 A JP 2006268107A JP 2005081661 A JP2005081661 A JP 2005081661A JP 2005081661 A JP2005081661 A JP 2005081661A JP 2006268107 A JP2006268107 A JP 2006268107A
Authority
JP
Japan
Prior art keywords
microcomputer
data
received
communication circuit
built
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.)
Pending
Application number
JP2005081661A
Other languages
English (en)
Inventor
Kazuya Okamoto
和也 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2005081661A priority Critical patent/JP2006268107A/ja
Priority to DE102006012969A priority patent/DE102006012969A1/de
Priority to US11/385,697 priority patent/US7684926B2/en
Publication of JP2006268107A publication Critical patent/JP2006268107A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Microcomputers (AREA)

Abstract

【課題】 複数マイコンが直列接続された電子制御装置において、先頭マイコン以下の後続マイコンとして、受信処理能力の低い安価なマイコンを用いても、外部装置からの入力データを受け付ける先頭マイコンから、後続マイコンに書込対象データを転送し、後続マイコンのROMに記録されたデータを正常に更新できるようにする。
【解決手段】 外部装置に接続される第一マイコンは、後続の第二マイコンに対する書込対象データを、外部装置から受信すると、これを変換した後、自身内蔵のRAMに保存して(S920)、一旦、書込対象データ全てをRAMに記録する。その後、第一マイコンは、第二マイコンに対して書換コマンドを入力すると共に(S955)、第二マイコンからハンドシェイク信号を受信する度に、RAMに蓄積した書込対象データを、第二マイコンが一度に受信可能なNMバイト分ずつ、第二マイコンに送信する(S965)。
【選択図】 図12

Description

本発明は、データ書換可能な不揮発性メモリを内蔵する複数のマイクロコンピュータを備え、各マイクロコンピュータが、書込対象のデータを受信すると、不揮発性メモリに、受信した書込対象のデータを書き込んで、不揮発性メモリ内のデータを更新する電子制御装置に関する。
従来より、電子制御装置としては、エンジン等の車両各部を制御するための電子制御装置が知られている。また、この種の電子制御装置としては、エンジン等の制御対象を制御するために、複数のマイクロコンピュータを備えたものが知られている(例えば、特許文献1参照)。
上記の電子制御装置では、各マイクロコンピュータがデータ書換可能な不揮発性メモリに制御プログラムや制御データを備え、外部から書込対象のデータ(制御プログラムや制御データ)を受信すると、これを、不揮発性メモリに書き込んで、不揮発性メモリ内のデータを更新する。また、各マイクロコンピュータは、直列接続されており、内部通信ラインに接続されたマイクロコンピュータは、外部通信ラインに接続されたマイクロコンピュータを通じて、外部装置から書込対象のデータを受信し、これを不揮発性メモリに書き込んで、データ更新する。
その他、電子制御装置としては、内部通信ラインに接続された電子制御装置からの受信信号を、外部装置の通信プロトコルに適合する信号に変換して、外部通信ラインに接続された外部装置に出力するものが知られている(例えば、特許文献2参照)。
特開平9−160766号公報 特開平7−069093号公報
ところで、特許文献1記載の電子制御装置では、外部通信ラインに接続されたマイクロコンピュータが、内部通信ラインに接続されたマイクロコンピュータに対し、外部装置から送信された書込対象のデータを転送することによって、内部通信ラインに接続されたマイクロコンピュータでのデータ更新が実現されているが、上記電子制御装置では、単に書込対象のデータを転送する程度であるので、転送先のマイクロコンピュータの受信処理能力が、送信元装置の送信速度に対して劣る場合には、データ転送を実現することができないといった問題があった。
即ち、外部装置の通信プロトコルと、転送先マイクロコンピュータの通信プロトコルとが異なる程度であれば、外部通信ラインに接続されたマイクロコンピュータに、プロトコル変換機能をもたせることで、データ転送を実現することができるが、転送先のマイクロコンピュータの受信処理能力が送信元装置の送信速度に対して劣る場合には、単位時間当たりに、外部装置から送信されるデータ量に対して、転送先のマイクロコンピュータが受信可能なデータ量が少なすぎるために、外部通信ラインに接続された転送元のマイクロコンピュータにおいて、オーバーフローが発生してしまうのである。
従って、従来では、転送先マイクロコンピュータを、受信処理能力の高いものにしなければならず、転送先マイクロコンピュータとして高価なマイクロコンピュータを用いなければならないといった問題があった。
その他、転送先マイクロコンピュータが、データ変換なしに、外部装置の送信データを解釈することができない場合、従来では、転送先マイクロコンピュータで、外部装置からの受信データを変換していたが、この方法では、データ変換の処理負荷が原因で、転送先マイクロコンピュータに、高価なマイクロコンピュータを用いなければならない可能性があった。
本発明は、こうした問題に鑑みなされたものであり、内部通信ラインに接続されたマイクロコンピュータでのデータ更新を、外部通信ラインに接続されたマイクロコンピュータからのデータ転送によって実現する電子制御装置において、内部通信ラインに接続するマイクロコンピュータとして、安価なマイクロコンピュータを採用することが可能な技術を提供することを目的とする。
かかる目的を達成するためになされた請求項1記載の電子制御装置は、第一及び第二のマイクロコンピュータを備える。各マイクロコンピュータは、データ書換可能な不揮発性メモリを内蔵し、不揮発性メモリが記憶するデータ(プログラム等)に基づく処理を実行する。また、各マイクロコンピュータは、通信ラインに接続された通信回路を内蔵し、この通信回路を介して、自身宛の書込対象のデータを受信すると、受信した書込対象のデータを、内蔵の不揮発性メモリに書き込み、不揮発性メモリが記憶するデータを更新する。
第一のマイクロコンピュータは、内蔵の通信回路として、外部装置に繋がる外部通信ライン及び第二のマイクロコンピュータに繋がる内部通信ラインに接続された通信回路を有し、この通信回路が受信したデータを、内蔵の揮発性メモリに、蓄積手段にて蓄積する。
また、第一のマイクロコンピュータは、内蔵の通信回路が外部装置から第二のマイクロコンピュータ宛のデータを受信すると、転送手段によって、揮発性メモリに蓄積された第二のマイクロコンピュータ宛のデータを、第二のマイクロコンピュータの受信処理能力に合わせ、内蔵の通信回路を介し、第二のマイクロコンピュータに送信する。
その他、第二のマイクロコンピュータは、内蔵の通信回路として、第一のマイクロコンピュータに繋がる内部通信ラインに接続された通信回路を有し、この通信回路を介して、外部装置から送信された自身宛の書込対象のデータを、第一のマイクロコンピュータから受信する。そして、この書込対象のデータを、内蔵の不揮発性メモリに書き込み、不揮発性メモリが記憶するデータを更新する。
この電子制御装置によれば、第一のマイクロコンピュータが、外部装置から受信したデータを、揮発性メモリに一旦蓄積するので、第二のマイクロコンピュータの受信処理能力が低く、第一のマイクロコンピュータが、外部装置から受信した第二のマイクロコンピュータ宛のデータを、外部装置の送信速度に合わせて、第二のマイクロコンピュータに送信することができない場合であっても、オーバーフローが発生するのを防止することができる。
また、この電子制御装置によれば、第一のマイクロコンピュータが、第二のマイクロコンピュータの受信処理能力に合わせて、第二のマイクロコンピュータ宛のデータを送信するので、第二のマイクロコンピュータとして、受信処理能力の低いマイクロコンピュータを用いても、第二のマイクロコンピュータに、確実にデータを転送することができ、外部通信ラインに接続されたマイクロコンピュータからのデータ転送による手法で、受信処理能力の低いマイクロコンピュータにおける不揮発性メモリ内のデータ更新を、実現することができる。従って、この発明によれば、安価なマイクロコンピュータを用いて電子制御装置を構成することができる。
尚、第二のマイクロコンピュータの受信処理能力に合わせて、データを転送する方法としては、時間当たりの送信量を調整する方法や、一度に送信するデータの量を、第二のマイクロコンピュータの受信処理能力に適合させる方法があるが、第二のマイクロコンピュータが、一度に所定量のデータを受信して、これを不揮発性メモリに書き込む構成にされている場合には、第二のマイクロコンピュータの受信処理能力に合わせて、揮発性メモリに蓄積された第二のマイクロコンピュータ宛のデータを分割送信するように、転送手段を構成するとよい(請求項2)。
その他、第二のマイクロコンピュータが、受信可能な状態となる度にハンドシェイク信号を送信する構成にされている場合には、揮発性メモリに蓄積された第二のマイクロコンピュータ宛のデータを、第二のマイクロコンピュータからハンドシェイク信号を受信する度に、第二のマイクロコンピュータが受信可能な所定量ずつ、第二のマイクロコンピュータに送信するように、転送手段を構成すればよい(請求項3)。
本発明では、第一のマイクロコンピュータが、外部装置からの受信データを揮発性メモリに蓄積するので、このように転送手段を構成すれば、外部装置と第一のマイクロコンピュータとの間では、オーバーフローの心配なく、高速なデータ通信を実現でき、第二のマイクロコンピュータには、送信データを確実に受信させることができる。従って、データ転送の失敗によって、誤ったデータが、第二のマイクロコンピュータにおいて、不揮発性メモリに書き込まれるのを防止することができる。
また、第二のマイクロコンピュータが、データ変換なしに、外部装置の送信データを解釈することができない場合、第二のマイクロコンピュータでは、外部装置からの受信データを変換しなければならず、データ変換にかかる処理負荷をカバーするために、第二のマイクロコンピュータとして、高性能なマイクロコンピュータを用いなければならなくなる可能性がある。
従って、上記の場合には、第一のマイクロコンピュータに、内蔵の通信回路が外部装置から受信したデータを、第二のマイクロコンピュータが解釈可能なデータに変換するデータ変換手段を設けるとよい。このように構成された請求項4記載の電子制御装置では、転送手段が、外部装置から受信した第二のマイクロコンピュータ宛のデータについて、データ変換手段による変換後のデータを、第二のマイクロコンピュータに送信する。
変換後のデータを、第二のマイクロコンピュータに送信するように、第一のマイクロコンピュータを構成すれば、結果として、第二のマイクロコンピュータに、データ変換機能を設けずに済み、安価なマイクロコンピュータを、第二のマイクロコンピュータとして用いて、上記の電子制御装置を構成することができる。
尚、データ変換手段は、例えば、揮発性メモリに格納されたデータを変換し、変換後のデータを、揮発性メモリに格納する構成とすることができる。その他、転送手段は、揮発性メモリに蓄積された変換後のデータを、第二のマイクロコンピュータに送信する構成とすることができる。
また、データ更新の際には、不揮発性メモリ内の領域全体を更新してもよいが、一部の領域のみを更新できるように、電子制御装置を構成すると、大変便利である。
請求項5記載の電子制御装置における第二のマイクロコンピュータは、第一のマイクロコンピュータを介して、外部装置から書込先のメモリアドレスを表すアドレスデータを受信すると、そのアドレスデータと共に、第一のマイクロコンピュータを介して、外部装置から受信した自身宛の書込対象のデータを、内蔵の不揮発性メモリにおけるアドレスデータが示すメモリアドレスに対応する領域に、書き込む構成にされている。このように第二のマイクロコンピュータを構成すれば、第二のマイクロコンピュータにおいて、不揮発性メモリが記憶する任意のデータを更新することができ、データ更新時間の短縮を図ることができる。
その他、内部通信ラインに接続された第二のマイクロコンピュータにおけるデータ更新を、外部通信ラインに接続された第一のマイクロコンピュータからのデータ転送によって実現する電子制御装置においては、第二のマイクロコンピュータにおけるデータ更新が正常に行われたか否かを、外部装置で直接把握することは困難であることから、上記の電子制御装置は、請求項6記載のように構成されるとよい。
即ち、第一のマイクロコンピュータには、第二のマイクロコンピュータが第一のマイクロコンピュータから受信した書込対象のデータを、内蔵の通信回路を介して、第二のマイクロコンピュータから取得する取得手段と、取得手段が取得したデータと、外部装置から受信した上記書込対象のデータとを比較する比較手段と、比較手段の比較結果を、内蔵の通信回路を介して、外部装置に送信する比較結果通知手段と、を設けるとよい。
この電子制御装置を用いれば、第一のマイクロコンピュータから第二のマイクロコンピュータへのデータ転送過程でエラーが生じたか否かを、外部装置にて把握することができる。従って、本発明によれば、第二のマイクロコンピュータにて、確実に、正確なデータ更新を実現することができる。
また、外部装置にて、データの転送状況を把握することができるようにすると、データ転送後の処理を迅速に行うことができると共に、外部装置を介して、ユーザに対しデータ転送の完了有無を通知することができるので、上記の電子制御装置は、請求項7記載のように構成にされるとよい。
請求項7記載の電子制御装置は、第一のマイクロコンピュータが、外部装置から、内蔵の通信回路を介して、転送状況の通知を指示するコマンドを受信すると、転送手段の動作状況を表すデータを、内蔵の通信回路を介して、外部装置に送信するステータス通知手段を備える。この電子制御装置を用いれば、外部装置にて、転送手段の動作状況を把握することができるので、後の処理を外部装置にて迅速に実行することができると共に、外部装置を介してユーザに対し、転送状況を通知することができる。
以下、本発明の実施例について、図面と共に説明する。図1は、本発明が適用された電子制御装置1の構成を表す説明図である。尚、電子制御装置1としては、車両用の電子制御装置であって、エンジン、ブレーキ、トランスミッション、サスペンション等を制御対象とする電子制御装置を挙げることができるが、本発明は、制御対象について限定されず、各種電子制御装置に適用することができるので、以下では、制御対象について、特に言及せずに説明する。また、本発明は、以下に説明する実施例になんら限定されるものではなく、本発明を逸脱しない範囲において種々の態様で実施しうることはいうまでもない。
図1に示すように、本実施例の電子制御装置1は、制御対象を制御するためのマイクロコンピュータ(以下、単に「マイコン」と称する)を、複数備える。具体的に、電子制御装置1は、上記複数のマイコンとして、第一マイコン10及び第二マイコン30を備え、更に、ROM書換装置50のコネクタ(図示せず)に接続されるコネクタ3と、コネクタ3から第一マイコン10に繋がる外部通信ライン5と、第一マイコン10と第二マイコン30とを結ぶ内部通信ライン6と、制御対象に接続され、第一マイコン10又は第二マイコン30からの制御信号を受けて、制御対象を駆動する入出力回路8,9とを備える。
第一マイコン10は、外部通信ライン5に接続されたシリアル通信用の通信回路11と、内部通信ライン6に接続されたシリアル通信用の通信回路12と、プログラムに従って動作するMPU(マイクロ・プロセッサ・ユニット)13と、MPU13での演算処理に必要なデータ(プログラムを含む)を記憶する不揮発性メモリとしてのROM15と、MPU13の演算結果等を一時的に記憶する揮発性メモリとしてのRAM17と、入出力回路8との間で、信号のやりとりを行うI/Oポート19と、を備える。
一方、第二マイコン30は、内部通信ライン6に接続されたシリアル通信用の通信回路31と、プログラムに従って動作するMPU33と、MPU33での演算処理に必要なデータ(プログラムを含む)を記憶する不揮発性メモリとしてのROM35と、MPU33の演算結果等を一時的に記憶する揮発性メモリとしてのRAM37と、入出力回路9との間で、信号のやりとりを行うI/Oポート39と、を備える。
第一マイコン10及び第二マイコン30が内蔵するROM15,35としては、電気的にデータの消去及び書込(即ち、書換)が可能なメモリ(フラッシュメモリ)が採用されている。また、ROM15,35は、データの消去及び書込が可能な書換可能領域と、データの消去及び書込が不可能なマスク領域と、を有する。
具体的に、各ROM15,35の書換可能領域には、第一マイコン10及び第二マイコン30が、制御対象を制御するために必要な演算処理を、自身内蔵のMPU13,33にて実行するための制御プログラム(メイン制御プログラム)が記憶されている。また、マスク領域には、電源投入時に第一マイコン10及び第二マイコン30が、自身内蔵のMPU13,33にて実行するブートプログラムと、第一マイコン10及び第二マイコン30が、自身内蔵のROM15,35における書換可能領域内に記憶されたデータ(メイン制御プログラム等)を更新したり、書換可能領域に新規データを追加するための書換制御プログラムと、が記憶されている。
図2(a)は、第一マイコン10のROM15に記憶されたデータを書き換える際に、ROM書換装置50が、第一マイコン10に入力するコマンド及びデータを示したラダーチャートである。本実施例では、ROM書換装置50から消去コマンド及びアドレスデータを送信すると、それを受信した第一マイコン10が、MPU13にて実行する書換制御プログラムによって、ROM15における上記アドレスデータに従う領域内のデータを消去し、その領域をデータ書込可能な状態にする。
また、ROM書換装置50は、消去コマンド及びアドレスデータの送信後、書換コマンド及び書込対象データを送信する構成にされており、第一マイコン10は、この書換コマンドを受信すると、その後、送信されてくる書込対象データを、上記データ消去によってデータ書込可能な状態となったROM15内の領域に書き込み、ROM15が記憶するデータを更新する。
また、ROM書換装置50は、書換コマンド及び書込対象データの送信後、ROM15に書き込まれたデータが、送信データと一致するか否かを確認するために、比較コマンド及び、上記書込対象データと同一のデータである比較対象データを送信する。
第一マイコン10は、この比較コマンドを受信すると、その後、送信されてくる比較対象データを受信して、その比較対象データと、ROM15に書き込まれたデータとを比較し、その比較結果をROM書換装置50に送信する。ROM書換装置50は、受信した比較結果を、ユーザに報知するための報知手段を備え(図示せず)、この報知手段を通じて、ユーザに比較結果を通知し、比較対象データと、ROM15に書き込まれたデータとが一致しない場合に、再度の処理を促す。
また、図2(b)は、第二マイコン30のROM35に記憶されたデータを書き換える際に、第一マイコン10が行う処理を示したラダーチャートである。第一マイコン10は、ROM書換装置50から書換先選択情報を受信すると、書換先選択情報が書換先として第二マイコン30を示しているか否かを判断し、第二マイコン30ではなく第一マイコン10を示している場合には、上述のようにして(図2(a)参照)、ROM15内のデータ更新を実現するが、第二マイコン30を示している場合には、図2(b)に示すように、ROM書換装置50からの入力コマンド及びデータを、第二マイコン30に転送する。第二マイコン30は、第一マイコン10から転送されてきたコマンド及びデータに基づき、上述した第一マイコン10と同様の手法で、ROM35内のデータ更新を実現する。
但し、本実施例では、電子制御装置1を安価に構成するために、第二マイコン30として受信処理能力の低い安価なマイコンを用いる。従って、ROM書換装置50と第一マイコン10との間で、一度に送受信可能なデータ量Nに対して、第一マイコン10と第二マイコン30との間で、一度に送受信可能なデータ量NMが小さくなる。
また、データ量NMが、ROM書換装置50から送信されてくる書込対象データの量DSよりも小さいと、第一マイコン10において、ROM書換装置50から送信されてきた書込対象データを、単に転送するだけでは、第二マイコン30において、書込対象データを正常に受信処理することができず、正常にROM35内のデータ更新を実現することができなくなる。
そこで、本実施例では、第一マイコン10において、ROM書換装置50から送信されてきた書込対象データを、単に送信するのではなく、これを、第二マイコン30が一度に受信可能なNMバイト分のデータ毎に、分割して送信する。また、データを分割して送信するために、通信回路11が受信したデータを、一旦、RAM17に蓄積する。
以下では、このように構成された電子制御装置1における第一マイコン10及び第二マイコン30の動作について説明する。図3は、第一マイコン10及び第二マイコン30が実行するデータ受信処理を表すフローチャートである。第一マイコン10及び第二マイコン30は、受信準備が整う度にデータ受信処理を開始し、1回分の受信動作を行う。
第一マイコン10及び第二マイコン30は、データ受信処理を開始すると、自身内蔵の通信回路11,12,31がデータを受信する度に、S101でYesと判断し、通信回路11,12,31が内蔵するバッファから受信データを取り出し、これを自身内蔵のRAM17,37に蓄積する(S103)。このような動作を、全データの受信が完了するまで繰返し、全データの受信が完了すると(S105でYes)、受信動作を終了する。
尚、第一マイコン10では、1度に受信可能なデータ量がNバイトであるので、Nバイト分のデータを受信すると(S105でYes)、受信動作を終了する。また、第二マイコン30では、1度に受信可能なデータ量がNMバイトであるので、NMバイト分のデータを受信すると(S105でYes)、受信動作を終了する。以下では、原則的に、第一マイコン10及び第二マイコン30におけるデータ受信の際、上述した受信動作が行われていることとする。
その他、第二マイコン30は、第一マイコン10からのデータを受信するための準備として、第一マイコン10からのデータを受信可能な状態になる度に、ハンドシェイク信号を、第一マイコン10に入力する。図4は、第二マイコン30が繰返し実行する通信制御処理を表すフローチャートである。
第二マイコン30は、通信制御処理を開始すると、ハンドシェイク信号を送信し(S111)、その後、第一マイコン10から受信したデータについての受信後処理が終了して、第一マイコン10からデータ受信可能な状態となるまで(即ち、受信データがRAM37から処理されるまで)待機し(S113でNo)、受信後処理が終了して、第一マイコン10からのデータを受信可能な状態となると(S113でYes)、S111に移行し、第一マイコン10にハンドシェイク信号を送信する。
続いて、第一マイコン10が、電源投入後にMPU13にて実行するブートプログラムにより実現される起動処理について説明する。図5は、第一マイコン10が実行する起動処理を表すフローチャートである。
起動処理を開始すると、第一マイコン10は、ROM15が記憶するメイン制御プログラムが正当なプログラムであるか否か等の初期チェックを実行し(S210)、チェック結果がNGである場合には(S220でNo)、S225に移行して、エラー処理を実行した後に、当該起動処理を終了する。エラー処理としては、例えば、コネクタ3に接続された外部装置(ROM書換装置50や、故障診断装置等)との通信により、故障診断したり、ROM15のデータ更新に係る処理を実行する処理等が挙げられる。
一方、チェック結果がOKである場合には(S220でYes)、コネクタ3にROM書換装置50等の外部装置が接続されているか否かを判断し(S230)、外部装置が接続されていないと判断すると(S230でNo)、ROM15が記憶するメイン制御プログラムを読み出して、このプログラムに従い制御対象を制御するためのメイン制御処理を実行する(S240)。そして、一通りの処理を終えると、再びコネクタ3に外部装置が接続されているか否かを判断し(S230)、外部装置が接続されている場合には、通信回路11を介して、外部装置と通信し、外部装置からコマンドを受信する(S250)。
そして、受信コマンドが、書換モードへの移行を指示するコマンドであると、S260でYesと判断して、ROM15に記憶されている書換制御プログラムを読み出し、このプログラムに従い図6に示す書換制御処理を実行する(S270)。その後、当該起動処理を終了する。一方、受信コマンドが、書換モードへの移行を指示するコマンド以外のコマンドであると、S260でNoと判断して、受信コマンドに対応する処理を実行する(S280)。その後、当該起動処理を終了する。
図6は、第一マイコン10が、MPU13にて実行する書換制御処理を表すフローチャートである。
書換制御処理を開始すると、第一マイコン10は、第二マイコン30に対して書換モードへの移行を指示する信号を入力して(S310)、第二マイコン30を書換モードに移行させる。その後、ROM書換装置50から書換先選択情報を受信する(S320)。
書換先選択情報は、ROMのデータ更新を行う対象マイコンの識別情報を含み、第一マイコン10は、書換先選択情報の受信後、書換先選択情報が第一マイコン10(自身)を示しているか否かを判断する(S330)。そして、書換先選択情報が、第一マイコン10(自身)を示している場合には(S330でYes)、自身内蔵のROM15内のデータを更新するための自己書換処理(図8参照)を実行し(S340)、データ更新が終了すると、ROM書換装置50との通信を終了するための手続を実行し(S360)、その後、当該書換制御処理を終了する。
一方、書換先選択情報が、第二マイコン30を示している場合には(S330でNo)、ROM書換装置50からの入力コマンド及びデータを、第二マイコン30に転送するためのGW(ゲートウェイ)通信処理(図9参照)を実行する(S350)。その後、第二マイコン30でのデータ更新が終了すると、ROM書換装置50との通信を終了するための手続を実行し(S360)、当該書換制御処理を終了する。
次に、第二マイコン30が、電源投入後、MPU33にて実行するブートプログラムにより実現される起動処理について説明する。図7は、第二マイコン30が実行する起動処理を表すフローチャートである。
起動処理を開始すると、第二マイコン30は、ROM35が記憶するメイン制御プログラムが正当なプログラムであるか否か等の初期チェックを実行し(S410)、チェック結果がNGである場合には(S420でNo)、S425にて、エラー処理を実行した後、当該起動処理を終了する。
一方、チェック結果がOKである場合には(S420でYes)、第一マイコン10から、書換モードへの移行を指示する信号が入力されているか否かを判断し(S430)、上記信号が入力されていない場合には(S430でNo)、ROM35が記憶するメイン制御プログラムを読み出して、このプログラムに従い制御対象を制御するためのメイン制御処理を実行する(S440)。そして、一通りの処理を終えると、再び、上記信号が入力されているか否かを判断し(S430)、上記信号が入力されている場合には(S430でYes)、ROM35に記憶されている書換制御プログラムを読み出して、このプログラムに従い図15に示す書換制御処理を実行する(S450)。その後、当該起動処理を終了する。
次に、第一マイコン10がS340で実行する自己書換処理について説明する。図8は、第一マイコン10が、MPU13にて実行する自己書換処理を表すフローチャートである。
自己書換処理を実行すると、第一マイコン10は、まず、通信に伴う初期処理を実行し(S510)、その後、ROM書換装置50から、通信回路11を介して、指定領域を消去せよとの消去コマンドを受信するまで待機し(S520)、消去コマンドを受信すると(S520でYes)、その後ROM書換装置50から送信されてくるアドレスデータを、通信回路11を介して受信する(S525)。尚、アドレスデータには、消去対象の領域(上記指定領域)に対応するメモリアドレスが記されている。
第一マイコン10は、アドレスデータの受信後、受信したアドレスデータを解析して、アドレスデータが示すメモリアドレスに対応するROM15内の領域に記憶されているデータを消去する(S530)。また、データ消去が終了すると、ROM書換装置50から、指定データを書き込めとの書換コマンドを、通信回路11を介して受信するまで待機する。
また、書換コマンドを受信すると(S540でYes)、その後ROM書換装置50から送信されてくる上記指定データとしての書込対象データを、通信回路11を介して受信し(S545)、この書込対象データを、ROM15における上記データ消去後の領域に、書き込む(S550)。
また、書込が終了すると、ROM書換装置50から、書込後のデータを入力データと比較せよとの比較コマンドを受信するまで待機し、通信回路11を介して、比較コマンドを受信すると(S560でYes)、その後ROM書換装置50から送信されてくる上記入力データとしての比較対象データを受信する(S570)。
また、比較対象データを受信すると、第一マイコン10は、この比較対象データとROM15に書き込んだデータとを、1バイト分比較する(S580)。
そして、データが一致すると(S581でYes)、比較対象データを全て比較したか否かを判断し(S583)、比較対象データを、全バイトについて比較していない場合には(S583でNo)、後続のデータ(1バイト分)について、比較対象データとROM15に書き込んだデータ(上記書込対象データ)とを比較する(S580)。そして、データが一致する場合には(S581でYes)、S583に移行する。
一方、S583において、比較対象データとROM15に書き込んだデータとを全バイトについて比較したと判断すると(S583でYes)、第一マイコン10は、データ一致との情報を格納した応答信号を、通信回路11を介して、ROM書換装置50に送信し(S585)、その後、当該自己書換処理を終了する。
これに対し、比較対象データとROM15に書き込んだデータとが一致しないと判断すると(S581でNo)、第一マイコン10は、S587に移行して、データ不一致との情報を格納した応答信号を、通信回路11を介して、ROM書換装置50に送信し、その後、S510に移行して、自己書換処理を実行し直す。
次に、第一マイコン10が、S350で実行するGW通信処理について説明する。図9は、第一マイコン10が実行するGW通信処理を表すフローチャートである。また、図10は、GW通信処理の過程で、第一マイコン10が実行する消去通信処理を表すフローチャートであり、図11は、第一マイコン10が実行する外部データ転送処理を表すフローチャートである。その他、図12は、第一マイコン10が実行する書換通信処理を表すフローチャートであり、図13は、第一マイコン10が実行するデータ比較処理を表すフローチャートである。
GW通信処理を実行すると、第一マイコン10は、まず、通信に伴う初期処理を実行し(S610)、その後、S620に移行して、図10に示す消去通信処理を実行する。
消去通信処理を実行すると、第一マイコン10は、ROM書換装置50から、通信回路11を介して、消去コマンドAを受信するまで待機し(S710)、消去コマンドAを受信すると(S710でYes)、その後ROM書換装置50から送信されてくるアドレスデータを、通信回路11を介して受信する(S715)。
第一マイコン10は、この後、上記受信したアドレスデータを、第二マイコン30用のアドレスデータに変換して、第二マイコン30への送信データを生成し、これをRAM17内の送信データ格納領域に保存する(S720)。
また、S720での処理を終えると、上記受信した消去コマンドAを、第二マイコン30が受付可能な第二マイコン30用の消去コマンドBに変換して、これを送信対象コマンドに設定する(S730)。尚、本実施例では、ROM書換装置50から受信した第一マイコン10用のコマンドを表記する際、その末尾に「A」を記し、第一マイコン10で生成された第二マイコン30用のコマンドを表記する際、その末尾に「B」を記して、適宜区別して表現する。
S730での処理を終えると、第一マイコン10は、S740に移行し、通信回路12を通じて、第二マイコン30からハンドシェイク信号を受信しているか否かを判断し、ハンドシェイク信号を受信していない場合には(S740でNo)、ハンドシェイク信号を、第二マイコン30から受信するまで待機する。
そして、ハンドシェイク信号を受信すると、S740でYesと判断し、第二マイコン30へのコマンド送信が完了しているか否かを判断し(S750)、S730で設定した送信対象コマンドの第二マイコン30への送信が完了していない場合には(S750でNo)、S755に移行して、S730で設定した送信対象コマンドを、通信回路12を介して、第二マイコン30に送信する。
その後、第一マイコン10は、送信対象コマンドが通信回路31で受信されてMPU33にて解釈されると、第二マイコン30から送信されてくるハンドシェイク信号を受信するまで待機し(S740)、ハンドシェイク信号を受信すると(S740でYes)、S750でYesと判断して、S760に移行する。そして、S720で生成した送信データの第二マイコン30への送信が完了しているか否かを判断し、S720で生成した送信データの第二マイコン30への送信が完了していないと判断すると(S760でNo)、S765に移行して、図11に示す外部データ転送処理を実行する。
外部データ転送処理を開始すると、第一マイコン10は、送信データ格納領域に格納されている未送信データから、第二マイコン30が一度に受信可能なNMバイト分のデータを、その先頭から抽出し、これを通信回路12を介して、第二マイコン30に送信する(S810)。
その後、S820に移行して、送信データ格納領域に格納されている未送信データを全て送信したか否かを判断し、全て送信していないと判断すると(S820でNo)、第二マイコン30に送信したNMバイト分のデータが通信回路31からMPU33に伝達し、コマンドに対応する処理(消去コマンドの場合には、アドレスデータに対応する領域のデータ消去)がMPU33にてなされた後、第二マイコン30から送信されてくるハンドシェイク信号を受信するまで待機し(S830)、ハンドシェイク信号を受信すると(S830でYes)、再びS810に移行して、未送信データの先頭からNMバイト分のデータを抽出し、これを通信回路12を介して、第二マイコン30に送信する。そして、送信データ格納領域に格納されている未送信データの全てを送信すると(S820でYes)、当該外部データ転送処理を終了する。
このようにして、S765で外部データ転送処理を終了すると、第一マイコン10は、S740に移行し、第二マイコン30からハンドシェイク信号を受信するまで待機し、ハンドシェイク信号を受信すると、S750及びS760でYesと判断して、当該消去通信処理を終了する。また、消去通信処理(S620)を終了すると、第一マイコン10は、図12に示す書換通信処理を実行する(S630)。
書換通信処理を開始すると、第一マイコン10は、通信回路11を介して書換コマンドAを受信するまで待機し、書換コマンドAを受信すると(S910でYes)、その後ROM書換装置50から送信されてくる書込対象データを、通信回路11を介して受信する(S915)。
また、第一マイコン10は、書込対象データの受信後、その書込対象データを、第二マイコン30が解釈可能なデータに変換して、第二マイコン30への送信データを生成し、これをRAM17内の送信データ格納領域に保存する(S920)。
また、S920での処理を終えると、上記受信した書換コマンドAを、第二マイコン30が受付可能な第二マイコン30用の書換コマンドBに変換して、これを送信対象コマンドに設定する(S930)。その後、第一マイコン10は、S940に移行し、第二マイコン30から通信回路12を通じて、ハンドシェイク信号を受信しているか否かを判断し、ハンドシェイク信号を受信していない場合には(S940でNo)、ハンドシェイク信号を、第二マイコン30から受信するまで待機する。
一方、ハンドシェイク信号を受信していると判断すると(S940でYes)、第一マイコン10は、第二マイコン30へのコマンド送信が完了しているか否かを判断し(S950)、S930で設定した送信対象コマンドの第二マイコン30への送信が完了していない場合には(S950でNo)、S955に移行して、S930で設定した送信対象コマンドを、通信回路12を介し、第二マイコン30に送信する。
その後、第一マイコン10は、送信対象コマンドが通信回路31で受信されてMPU33に解釈されると、第二マイコン30から送信されてくるハンドシェイク信号を受信するまで待機し(S940)、ハンドシェイク信号を受信すると(S940でYes)、S950でYesと判断して、S960に移行する。
S960に移行すると、第一マイコン10は、S920で生成した送信データの第二マイコン30への送信が完了しているか否かを判断し、S920で生成した送信データの第二マイコン30への送信が完了していないと判断すると(S960でNo)、図11に示す外部データ転送処理を実行する(S965)。
即ち、第一マイコン10は、S965において、送信データ格納領域に格納されている未送信データの先頭から、第二マイコン30が一度に受信可能なNMバイト分のデータを抽出し、これを第二マイコン30に送信する(S810)。第二マイコン30では、通信回路31が受信したNMバイト分のデータが、MPU33にて処理され、ROM35に書き込まれる度に、ハンドシェイク信号が送出される。従って、第一マイコン10は、NMバイト分の書込対象データが、ROM35に書き込まれる度に、S830でYesと判断して、未送信データから、NMバイト分のデータを抽出し、これを第二マイコン30に送信する(S810)。そして、全データの送信が終了すると(S820でYes)、外部データ転送処理を終了する。
S965での処理(外部データ転送処理)を終了すると、第一マイコン10は、第二マイコン30からハンドシェイク信号を受信するまで待機し、ハンドシェイク信号を受信すると、S950及びS960でYesと判断して、当該書換通信処理を終了する。また、S630で書換通信処理を終了すると、S640に移行し、図13に示すデータ比較処理を実行する。
データ比較処理を実行すると、第一マイコン10は、通信回路11を介して、ROM書換装置50から、比較コマンドAを受信するまで待機し、比較コマンドAを受信すると(S1010でYes)、その後ROM書換装置50から送信されてくる比較対象データを、通信回路11を介して受信する(S1015)。
また、第一マイコン10は、比較対象データの受信後、その比較対象データを、書込対象データと同様に、第二マイコン30が解釈可能なデータに変換して、変換後の比較対象データを、RAM17に保存する(S1020)。その後、第二マイコン30に対してROM35への書込データを送信せよとのデータ要求コマンドを、送信対象コマンドに設定する(S1030)。
S1030での処理を終えると、第一マイコン10は、S1040に移行して、第二マイコン30から通信回路12を通じ、ハンドシェイク信号を受信しているか否かを判断し、ハンドシェイク信号を受信していないと判断すると(S1040でNo)、ハンドシェイク信号を、第二マイコン30から受信するまで待機する。
一方、ハンドシェイク信号を受信していると判断すると(S1040でYes)、第一マイコン10は、第二マイコン30へのコマンド送信が完了しているか否かを判断し(S1050)、S1030で設定した送信対象コマンドの第二マイコン30への送信が完了していないと判断すると(S1050でNo)、S1055に移行して、S1030で設定した送信対象コマンドを、通信回路12を介し第二マイコン30に送信する。その後、S1060に移行する。
そして、S1060では、第二マイコン30から受信すべき書込データを全て受信したか否かを判断し、受信していないと判断すると(S1060でNo)、データ要求コマンドの受信に応答して第二マイコン30から送信されてくるNMバイト分の書込データを、通信回路12を介して受信する(S1063)。また、S1063での処理を終えると、S1067にて、コマンド送信フラグをリセットする。尚、このコマンド送信フラグは、S1050での判断基準となるフラグであり、コマンド送信フラグがリセットされると、S1050においては、送信対象コマンドの送信が完了していないと判断される。
S1067での処理を終えると、第一マイコン10は、S1040に移行し、第二マイコン30からハンドシェイク信号が送信されてくるまで待機する。尚、第二マイコン30は、1回分(NMバイト分)のデータ送信が完了する度に、ハンドシェイク信号を送出する構成にされている。
第一マイコン10は、S1067での処理後、再びハンドシェイク信号を受信すると(S1040でYes)、S1050でNoと判断して、送信対象コマンド(データ要求コマンドB)を、再び、第二マイコン30に送信する(S1055)。その後、S1060にて、第二マイコン30から受信すべき書込データを全て受信したか否かを判断し、受信していないと判断すると、S1063に移行して、受信していない残りの書込データをNMバイト分、第二マイコン30から受信し、その後、S1067に移行する。
一方、第二マイコン30から受信すべき書込データを全て受信したと判断すると(S1060でYes)、S1070に移行し、ROM書換装置50から受信した比較対象データであって、RAM17に保存された変換後の比較対象データと、第二マイコン30がROM35に書き込んだデータ(書込データ)であって、第二マイコン30から受信しRAM17に保存したデータとを、1バイト分比較する(S1070)。
そして、1バイト分のデータが一致すると(S1071でYes)、比較対象データを全バイトについて比較したか否かを判断し(S1073)、比較対象データを、全バイトについて比較していないと判断すると(S1073でNo)、次の1バイト分のデータ(後続のデータ1バイト分)について、変換後の比較対象データと、第二マイコン30から受信した書込データとを比較する(S1070)。
そして、データが一致すると(S1071でYes)、S1073に移行し、比較対象データを全バイトについて比較したと判断すると(S1073でYes)、データ一致との情報を格納した応答信号を、通信回路11を介して、ROM書換装置50に送信し(S1075)、その後、当該データ比較処理(S640)を終了し、それと共に、GW通信処理を終了する。
一方、S1070で比較した結果、変換後の比較対象データと、第二マイコン30がROM35に書き込んだデータ(書込データ)とが一致しないと判断すると(S1071でNo)、第一マイコン10は、S1077に移行し、データ不一致との情報を格納した応答信号を、通信回路11を介して、ROM書換装置50に送信し、その後、S610に移行する。
また、第一マイコン10は、S610における初期処理の実行時に、図14に示すステータス通知処理を開始して、これをGW通信処理と並列に実行する構成にされている。図14は、このステータス通知処理を表すフローチャートである。
尚、ステータス通知処理は、処理能力の低い第二マイコン30に対してデータ転送する際や、書込データを受信する際など、時間を要する処理の実行中に、ROM書換装置50に対し、第一マイコン10及び第二マイコン30の状態を通知するための処理である。ROM書換装置50では、比較コマンドを送信する際などに、ステータスについての問合せ信号である問合せコマンドを送信する構成にされており、この応答信号に基づいて、比較コマンドを送信するタイミングを決定し、又、処理の進行具合を、ユーザに通知する。
第一マイコン10は、ステータス通知処理を実行すると、ROM書換装置50から通信回路11を介して問合せコマンドを受信するまで待機し(S1110)、問合せコマンドを受信すると(S1110でYes)、外部データ転送処理が実行中であるか否かを判断し(S1120)、外部データ転送処理が実行中であると判断すると(S1120でYes)、「BUSY」との値を示す応答信号を、ROM書換装置50に送信して(S1150)、一旦当該ステータス通知処理を終了した後、S1110に移行し、再度、問合せコマンドを受信するまで待機する。
一方、S1120にて、外部データ転送処理が実行中ではないと判断すると、第一マイコン10は、S1130にて、書込データの受信中(具体的には、S1040〜S1067の処理実行中)であるか否かを判断する。そして、書込データの受信中であると判断すると(S1130でYes)、S1150に移行し、「BUSY」との値を示す応答信号を、ROM書換装置50に送信する。その後、S1110に移行し、再度、問合せコマンドを受信するまで待機する。
その他、S1130にて、書込データの受信中ではないと判断すると、第一マイコン10は、S1140にて、データ比較中(具体的には、S1070〜S1073の処理実行中)であるか否かを判断する。そして、データ比較中であると判断すると(S1140でYes)、S1150に移行し、「BUSY」との値を示す応答信号を、ROM書換装置50に送信する。これに対し、S1140にて、データ比較中ではないと判断すると(S1140でNo)、第一マイコン10は、「NotBUSY」との値を示す応答信号を、ROM書換装置50に送信し(S1160)、当該ステータス通知処理を終了する。
このステータス通知処理によれば、データ転送が終了すると、応答信号の値が「BUSY」から「NotBUSY」に切り替わるので、ROM書換装置50は、この応答信号に基づいて、比較コマンドの送信タイミングを決定することができると共に、データの転送状況及びデータの比較状況を、ユーザに通知することができるのである。
続いて、第二マイコン30が、S450にて実行する書換制御処理について説明する。図15は、第二マイコン30が実行する書換制御処理を表すフローチャートである。また、図16は、書換制御処理の実行過程で第二マイコン30が実行する受信書込処理を表すフローチャートである。
書換制御処理を実行すると、第二マイコン30は、まず、通信に伴う初期処理を実行し(S1210)、その後、第一マイコン10から、通信回路31を介して、消去コマンドBを受信するまで待機し(S1220)、消去コマンドBを受信すると(S1220でYes)、その後、第一マイコン10から送信されてくるアドレスデータを、通信回路31を介して受信する(S1225)。
そして、アドレスデータを受信すると、そのアドレスデータを解析して、アドレスデータが示すメモリアドレスに対応するROM35内の領域に記憶されているデータを消去する(S1230)。また、データ消去が終了すると、第一マイコン10から書換コマンドBを、通信回路31を介して受信するまで待機する(S1240)。
そして、書換コマンドBを受信すると(S1240でYes)、受信書込処理を実行し、第一マイコン10から、書込対象データを、NMバイト毎に、通信回路31を介して受信して、これをROM35に書き込む(S1250)。
具体的に、受信書込処理を実行すると、第二マイコン30は、第一マイコン10から送信されてくるNMバイト分の書込対象データを、通信回路31を介して受信し(S1251)、NMバイト分の書込対象データを受信すると、これを、ROM35における上記データ消去後の領域に、未だデータを書き込んでいない上記領域の先頭を基点として、書き込む(S1255)。
その後、書込対象データを全て(最終バイトまで)受信したか否か判断し(S1257)、書込対象データを全て受信していないと判断すると(S1257でNo)、S1255の処理後に送信されるハンドシェイク信号を契機として、第一マイコン10から送信されてくる続きのデータ(NMバイト分の書込対象データ)を、S1251にて受信し、これを、ROM35における上記データ消去後の領域に、未だデータを書き込んでいない上記領域の先頭を基点として、書き込む(S1255)。その後、書込対象データを全て受信したと判断すると(S1257でYes)、当該受信書込処理を終了する。
このようにして、S1250で受信書込処理を終了すると、第二マイコン30は、S1260に移行し、第一マイコン10から、通信回路31を介して、データ要求コマンドBを受信するまで待機する。そして、データ要求コマンドBを受信すると(S1260でYes)、ROM35への書込データであって未送信のデータを、通信回路31を介して、先頭から順にNMバイト分送信する(S1270)。
その後、第二マイコン30は、書込データを全て第一マイコン10に送信したか否かを判断し(S1280)、送信していなければ(S1280でNo)、S1260に移行して、再びデータ要求コマンドBを、第一マイコン10から受信するまで待機する。尚、上述したように、第一マイコン10は、第二マイコン30が書込データをNMバイト分送信し、データ受信可能な状態になると送出するハンドシェイク信号を受信すると、再び、データ要求コマンドBを送信する構成にされており、第二マイコン30は、このデータ要求コマンドBを受信するまで待機する。
そして、データ要求コマンドBを受信すると、未送信データを、先頭から受信にNMバイト分送信する(S1270)。そして、この際、未送信データがNMバイト分ない場合には、未送信データ全てを、第一マイコン10に向けて送信し、未送信データがない場合には、その旨の信号を、第一マイコン10に送信する。そして、書込データを全て第一マイコン10に送信している場合には、S1280でYesと判断し、当該書込制御処理を終了する。尚、書込制御処理後においても、書換モードは継続し、必要があれば、再びS1210から処理を開始する。
以上、本実施例の電子制御装置1について説明したが、この電子制御装置1によれば、第一マイコン10が、ROM書換装置50から受信したデータを、RAM17に一旦蓄積するので、第二マイコン30の受信処理能力が低く、第一マイコン10が、ROM書換装置50から受信した第二マイコン30宛のデータを、ROM書換装置50の送信速度に合わせて、第二マイコン30に転送することができない場合でも、オーバーフローが発生するのを防止することができる。
また、この電子制御装置1によれば、第一マイコン10が、第二マイコン30の受信処理能力に合わせて、転送対象のデータを分割し、ハンドシェイク信号を受信する度に、所定量(NMバイト)ずつ、第二マイコン30に転送するので、第二マイコン30に受信処理能力の低いマイコンを用いても、第二マイコン30に対して、確実にデータを転送することができ、データ転送の失敗によって、誤ったデータが、第二マイコン30のROM35に書き込まれるのを防止することができる。
従って、本実施例によれば、安価なマイコンを第二マイコン30として用いても、外部通信ライン5に接続された第一マイコン10からのデータ転送による手法で、第二マイコン30におけるROM35のデータ更新を、実現することができる。
また、電子制御装置1では、ROM書換装置50から第二マイコン30宛のデータを受信した場合、第一マイコン10が、その受信データを、第二マイコン30が解釈可能なデータに変換して、一旦RAM17に保存し、RAM17に保存された上記変換後のデータを、第二マイコン30に転送する。従って、本実施例によれば、第二マイコン30に対してデータ変換機能を設けずに済み、安価なマイコンを、第二マイコン30として用いて、電子制御装置1を構成することができる。
その他、本実施例の電子制御装置1では、第二マイコン30が、第一マイコン10を介して、ROM書換装置50から、アドレスデータを受信すると(S1225)、そのアドレスデータが示すメモリアドレスに対応するROM35内の領域をデータ消去して(S1230)、この後に送信されてくる書込対象データを、アドレスデータが示すメモリアドレスに対応する領域に、書き込む(S1250)。従って、本実施例によれば、ROM35が記憶する任意のデータを選択的に更新することができ、データ更新時間の短縮を図ることができる。
また、本実施例では、第二マイコン30のデータ更新時に、第二マイコン30が第一マイコン10から受信しデータ更新に用いたデータ(書込データ)を、第一マイコン10が第二マイコン30から取得し(S1030〜S1067)、第一マイコン10が、その取得データと、ROM書換装置50から受信した書込対象データ(比較対象データ)とを比較し(S1070〜S1073)、比較結果を、通信回路11を介してROM書換装置50に送信する(S1075,S1077)。
従って、本実施例によれば、第一マイコン10から第二マイコン30へのデータ転送過程でエラーが生じたか否かを、ROM書換装置50にて把握することができる。また、データが一致しない場合には、再度のデータ更新をユーザに促すことができるので、第二マイコン30にて、確実に、正確なデータ更新を実現することができる。
その他、本実施例では、第一マイコン10が、ROM書換装置50から通信回路11を介して問合せコマンドを受信すると、外部データ転送処理によりデータ転送中であるか否かを判断し、その結果を表す応答信号を、通信回路11を介してROM書換装置50に送信する(ステータス通知処理)。従って、本実施例によれば、ROM書換装置50にて、転送状況を把握することができ、次コマンドの送出を迅速に実行することができる。また、ROM書換装置50を介してユーザに対し、転送状況を通知することができ、ユーザに、処理の進行具合を容易に把握させることができる。
尚、本発明の蓄積手段は、データ受信処理にて実現され、転送手段は、GW通信処理にて実現され、取得手段は、データ比較処理におけるS1030〜S1067の処理にて実現されている。また、比較手段は、S1070〜S1073の処理にて実現され、比較結果通知手段は、S1075,S1077の処理にて実現されている。その他、ステータス通知手段は、ステータス通知処理にて実現されている。
本発明が適用された電子制御装置1の構成を表す説明図である。 ROM15のデータ更新手順(a)、及びROM35のデータ更新手順(b)を示した説明図である。 第一マイコン10及び第二マイコン30が実行するデータ受信処理を表すフローチャートである。 第二マイコン30が繰返し実行する通信制御処理を表すフローチャートである。 第一マイコン10が実行する起動処理を表すフローチャートである。 第一マイコン10が実行する書換制御処理を表すフローチャートである。 第二マイコン30が実行する起動処理を表すフローチャートである。 第一マイコン10が実行する自己書換処理を表すフローチャートである。 第一マイコン10が実行するGW通信処理を表すフローチャートである。 第一マイコン10が実行する消去通信処理を表すフローチャートである。 第一マイコン10が実行する外部データ転送処理を表すフローチャートである。 第一マイコン10が実行する書換通信処理を表すフローチャートである。 第一マイコン10が実行するデータ比較処理を表すフローチャートである。 第一マイコン10が実行するステータス通知処理を表すフローチャートである。 第二マイコン30が実行する書換制御処理を表すフローチャートである。 第二マイコン30が実行する受信書込処理を表すフローチャートである。
符号の説明
1…電子制御装置、3…コネクタ、5…外部通信ライン、6…内部通信ライン、8,9…入出力回路、10,30…マイコン、11,12,31…通信回路、13,33…MPU、15,35…ROM、17,37…RAM、19,39…I/Oポート、50…ROM書換装置

Claims (7)

  1. 第一及び第二のマイクロコンピュータを備え、
    前記各マイクロコンピュータは、データ書換可能な不揮発性メモリを内蔵すると共に、通信ラインに接続された通信回路を内蔵し、前記内蔵の不揮発性メモリが記憶するデータに基づく処理を実行する構成にされると共に、前記内蔵の通信回路を介して、自身宛の書込対象のデータを受信すると、前記書込対象のデータを、前記内蔵の不揮発性メモリに書き込み、前記不揮発性メモリが記憶するデータを更新する構成にされた電子制御装置であって、
    前記第一のマイクロコンピュータは、
    前記内蔵の通信回路として、外部装置に繋がる外部通信ライン及び前記第二のマイクロコンピュータに繋がる内部通信ラインに接続された通信回路を有すると共に、
    前記内蔵の通信回路が受信したデータを、内蔵の揮発性メモリに蓄積する蓄積手段と、
    前記内蔵の通信回路が前記外部装置から前記第二のマイクロコンピュータ宛のデータを受信すると、前記揮発性メモリに蓄積された前記第二のマイクロコンピュータ宛のデータを、前記第二のマイクロコンピュータの受信処理能力に合わせて、前記内蔵の通信回路を介し、前記第二のマイクロコンピュータに送信する転送手段と、
    を備え、
    前記第二のマイクロコンピュータは、前記内蔵の通信回路として、前記第一のマイクロコンピュータに繋がる内部通信ラインに接続された通信回路を有し、この通信回路を介して、前記第一のマイクロコンピュータから、前記外部装置から送信された自身宛の書込対象のデータを受信することを特徴とする電子制御装置。
  2. 前記転送手段は、前記第二のマイクロコンピュータの受信処理能力に合わせて、前記揮発性メモリに蓄積された前記第二のマイクロコンピュータ宛のデータを分割して、前記第二のマイクロコンピュータに送信する構成にされていることを特徴とする請求項1記載の電子制御装置。
  3. 前記転送手段は、前記揮発性メモリに蓄積された前記第二のマイクロコンピュータ宛のデータを、前記第二のマイクロコンピュータからハンドシェイク信号を受信する度に、所定量ずつ、前記第二のマイクロコンピュータに送信する構成にされていることを特徴とする請求項1又は請求項2記載の電子制御装置。
  4. 前記第一のマイクロコンピュータは、
    前記内蔵の通信回路が前記外部装置から受信したデータを、前記第二のマイクロコンピュータが解釈可能なデータに変換するデータ変換手段
    を有し、
    前記転送手段は、前記外部装置から受信した前記第二のマイクロコンピュータ宛のデータについて、前記データ変換手段による変換後のデータを、前記第二のマイクロコンピュータに送信する構成にされていることを特徴とする請求項1〜請求項3のいずれかに記載の電子制御装置。
  5. 前記第二のマイクロコンピュータは、前記第一のマイクロコンピュータを介して、前記外部装置から書込先のメモリアドレスを表すアドレスデータを受信すると、前記アドレスデータと共に、前記第一のマイクロコンピュータを介して、前記外部装置から受信した自身宛の書込対象のデータを、前記内蔵の不揮発性メモリにおける前記アドレスデータが示すメモリアドレスに対応する領域に、書き込む構成にされていることを特徴とする請求項1〜請求項4のいずれかに記載の電子制御装置。
  6. 前記第一のマイクロコンピュータは、
    前記第二のマイクロコンピュータが前記第一のマイクロコンピュータから受信した書込対象のデータを、前記内蔵の通信回路を介して、前記第二のマイクロコンピュータから取得する取得手段と、
    前記取得手段が取得したデータと、前記外部装置から受信した前記書込対象のデータとを、比較する比較手段と、
    前記比較手段の比較結果を、前記内蔵の通信回路を介して、前記外部装置に送信する比較結果通知手段と、
    を備えることを特徴とする請求項1〜請求項5のいずれかに記載の電子制御装置。
  7. 前記第一のマイクロコンピュータは、前記外部装置から、前記内蔵の通信回路を介して、転送状況の通知を指示するコマンドを受信すると、前記転送手段の動作状況を表すデータを、前記内蔵の通信回路を介して、前記外部装置に送信するステータス通知手段、を備えることを特徴とする請求項1〜請求項6のいずれかに記載の電子制御装置。
JP2005081661A 2005-03-22 2005-03-22 電子制御装置 Pending JP2006268107A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005081661A JP2006268107A (ja) 2005-03-22 2005-03-22 電子制御装置
DE102006012969A DE102006012969A1 (de) 2005-03-22 2006-03-21 Elektronische Steuerungsvorrichtung mit einem ersten Mikrocomputer, der von extern gelieferte Aktualisierungsdaten an einen zweiten Mikrocomputer weiterleitet, der eine niedrigere Empfangsleistung als der erste Mikrocomputer aufweist
US11/385,697 US7684926B2 (en) 2005-03-22 2006-03-22 Electronic control apparatus having first microcomputer which forwards externally supplied updating data to a second microcomputer having a lower data receiving performance than the first microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005081661A JP2006268107A (ja) 2005-03-22 2005-03-22 電子制御装置

Publications (1)

Publication Number Publication Date
JP2006268107A true JP2006268107A (ja) 2006-10-05

Family

ID=37026488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005081661A Pending JP2006268107A (ja) 2005-03-22 2005-03-22 電子制御装置

Country Status (3)

Country Link
US (1) US7684926B2 (ja)
JP (1) JP2006268107A (ja)
DE (1) DE102006012969A1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276585A (ja) * 2007-05-01 2008-11-13 Nippon Syst Wear Kk 組込み装置、その開発システム、開発プログラム、データの転送方法およびデータ構造
JP2010178032A (ja) * 2009-01-29 2010-08-12 Kubota Corp 作業機の通信システム
JP2010174507A (ja) * 2009-01-29 2010-08-12 Kubota Corp 作業機用制御装置
JP2011139140A (ja) * 2009-12-25 2011-07-14 Fujikura Ltd 電子モジュール制御プログラム及び電子モジュール製造方法
JP2012093961A (ja) * 2010-10-27 2012-05-17 Omron Automotive Electronics Co Ltd 制御装置及び方法、並びにプログラム書込システム
CN104657304A (zh) * 2013-11-22 2015-05-27 株式会社电装 电子控制单元
JP2017049874A (ja) * 2015-09-03 2017-03-09 日本電気株式会社 情報処理装置、情報処理システム、制御方法、および制御プログラム
DE102016221667A1 (de) 2015-11-05 2017-05-11 Denso Corporation Elektronische Steuereinheit und Datenumschreibesystem
DE102017202280A1 (de) 2016-02-26 2017-08-31 Denso Corporation Fahrzeugeigene steuerungsvorrichtung
JP2019185131A (ja) * 2018-04-02 2019-10-24 富士通コンポーネント株式会社 中継装置及び中継システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2434219B (en) * 2005-11-15 2010-11-24 P G Drives Technology Ltd Networked modules
US12355383B2 (en) * 2021-01-29 2025-07-08 Hitachi Astemo, Ltd. Electronic control device for vehicle-mounted equipment

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3451631B2 (ja) 1992-07-21 2003-09-29 セイコーエプソン株式会社 ハンドシェイク型データ処理回路
JP2601194B2 (ja) 1993-06-30 1997-04-16 三菱自動車工業株式会社 車両用制御装置の故障診断装置
KR0141893B1 (ko) * 1993-06-30 1998-06-01 나까무라 유이찌 차량용제어장치의 고장진단장치 및 고장진단방법
JP3491419B2 (ja) * 1995-12-04 2004-01-26 株式会社デンソー 電子制御装置
DE19616166A1 (de) * 1996-04-23 1997-10-30 Bosch Gmbh Robert Steuergerät, insbesondere Kraftfahrzeugsteuergerät
JP3635996B2 (ja) 1999-08-30 2005-04-06 三菱電機株式会社 情報処理システム
US7068147B2 (en) * 1999-12-07 2006-06-27 Denso Corporation Control information rewriting system
JP2002108835A (ja) 2000-09-29 2002-04-12 Mitsubishi Electric Corp 車載電子制御装置
JP3883842B2 (ja) * 2001-11-02 2007-02-21 株式会社デンソー 車両用電子制御装置
JP2004028000A (ja) * 2002-06-27 2004-01-29 Mitsubishi Electric Corp 通信による車載ecuのメモリ書き換え装置
JP2005025519A (ja) 2003-07-02 2005-01-27 Fuji Electric Systems Co Ltd コンピュータ制御システムおよびソフトウェア書き換え方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276585A (ja) * 2007-05-01 2008-11-13 Nippon Syst Wear Kk 組込み装置、その開発システム、開発プログラム、データの転送方法およびデータ構造
JP2010178032A (ja) * 2009-01-29 2010-08-12 Kubota Corp 作業機の通信システム
JP2010174507A (ja) * 2009-01-29 2010-08-12 Kubota Corp 作業機用制御装置
JP2011139140A (ja) * 2009-12-25 2011-07-14 Fujikura Ltd 電子モジュール制御プログラム及び電子モジュール製造方法
JP2012093961A (ja) * 2010-10-27 2012-05-17 Omron Automotive Electronics Co Ltd 制御装置及び方法、並びにプログラム書込システム
DE102014223839A1 (de) 2013-11-22 2015-05-28 Denso Corporation Elektronische Steuereinheit
CN104657304A (zh) * 2013-11-22 2015-05-27 株式会社电装 电子控制单元
CN104657304B (zh) * 2013-11-22 2017-11-03 株式会社电装 电子控制单元
JP2017049874A (ja) * 2015-09-03 2017-03-09 日本電気株式会社 情報処理装置、情報処理システム、制御方法、および制御プログラム
DE102016221667A1 (de) 2015-11-05 2017-05-11 Denso Corporation Elektronische Steuereinheit und Datenumschreibesystem
DE102016221667B4 (de) 2015-11-05 2024-12-19 Denso Corporation Elektronische Steuereinheit und Datenumschreibesystem
DE102017202280A1 (de) 2016-02-26 2017-08-31 Denso Corporation Fahrzeugeigene steuerungsvorrichtung
JP2019185131A (ja) * 2018-04-02 2019-10-24 富士通コンポーネント株式会社 中継装置及び中継システム
JP7106329B2 (ja) 2018-04-02 2022-07-26 富士通コンポーネント株式会社 中継装置及び中継システム

Also Published As

Publication number Publication date
DE102006012969A1 (de) 2006-10-12
US20060227606A1 (en) 2006-10-12
US7684926B2 (en) 2010-03-23

Similar Documents

Publication Publication Date Title
JP2006268107A (ja) 電子制御装置
US20200073593A1 (en) Memory controller and associated accessing method and electronic device
US10664418B2 (en) Peripheral device controlling device, operation method thereof, and operation method of peripheral device controlling device driver
JP5073977B2 (ja) 半導体記憶装置のベリファイ制御方式及びその方法
KR20020036717A (ko) 마이크로컴퓨터 및 그 제어 방법
JP2003208324A (ja) イメージング装置
US9071718B2 (en) Information processing apparatus, image forming apparatus, non-transitory computer readable medium storing program, and information processing method
JP5488405B2 (ja) 電子制御装置
JP5080318B2 (ja) 画像処理装置及びアクセス制御方法
JP4617816B2 (ja) 車両制御装置、および書き換えプログラム受信・起動プログラム
CN110383232A (zh) 具有序列处理单元的存储器控制系统
CN111984291B (zh) 数据烧录方法、装置、终端及存储介质
JP2006268377A (ja) プログラム起動制御装置及びプログラム起動制御方法
JP4973270B2 (ja) カメラ用アクセサリ機器およびカメラシステム
CN111752589A (zh) 在线升级微控制器烧录代码的方法及装置
JP7472844B2 (ja) 電子制御装置
JP4988982B2 (ja) マイクロコンピュータの制御方法
JP6394291B2 (ja) 電子制御装置およびメモリ書換方法
JP6554944B2 (ja) 印刷装置の制御方法、プログラム更新システムおよび印刷装置
JP2018180608A (ja) プログラム実行装置およびプログラム実行方法
KR101900729B1 (ko) Plc 운영체제 구동 방법
US20080244175A1 (en) Memory system and computer system
JP2021047554A (ja) 電子制御装置
CN119088729A (zh) 服务器指令的处理方法、装置、计算机设备及存储介质
JP2005202976A (ja) 電子機器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100105

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载