(57)【要約】      （修正有）【課題】ハードウェアの追加を要することなく、ロストデータを可能な限り低減して効率の良いＣＡＮデータの受信を可能とする。【解決手段】電子制御ユニット１０１のＣＰＵ１１０は、所定割込条件の下、実行中の処理に対して割り込みを行い、メッセージ格納域１３０−１〜１３０−１０の中で、受信フラグが上書き許可に設定されているメッセージ格納域を検出し、検出されたメッセージ格納域に、メールボックス２３０−１〜２３０−ｎに格納されたＣＡＮメッセージの中から所定の選択条件で選択されたＣＡＮメッセージを格納すると共に、メッセージ格納域１３０−１〜１３０−１０に格納されたＣＡＮメッセージを所要の箇所へ転送するまでの間受信フラグを上書き禁止状態に設定し、ロストデータの低減を行う。【選択図】図１
2019087878.tif 000002
【特許請求の範囲】
【請求項１】
外部から到達したＣＡＮメッセージをメールボックス（２３０）へ一時的に格納するＣＡＮコントローラ（２１０）と、 
前記メールボックス（２３０）に格納されたＣＡＮメッセージを格納するＣＰＵ側メールボックス（１２０）を有して、定常タスク処理により前記メールボックス（２３０）に格納されたＣＡＮメッセージを前記ＣＰＵ側メールボックス（１２０）に格納するＣＰＵ（１１０）と
を有するＣＡＮ通信制御装置（２０１）であって、 
前記ＣＰＵ（１１０）には、複数のメッセージ格納域（１３０−１〜１３０−１０）を有するテンポラリバッファメモリ（１３０）が設けられ、
前記ＣＰＵ（１１０）は、 
所定割込条件の下、実行中の処理に対して割り込みを行い、 
前記複数のメッセージ格納域（１３０−１〜１３０−１０）の中から受信フラグが上書き許可に設定されているメッセージ格納域（１３０−１〜１３０−１０）を検出し、
当該検出されたメッセージ格納域（１３０−１〜１３０−１０）に、前記メールボックス（２３０）に格納されたＣＡＮメッセージの中から所定の選択条件で選択されたＣＡＮメッセージを格納すると共に、当該ＣＡＮメッセージを所要の箇所へ転送するまで前記受信フラグを上書き禁止状態に設定する
ことを特徴とするＣＡＮ通信制御装置。 
【請求項２】
前記所定割込条件は、前記ＣＰＵ（１１０）が、予め設定されたＩＤを有するＣＡＮメッセージの前記ＣＡＮコントローラ（２１０）への到達を検出した
ことを特徴とする請求項１に記載のＣＡＮ通信制御装置。 
【請求項３】
前記所定の選択条件は、前記ＣＰＵ（１１０）により検出されたＩＤと前記メールボックス（２３０）に格納されたＣＡＮメッセージのＩＤが一致する
ことを特徴とする請求項２に記載のＣＡＮ通信制御装置。 
【請求項４】
前記所定割込条件は、定時間間隔である 
ことを特徴とする請求項１に記載のＣＡＮ通信制御装置。 
【請求項５】
前記所定の選択条件は、メモリ番地順である 
ことを特徴とする請求項４に記載のＣＡＮ通信制御装置。 
【請求項６】
前記テンポラリバッファメモリ（１３０）は、空き領域を有する他の既存のメモリを用いて構成された 
ことを特徴する請求項１〜５の何れか一項に記載のＣＡＮ通信制御装置。 
【請求項７】
外部から到達したＣＡＮメッセージをメールボックス（２３０）へ一時的に格納するＣＡＮコントローラ（２１０）と、 
前記メールボックス（２３０）に格納されたＣＡＮメッセージを格納するＣＰＵ側メールボックス（１２０）を有して、定常タスク処理により前記メールボックス（２３０）に格納されたＣＡＮメッセージを前記ＣＰＵ側メールボックス（１２０）に格納するＣＰＵ（１１０）とを有するＣＡＮ通信制御装置（２０１）のＣＡＮ通信制御方法であって、 
所定割込条件の下、実行中の処理に対して割込を行う第１のステップと、 
前記ＣＰＵ（１１０）に設けられたテンポラリバッファメモリ（１３０）の複数のメッセージ格納域（１３０−１〜１３０−１０）の中から受信フラグが上書き可能に設定されているメッセージ格納域（１３０−１〜１３０−１０）を検出する第２のステップと、
前記受信フラグが上書き可能に設定されているとして検出されたメッセージ格納域（１３０−１〜１３０−１０）に、前記メールボックス（２３０）に格納されたＣＡＮメッセージの中から所定の選択条件で選択されたＣＡＮメッセージを格納する第３のステップと、
前記ＣＡＮメッセージが格納されたメッセージ格納域（１３０−１〜１３０−１０）に対する受信フラグを、当該ＣＡＮメッセージを所要の箇所へ転送するまで上書き禁止状態とする第４のステップとを有する
ことを特徴とするＣＡＮ通信制御方法。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＡＮ通信制御装置及びＣＡＮ通信制御方法に係り、特に、ハードウェア資源の効率的活用を図りつつＣＡＮデータの授受を行うＣＡＮ通信制御装置及びＣＡＮ通信制御方法に適用して好適なものである。
【背景技術】
【０００２】
車載に搭載された電子装置相互の種々データの授受には、ＣＡＮ(Controller Area Network)が用いられていることは良く知られている通りである（例えば、特許文献１等参照）。 
ＣＡＮを介した電子装置間のデータの授受は、通常、ＣＡＮメッセージと称される所定の信号形式に基づいて行われる。このＣＡＮメッセージは、そのメッセージの内容、種類等に応じて識別のためＩＤ（識別符号）が付与されて送信側の電子装置から送出される。
そして、受信側の他の電子装置においては、そのＩＤを識別することで、必要なＣＡＮメッセージのみが選択、取り込み等されるようになっている。
【０００３】
通常、ＣＡＮメッセージを受信する電子装置においては、ＣＡＮコントローラと称されるＣＡＮ通信の制御を行う部位に、ＣＡＮメッセージを一時的に格納するメールボックスと称される記憶領域が確保される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１３８２６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ＣＡＮに接続された複数の電子装置において受信されるＣＡＮメッセージ数、換言すれば、受信対象となるＩＤの数は、それぞれの装置が有する機能等によって様々である。
一方、小型化、低価格、構成の簡素化等が恒常的に求められる電子装置にあって、必ずしも受信対象のＣＡＮメッセージ数に対応した記憶領域を有するメールボックスが確保できるとは限らず、寧ろ、受信対象のＣＡＮメッセージ数に対してメールボックス数が不足することもある。
【０００６】
ＣＡＮコントローラのメールボックスには、上述のように所定のＩＤのＣＡＮメッセージが到達する毎に、ＣＡＮメッセージがメールボックスに格納されるが、そのＣＡＮメッセージのＣＰＵへの取り込みは、通常、定常タスク処理において実行されるものとなっている。
すなわち、一定時間間隔で、定常タスク処理が開始されると、ＣＰＵは、その時点にＣＡＮコントローラのメールボックスに格納されているＣＡＮメッセージをＣＰＵに取り込む処理を実行する。
【０００７】
このようにＣＡＮコントローラのメールボックスからＣＰＵに取り込まれるＣＡＮメッセージは、定常タスク処理の実行時点においてＣＡＮコントローラのメールボックスに格納されている最新のＣＡＮメッセージのみであるため、それ以前のＣＡＮメッセージはロストデータとして処理されていた。
【０００８】
本発明は、上記実状に鑑みてなされたもので、ハードウェアの追加を要することなく、ロストデータを可能な限り低減して効率の良いＣＡＮデータの受信ができるＣＡＮ通信制御装置及びＣＡＮ通信制御方法を提供するものである。
【課題を解決するための手段】
【０００９】
上記本発明の目的を達成するため、本発明に係るＣＡＮ通信制御装置は、 
外部から到達したＣＡＮメッセージをメールボックス（２３０）へ一時的に格納するＣＡＮコントローラ（２１０）と、 
前記メールボックス（２３０）に格納されたＣＡＮメッセージを格納するＣＰＵ側メールボックス（１２０）を有して、定常タスク処理により前記メールボックス（２３０）に格納されたＣＡＮメッセージを前記ＣＰＵ側メールボックス（１２０）に格納するＣＰＵ（１１０）を有するＣＡＮ通信制御装置（２０１）であって、
前記ＣＰＵ（１１０）には、複数のメッセージ格納域（１３０−１〜１３０−１０）を有するテンポラリバッファメモリ（１３０）が設けられ、
前記ＣＰＵ（１１０）は、 
所定割込条件の下、実行中の処理に対して割り込みを行い、 
前記複数のメッセージ格納域（１３０−１〜１３０−１０）の中から受信フラグが上書き許可に設定されているメッセージ格納域（１３０−１〜１３０−１０）を検出し、
当該検出されたメッセージ格納域（１３０−１〜１３０−１０）に、前記メールボックス（２３０）に格納されたＣＡＮメッセージの中から所定の選択条件で選択されたＣＡＮメッセージを格納すると共に、当該ＣＡＮメッセージを所要の箇所へ転送するまで前記受信フラグを上書き禁止状態に設定することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、外部から受信対象のＣＡＮメッセージが到達した時点で、ＣＰＵへの取り込みを行い、ＣＡＮメッセージが格納された箇所を、そのＣＡＮメッセージが所要の箇所へ転送されるまでの間、上書き禁止とすることで、定常タスク処理開始直前に到達した最新のＣＡＮメッセージのみしか取り込むことができなかった従来と異なり、定常タスク処理では取り込むことのできなかった時間的に古いＣＡＮメッセージを取り込むことができるので、ロストデータを確実に軽減することができる。
また、割込により実行されるのは、ＣＡＮメッセージの取り込みと、所定の格納域への格納のみであり、格納されたＣＡＮメッセージの処理は、別途、通常のタスク処理の対象となるため、割込によって通常の処理に支障を来すことが殆どなく、一般的な割込処理と異なり、ＣＰＵの演算負担が小さく済み、効率の良いＣＡＮ通信制御が実現できるという効果を奏するものである。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態におけるＣＡＮ通信制御装置の一構成例を示す構成図である。
【図２】本発明の実施の形態におけるＣＡＮ通信制御装置において実行されるＣＡＮ通信制御の処理手順を示すフローチャートである。
【図３】本発明の実施の形態におけるＣＡＮ通信制御装置において実行される定常タスク処理によるＣＰＵ内部でのＣＡＮデータの転送処理の手順を示すフローチャートである。
【図４】本発明の実施の形態におけるＣＡＮ通信制御処理の実行タイミングを説明する模式図である。
【発明を実施するための形態】
【００１２】
以下、本実施の形態について、図１乃至図４を参照して説明する。 
なお、以下に説明する部材及び配置は本発明を限定するものではなく、本発明の趣旨の範囲内で種々改変することができるものである。
最初に、本発明の実施の形態におけるＣＡＮ通信制御装置の一構成例について、図１を参照しつつ説明する。 
【００１３】
本発明の実施の形態におけるＣＡＮ通信制御装置２０１は、車両に搭載された電子制御ユニット１０１を用いて構成されている。 
電子制御ユニット１０１は、例えば、トルクコントロール用電子制御ユニットなどであるが、特定の電子制御ユニットに限定されるものではない。
【００１４】
ＣＡＮ通信制御装置２０１は、電子制御ユニット１０１を構成するＣＰＵ１１０と、電子制御ユニット１０１内に設けられたＣＡＮコントローラ２１０とに大別されて構成されている。
【００１５】
ＣＡＮコントローラ２１０は、ＣＡＮドライバ（図１においては「CAN DRV」と表記）２２０とメールボックス２３０とに大別されて構成されている。
かかるＣＡＮコントローラ２１０は、従来と基本的に同一の構成を有しているものである。 
【００１６】
ＣＡＮドライバ２２０は、ＣＡＮバス１に接続されて、ＣＡＮバス１を介して授受されるＣＡＮデータに対する緩衝増幅回路としての機能を有している。
メールボックス２３０は、複数のデータ格納域（図１においては、「ＭＬＢ−１」、「ＭＬＢ−２」・・・「ＭＬＢ−ｎ」と表記）２３０−１〜２３０−ｎを有するＲＡＭ等に代表される半導体記憶素子である。  
【００１７】
ＣＰＵ１１０は、それ自体、従来から良く知られているもので、電子制御ユニット１０１が、例えば、トルクコントロール用電子制御ユニットである場合には、エンジントルク制御処理等を実行する機能を有するものである。本発明の実施の形態においては、このＣＰＵ１１０がＣＡＮ通信制御処理にも用いられる構成となっている。
【００１８】
本発明の実施の形態においては、ＣＰＵ１１０内の適宜な記憶領域に、ＣＡＮ通信制御処理に用いられるＣＰＵ側メールボックス１２０と、テンポラリバッファメモリ（一時記憶メモリ）１３０とが確保されたものとなっている。
ＣＰＵ側メールボックス１２０は、ＣＡＮコントローラ２１０のメールボックス２３０のデータ格納域２３０−１〜２３０−ｎに格納されたＣＡＮメッセージを一時的に記憶するためのＲＡＭ等に代表される記憶素子である。
【００１９】
このＣＰＵ側メールボックス１２０は、ＣＡＮコントローラ２１０のメールボックス２３０のデータ格納域２３０−１〜２３０−ｎと同数のメッセージ格納域１２０−１〜１２０−ｎを有するものである。
また、このＣＰＵ側メールボックス１２０は、本発明特有のものではなく、ＣＡＮ通信の為、従来からＣＰＵ１１０内に設けられているものである。
【００２０】
テンポラリバッファメモリ１３０は、ＣＰＵ側メールボックス１２０と同様、ＲＡＭ等の半導体記憶素子である。このテンポラリバッファメモリ１３０は、後述する本発明の実施の形態におけるＣＡＮ通信制御処理の実行のために必要とされるものである。
【００２１】
また、テンポラリバッファメモリ１３０は、複数のメッセージ格納域を有するもので、図１の構成例においては、１０個のメッセージ格納域１３０−１〜１３０−１０を有する場合の例が示されている。
テンポラリバッファメモリ１３０のメッセージ格納域１３０−１〜１３０−１０の数、すなわち、換言すれば、格納可能なＣＡＮメッセージ数は任意で良く、ＣＰＵ側メールボックス１２０のメッセージ格納域１２０−１〜１２０−ｎの数等とは無関係に別個に定められる。
【００２２】
テンポラリバッファメモリ１３０のメッセージ格納域１２０−１〜１２０−ｎの数は、既存のＲＡＭ等の記憶素子における未使用（空き）の記憶領域を確保できる程度で十分である。
したがって、ＣＰＵ側メールボックス１２０とテンポラリバッファメモリ１３０は、別個の記憶素子である必要は無く、例えば、同一のＲＡＭ内に、それぞれ必要な記憶領域を確保したものとするのが好適である。このように、既存のＲＡＭ等の記憶素子の空き領域を使用することで、テンポラリバッファメモリ１３０のために新たな記憶素子を別途追加することなく、ソフトウェアの変更のみで本発明に係るＣＡＮ通信制御装置を実現することが可能である。
【００２３】
テンポラリバッファメモリ１３０の各メッセージ格納域１３０−１〜１３０−１０に対しては、ＣＡＮメッセージが格納されているか否かを判別するための受信フラグが設定されるようになっている。
本発明の実施の形態において受信フラグは、ＣＡＮメッセージが格納されている場合に”１”に設定され、ＣＡＮメッセージが格納されていない場合、換言すれば、新たにＣＡＮメッセージが格納可能な場合に”０”に設定されるものとなっている。 
【００２４】
次に、本発明の実施の形態におけるＣＡＮ通信制御処理の手順について、図２、及び、図４を参照しつつ説明する。 
最初に、本発明の実施の形態におけるＣＡＮ通信制御処理について概括的に説明する。 
本発明の実施の形態におけるＣＡＮ通信制御処理は、ＣＡＮコントローラ２１０のメールボックス２３０に取り込まれた（格納）されたＣＡＮメッセージを、効率良くＣＰＵ１１０に取り込むための処理手順である。かかるＣＡＮ通信制御処理は、従来と異なり、割り込み処理によってＣＡＮデータを適切なタイミングでＣＰＵ１１０に取り込むようにしたものである。
【００２５】
ここで、本発明のＣＡＮ通信制御処理の実行タイミングについて、従来の定常タスク処理との関係を含めて図４を参照しつつ説明する。
図４において、Ｔ１、Ｔ２は、定常タスク処理が開始されるタイミングで、その時間間隔は、例えば１０ｍsec等に設定される。この時間間隔は、あくまでも一例であり、勿論、これに限定される必要はないものである。 
定常タスク処理は、所定の制御処理を一定時間間隔で繰り返し実行する処理をいう。 
【００２６】
定常タスク処理が開始されると、予め定められ複数のタスクが所定の順に従って実行される。 
図４においては、３つのタスクTask1〜Task3が実行される場合の例が示されている。 
この例の場合、最初の第１のタスクTask1において、ＣＡＮメッセージの送信処理、及び、受信処理が、それぞれ実行されるものとなっている。
従来、ＣＡＮデータの送信処理、及び、受信処理は、このように、定常タスク処理においてのみ実行されるものであった。 
【００２７】
図４において、”Interrupt”と表記された箇所は、いわゆる割り込み処理が発生した時点であり、本発明の実施の形態におけるＣＡＮ通信制御処理は、この割り込み処理によって実行が開始されて、ＣＡＮメッセージのＣＰＵ１１０への取り込みを行うものである。
【００２８】
次に、本発明の実施の形態におけるＣＡＮ通信制御処理の手順について、図２を参照しつつ説明する。 
まず、図２に示されたＣＡＮ通信制御処は、次述する前提条件の下で実行されるものとする。 
図２に示されたＣＡＮ通信制御処理は、電子制御ユニット１０１宛のＣＡＮメッセージが外部から到達したことがＣＰＵ１１０により検出された場合に、ＣＰＵ１１０により割り込み要求が生成されることで実行されるものとなっている。
【００２９】
外部から到達したＣＡＮメッセージは、図２に示された割り込り処理によるＣＡＮ通信制御処理の実行によってＣＰＵ１１０内部へ取り込まれる場合を除けば、通常は、先に述べた定常タスク処理の実行により、ＣＡＮコントローラ２１０のメールボックス２３０からＣＰＵ側メールボックス１２０に転送されるようになっている。
【００３０】
ここで、外部から到達したＣＡＮメッセージのＣＡＮコントローラ２１０のメールボックス２３０への格納処理について説明する。
電子制御ユニット１０１に到達したＣＡＮメッセージは、最初にメールボックス２３０に格納されるが、このメールボックス２３０へのＣＡＮメッセージの格納は、アクセプタンスフィルタに基づいて行われるようになっている。
【００３１】
アクセプタンスフィルタは、受信するＣＡＮメッセージ数に対して、メールボックス２３０のデータ格納域２３０−１〜２３０−ｎの数が十分でない場合にあっても、ＣＡＮメッセージの受信を可能とするため実行される一種のフィルタ処理である。
すなわち、アクセプタンスフィルタの実行に際しては、各データ格納域２３０−１〜２３０−ｎ毎に、予め格納対象とされるＣＡＮメッセージのＩＤが設定される。
【００３２】
外部からＣＡＮメッセージが到達すると、ＣＡＮコントローラ２１０は、到達したＣＡＮメッセージのＩＤが、メールボックス２３０のデータ格納域２３０−１〜２３０−ｎのいずれかに設定されたものと一致するか否かを判定する。
到達したＣＡＮメッセージのＩＤが、アクセプタンスフィルタとして設定されたＩＤに該当する場合、そのＩＤに対応するデータ格納域にＣＡＮデータが格納される。
【００３３】
各データ格納域２３０−１〜２３０−ｎ毎に予め設定されるＩＤ数は、単一ＩＤまたは複数とされる。この場合、ＩＤの値の設定は、離散的に複数の値を設定しても良いし、また、所定の範囲の値を設定しても良く、特定の設定形式に限定されるものではない。
【００３４】
メールボックス２３０の一つのデータ格納域２３０−１〜２３０−ｎに、複数のＩＤが設定されている場合、通常、該当するＩＤのＣＡＮメッセージが到達する順に、直前に格納されたＣＡＮメッセージに上書きされるようになっている。
【００３５】
一方、メールボックス２３０のＣＡＮメッセージのＣＰＵ１１０への取り込みは、従来、定常タスク処理の実行タイミングでのみ行われるようになっていた。
したがって、定常タスク処理によりＣＰＵ１１０へ取り込まれるＣＡＮメッセージは、定常タスク処理の実行タイミングの直前に格納された最新のものが対象となる。そのため、それ以前のタイミングにメールボックス２３０格納されたＣＡＮメッセージはＣＰＵ１１０への取り込みの対象とならずロストデータとされていた。
【００３６】
図２を参照しつつ、以下に説明する本発明の実施の形態におけるＣＡＮ通信制御処理は、従来の定常タスク処理に取って代わるものではなく、定常タスク処理も従来同様に実行されることを前提としている。
したがって、ＣＡＮコントローラ２１０のメールボックス２３０に格納されたＣＡＮメッセージは、従来通り、定常タスク処理の実行時にＣＰＵ１１０のＣＰＵ側メールボックス１２０に転送、格納されるものとする。
【００３７】
次に、図２を参照しつつ説明するＣＡＮ通信制御処理の実行開始の前提条件の一つとなるＣＰＵ１１０による割り込み処理について説明する。
ＣＡＮコントローラ２１０は、外部からＣＡＮメッセージが到達するとＣＰＵ１１０へ対してＣＡＮメッセージの到達を通知する。ＣＰＵ１１０は、ＣＡＮコントローラ２１０からのＣＡＮメッセージ到達の通知を受信すると、到達したＣＡＮメッセージが、先に説明したアクセプタンスフィルタにより設定されたいずれかのＩＤに該当するものであるか否かの判定を行う。
【００３８】
ＣＰＵ１１０において、到達したＣＡＮメッセージのＩＤがアクセプタンスフィルタに設定されたＩＤに該当すると判定されると、ＣＰＵ１１０自身に割り込みを行い、図２に示されたＣＡＮ通信制御処理を開始させるようになっている。
先に説明した図４においては、”Interrupt”と表記された時点で、ＩＤ＝０ｘ３０１（１６進表示）を有するＣＡＮメッセージの到達により割り込みが発生したことが一例として示されている。
【００３９】
次に、上述の前提条件の下、ＣＰＵ１１０によって実行される割り込み処理に基づくＣＡＮ通信制御処理の手順について、図２を参照しつつ説明する。
ＣＰＵ１１０による処理が開始されると、テンポラリバッファメモリ１３０のメモリ番地が零に設定される（図２のステップＳ１００参照）。
【００４０】
ここで、テンポラリバッファメモリ番地は、テンポラリバッファメモリ１３０の各メッセージ格納域１３０−１〜１３０−１０を識別するための番地である。
この例においては、第１のメッセージ格納域１３０−１の番地を”零”として、以下、昇順に番地が付与されており、第１０のメッセージ格納域１３０−１０のメモリ番地は”９”である。 
【００４１】
次いで、テンポラリバッファメモリ番地が最大番地を下回っているか否かが判定される（図２のステップＳ１１０参照）。 
ステップＳ１１０において、テンポラリバッファメモリ番地が最大番地を下回っていると判定された場合（ＹＥＳの場合）には、次述するステップＳ１２０の処理へ進む。
【００４２】
一方、ステップＳ１１０において、テンポラリバッファメモリ番地は最大番地を下回っていないと判定された場合（ＮＯの場合）には、テンポラリバッファメモリ番地は最大番地に達したとして、一旦、一連の処理は終了されることとなる。
【００４３】
ステップＳ１２０においては、このステップＳ１２０の実行時点におけるテンポラリバッファメモリ番地の受信フラグが”１”以外か否かが判定される。すなわち、換言すれば、メッセージ格納域１３０−１〜１３０−１０のなかから、受信フラグが上書き許可に設定されているメッセージ格納域の検出が行われる。
ステップＳ１２０において、受信フラグは”１”以外であると判定された場合（ＹＥＳの場合）には、受信フラグは”０”であるとして次述するステップＳ１３０の処理へ進む。一方、ステップＳ１２０において、受信フラグは”１”以外ではないと判定された場合（ＮＯの場合）には、受信フラグは”１”であるとして、後述するステップＳ１４０の処理へ進む。 
【００４４】
ステップＳ１３０においては、受信フラグがメッセージ格納域への書き込み可能であることを意味する”０”であることに基づいて、ＣＡＮコントローラ２１０のメールボックス２３０のＣＡＮメッセージが、この受信フラグ”０”のテンポラリバッファメモリ１３０のメッセージ格納域１３０−１〜１３０−１０の一つに書き込まれる（上書き）される。
【００４５】
例えば、先の図４には、ＩＤ＝０ｘ３０１を有するＣＡＮメッセージの到達により割り込み処理が発生した例が示されているが、この場合であれば、ＩＤ＝０ｘ３０１を有するＣＡＮメッセージがＩＤ＝０ｘ３０１を受信可能とするアクセプタンスフィルタを設定したＣＡＮコントローラ２１０のメールボックス２３０から抽出され、テンポラリバッファメモリ１３０のメッセージ格納域１３０−１〜１３０−１０の一つに書き込まることとなる。
【００４６】
ＣＡＮメッセージが上書きされた後は、該当するメッセージ格納域に対する受信フラグは”１”に設定され、後述する定常タスク処理により”０”にリセットされるまでは新たなＣＡＮメッセージの上書き禁止とされる。そして、一連の処理は一旦終了されて、図示されないメインルーチンへ戻ることとなる（図２のステップＳ１３０参照）。
【００４７】
一方、ステップＳ１２０において、受信フラグは”１”以外ではないと判定された場合には、受信フラグは”１”であるとして、テンポラリバッファメモリ１３０の該当するメッセージ格納域１３０−１〜１３０−１０に、ＣＡＮメッセージの書き込みは行われない。そのため、テンポラリバッファメモリ番地が１番地更新され、先のステップＳ１１０の処理へ戻ることとなる（図２のステップＳ１４０参照）。
【００４８】
次に、定常タスク処理におけるテンポラリバッファメモリ１３０からのＣＡＮメッセージの転送処理について、図３を参照しつつ説明する。
ＣＰＵ１１０による定常タスク処理が開始されると、最初に、テンポラリバッファメモリ番地が零に設定される（図３のステップＳ２００参照）。
【００４９】
次いで、テンポラリバッファメモリ番地が最大番地を下回っているか否かが判定される（図２のステップＳ２１０参照）。 
ここで、ステップＳ２００及びＳ２１０の処理は、図２に示されたステップＳ１００及びＳ１１０の処理と同一であるので、ここでの再度の詳細な説明は省略する。
【００５０】
ステップＳ２１０において、テンポラリバッファメモリ番地が最大番地を下回っていると判定された場合（ＹＥＳの場合）には、次述するステップＳ２２０の処理へ進む。
一方、ステップＳ２１０において、テンポラリバッファメモリ番地は最大番地を下回っていないと判定された場合（ＮＯの場合）には、テンポラリバッファメモリ番地は最大番地に達したとして、一旦、一連の処理は終了されることとなる。
【００５１】
ステップＳ２２０においては、メッセージ転送が行われる。 
すなわち、ステップＳ２２０の実行時におけるテンポラリバッファメモリ番地に該当するテンポラリバッファメモリ１３０のメッセージ格納域１３０−１〜１３０−１０に格納されているＣＡＮメッセージが、そのＣＡＮメッセージの内容に応じた処理等の実行のため、ＣＡＮメッセージの内容に応じて予め定められている他のＲＡＭ等の記憶領域へ転送される。
【００５２】
次いで、ＣＡＮメッセージの転送が行われたメッセージ格納域１３０−１〜１３０−１０に対する受信フラグが”０”に設定され、以後、新たにＣＡＮメッセージの上書きが可能とされる（図２のステップ２３０参照）。
次いで、テンポラリバッファメモリ番地が１番地更新され、先のステップＳ２１０の処理へ戻り、テンポラリバッファメモリ番地が最大値に到達すまで同様の処理が繰り返されることとなる（図３のステップＳ２４０参照）。
【００５３】
なお、上述の実施例においては、外部から到達したＣＡＮデータのＩＤがアクセプタンスフィルタに設定されたＩＤに該当するとＣＰＵ１１０により判定されることが、図２に示されたＣＡＮ通信制御処理を開始する前提となる割込処理を開始する条件（割込条件）であるとして説明したが、割込条件は、これに限定され必要はない。
【００５４】
例えば、所定時間毎に割り込み処理を実行して、メールボックス２３０のデータ格納域２３０−１〜２３０−ｎをメモリ番地順に、図２のＣＡＮ通信制御処理の対象としても好適である。
また、メールボックス２３０のデータ格納域２３０−１〜２３０−ｎの各々においては、ＣＡＮメッセージが格納される頻度が異なるので、その頻度が一定の基準以下の場合には、そのデータ格納域に対応するＣＡＮメッセージが到達しても割り込み処理を実行せず、頻度の高いものについてのみ割り込み処理を実行することで、割り込みによるＣＰＵ１１０の負担を軽減するようにしても好適である。
【符号の説明】
【００５５】
１０１…電子制御ユニット 
１２０…ＣＰＵ側メールボックス 
１３０…テンポラリバッファメモリ 
２０１…ＣＡＮ通信制御装置 
２３０…メールボックス 
【図１】
2019087878.tif 000003
【図２】
2019087878.tif 000004
【図３】
2019087878.tif 000005
【図４】
2019087878.tif 000006