"メッセージと、該メッセージの種別を示す識別コードとが少なくとも格納される複数のメールボックスと、前記メールボックスから前記メッセージと前記識別コードを抽出し、前記メールボックスから抽出した前記メッセージに、前記メールボックスから抽出した前記識別コードを付与したフレームを構成して通信バス上に送信するとともに、該通信バスを介して前記フレームを受信した場合には、受信した前記フレームから前記メッセージと前記識別コードを抽出し、抽出した前記識別コードと一致する前記識別コードが格納されている前記メールボックスに、前記フレームから抽出した前記メッセージを格納する送受信手段とを備える車両用通信装置であって、互いに異なる複数の前記識別コードのうち、前記メールボックスを共有するものとして予め設定された前記識別コードを共有識別コードとして、複数の該共有識別コードのそれぞれについて、該共有識別コードが付与された前記フレームを受信するタイミングに近づいていることを示す予め設定された受信直前判断条件が成立したか否かを判断する受信直前判断手段と、前記受信直前判断条件が成立したと前記受信直前判断手段により判断された場合に、前記メールボックスの中から、前記識別コードが格納されていない前記メールボックスを選択し、選択した前記メールボックスに、前記受信直前判断条件が成立したと前記受信直前判断手段により判断された前記共有識別コードを格納する識別コード格納手段と、前記共有識別コードが格納された前記メールボックスである共有設定メールボックスに前記メッセージが格納された後に、前記共有設定メールボックスに格納された前記共有識別コードを前記共有設定メールボックスから消去する識別コード消去手段とを備えることを特徴とする車両用通信装置。前記複数のメールボックスは、前記送受信手段が送信するメッセージである送信用メッセージを格納する送信用メールボックス、および、前記送受信手段が受信するメッセージである受信用メッセージを格納する受信用メールボックスの何れかに割り当てられ、前記受信用メールボックスとして、前記共有識別コードが格納される前記メールボックスの他に、前記共有識別コード以外の前記識別コードが1つ格納される前記メールボックスを備えることを特徴とする請求項1に記載の車両用通信装置。前記共有識別コードが付与される前記フレームは、予め設定された受信周期が経過する毎に前記送受信手段により受信されるものであり、前記受信直前判断条件は、前記共有識別コードが付与される前記フレームを前記送受信手段が受信してから、前記受信周期より短くなるように予め設定された受信直前判定時間が経過することであることを特徴とする請求項1または請求項2に記載の車両用通信装置。しかし、近年、制御の高度化等により、車内LAN内の車載機器間でやり取りされるデータの種類、すなわち、受信フレームの種別が増大している。受信フレーム種別の増大に対応するために、受信フレーム種別数に応じてメールボックスの数を増やす方法が考えられる。しかし、車載機器に搭載された通信装置内に設けられているメールボックスの数の上限は予め決められている。このため、受信フレーム種別数がメールボックスの上限数を超えると、受信フレーム種別数より多くのメールボックスが設けられた通信装置に変更しなければならなくなるという問題があった。本発明は、こうした問題に鑑みてなされたものであり、予め設けられているメールボックスを用いて受信フレーム種別の増大に対応することを可能とする技術を提供することを目的とする。上記目的を達成するためになされた請求項1に記載の発明は、メッセージと、メッセージの種別を示す識別コードとが少なくとも格納される複数のメールボックスと、メールボックスからメッセージと識別コードを抽出し、メールボックスから抽出したメッセージに、メールボックスから抽出した識別コードを付与したフレームを構成して通信バス上に送信するとともに、通信バスを介してフレームを受信した場合には、受信したフレームからメッセージと識別コードを抽出し、抽出した識別コードと一致する識別コードが格納されているメールボックスに、フレームから抽出したメッセージを格納する送受信手段とを備える車両用通信装置であって、受信直前判断手段が、互いに異なる複数の識別コードのうち、メールボックスを共有するものとして予め設定された識別コードを共有識別コードとして、複数の共有識別コードのそれぞれについて、共有識別コードが付与されたフレームを受信するタイミングに近づいていることを示す予め設定された受信直前判断条件が成立したか否かを判断し、識別コード格納手段が、受信直前判断条件が成立したと受信直前判断手段により判断された場合に、メールボックスの中から、識別コードが格納されていないメールボックスを選択し、選択したメールボックスに、受信直前判断条件が成立したと受信直前判断手段により判断された共有識別コードを格納するとともに、識別コード消去手段が、共有識別コードが格納されたメールボックスである共有設定メールボックスにメッセージが格納された後に、共有設定メールボックスに格納された共有識別コードを共有設定メールボックスから消去する。このように構成された車両用通信装置では、互いに異なる複数の識別コードのうち、メールボックスを共有するものとして予め設定された識別コード共有識別コードについて、この共有識別コードが付与されたフレームを受信するタイミングに近づくと、この共有識別コード以下、受信直前共有識別コードというを、識別コードが格納されていないメールボックス以下、空きメールボックスというに格納する、これにより、この空きメールボックスは、受信直前共有識別コードが付与された受信フレームから抽出したメッセージを格納するために確保される。そして、共有識別コードが格納されたメールボックス共有設定メールボックスにメッセージが格納された後に、共有設定メールボックスに格納された共有識別コードを共有設定メールボックスから消去する。これにより、この共有設定メールボックスは、この後、他の共有識別コードを格納するために利用することが可能になる。つまり、複数の共有識別コードで1つのメールボックスを共有することができる。これにより、メッセージの受信用に設けられたメールボックスの数が、受信フレームに付与される識別コードの数よりも少ない場合であっても、メールボックスの数を増やすことなく、メッセージの受信がメールボックス不足のためにできなくなるという状況の発生を抑制することができる。なお識別コード消去手段は、共有設定メールボックスにメッセージが格納された後に共有識別コードを共有設定メールボックスから消去する。このため、共有識別コードを格納してからメッセージが格納されるまでは、この共有設定メールボックスはメッセージ受信待ち状態となる。したがって、共有設定メールボックスに共有識別コードを格納した後に通信が途絶して、共有設定メールボックスの格納対象となるメッセージが含まれるフレームを受信できない状態となると、この共有設定メールボックスのメッセージ受信待ち状態が継続する。その後、通信が回復して、共有設定メールボックスの格納対象となるメッセージが含まれるフレームを受信すると、このフレームに対応する共有設定メールボックスは既にメッセージ受信待ち状態となっているために、受信したフレームから抽出したメッセージを即時に共有設定メールボックス内に格納することができる。そして、このメッセージ格納により、通信の回復を即時に検出することが可能となる。また、請求項1に記載の車両用通信装置において、請求項2に記載のように、複数のメールボックスは、送受信手段が送信するメッセージである送信用メッセージを格納する送信用メールボックス、および、送受信手段が受信するメッセージである受信用メッセージを格納する受信用メールボックスの何れかに割り当てられ、受信用メールボックスとして、共有識別コードが格納されるメールボックスの他に、共有識別コード以外の識別コードが1つ格納されるメールボックスを備えるようにするとよい。すなわち、受信用メールボックスとして、複数の共有識別コードで共有されるメールボックス共有設定メールボックスと、1つの識別コードで専有されるメールボックス以下、専有メールボックスというを備える。これにより、重要なメッセージの受信用として専有メールボックスを割り当てることが可能となる。このため、メールボックスの共有設定に起因した異常により重要なメッセージの受信ができなくなるという状況の発生を抑制し、通信の信頼性を向上させることができる。また、請求項1または請求項2に記載の車両用通信装置において、請求項3に記載のように、共有識別コードが付与されるフレームは、予め設定された受信周期が経過する毎に送受信手段により受信されるものであり、受信直前判断条件は、共有識別コードが付与されるフレームを送受信手段が受信してから、受信周期より短くなるように予め設定された受信直前判定時間が経過することであるようにしてもよい。このように構成された車両用通信装置では、一定周期毎に受信されるフレームから抽出したメッセージを共有設定メールボックスに格納するようにすることで、受信タイミングに近づいているか否かの判断を、フレームを受信してから予め設定された受信直前判定時間が経過したか否かという簡便な方法で判断することができ、通信装置の処理負荷を低減することができる。以下に本発明の実施形態を図面とともに説明する。図1aは、本発明が適用された実施形態の車両用通信システム1の構成を示すブロック図である。図1bは、メールボックスの構成、およびメールボックスと車両制御用RAMとの対応関係を示す図である。車両用通信システム1は、車両に搭載され、図1aに示すように、複数の電子制御装置以下、ECUという10a,10b,10c,...を、共通の通信バスBSを介して相互に通信可能となるように接続することで構成され、これらECU10a,10b,10c,...のそれぞれがノードとして機能するようにされている。なお、この車両用通信システム1では、通信プロトコルとしてCANCAN;ControllerAreaNetworkが採用されている。以下、ECU10a,10b,10c...を特に区別しなでいずれか一つを指す場合は、ECU10と表記する。ECU10a,10b,10c...としては、具体的には、エンジン制御を司るエンジンECU、ブレーキ制御を司るブレーキECU、ステアリング制御を司るステアリングECU、サスペンション制御を司るサスペンションECU、ライトのオン/オフを制御するECU等、種々の電子制御装置を挙げることができる。なお図1aでは、ECU10を5つ図示しているが、通信システム1を構成するECU10の数がこれに限定されないことは言うまでもない。ECU10は、車両の各部を制御するための車両制御処理や他のECUと通信を行うための処理を実行するマイクロコンピュータ以下、マイコンという11と、通信バスBSに接続されて、マイコン11から与えられるデータ送信フレームを通信バスBSに出力するとともに、通信バスBS上のデータ受信フレームをマイコン11に入力する通信トランシーバ12とを備えている。マイコン11は、CPU,ROM,RAM,IOポート等からなるマイコンにおける周知の構成の他、CANプロトコルに従って、フレームの送受信や、どのフレームを優先的に処理するかを決定する調停制御や、通信エラー処理等を実行する通信コントローラ20を備えている。また通信コントローラ20は、ECU間で送受信されるメッセージ等を格納するためのメールボックスを複数備えたメッセージ格納部21を備える。なお、メッセージ格納部21に設けられたメールボックスのそれぞれには、図1bに示すように、ボックス番号が付与されている図1b中のMB0~MB10を参照とともに、メッセージレジスタに格納されたメッセージの種類や調停時の優先度を表すIDコードを格納するためのIDコードレジスタ図1b中のSTDIDを参照、フレームに載せて送信するメッセージまたは受信フレーム中のメッセージを格納するためのメッセージレジスタ図1b中のDATAを参照、受信が正常に完了したか否かを示す受信完了レジスタ図1b中のPXPRを参照、および、タイムスタンプを格納するためのタイムスタンプレジスタ図1b中のTIMEを参照が設けられている。またメールボックスのそれぞれは、送信用または受信用の何れかに指定されている。以下、送信用のメールボックスを送信用MB、受信用のメールボックスを受信用MBともいう。さらに受信用MBは、IDコードレジスタ内に格納されるIDコードが固定されている固定MBと、IDコードレジスタ内に格納されるIDコードが変化する共有MBとに分類されている。そして通信コントローラ20は、送信用MBに格納された値IDコード及びメッセージに基づいてデータをフレーム化して通信トランシーバ12を介して通信バスBSに送信する送信制御と、通信トランシーバ12を介して受信フレームを受信してメッセージの抽出等を行う受信制御と、抽出したメッセージを受信用MBに格納する格納制御を行う。なお、格納制御では、抽出したメッセージを受信用MBに格納した後に、メッセージを格納した受信用MBの受信完了レジスタに1を格納するとともに、フレームを受信した時刻を示す情報以下、受信時刻情報というをタイムスタンプとしてタイムスタンプレジスタに格納する。このように構成されたECU10において、マイコン11の通信コントローラ20は、共有MBに受信メッセージを格納するための共有MB受信処理を実行する。次に、マイコン11の通信コントローラ20が実行する共有MB受信処理の手順を図2を用いて説明する。図2は共有MB受信処理を示すフローチャートである。この共有MB受信処理は、マイコン11が起動している間に繰り返し実行される処理である。この共有MB受信処理が実行されると、通信コントローラ20は、まずS10にて、車両用通信システム1を構成する他のECU10から送信されるフレームのIDコードのうち、受信用MBを共有するものとして予め設定されたIDコード以下、共有IDコードというを、当該マイコン11の起動後に初めて受信するタイミング以下、初回受信タイミングというが早い順に並べて、マイコン11のRAM内に予め設けられた初回受信IDコード記憶領域に記憶する。なお、この初回受信タイミングの順番は、予め決定されており、当該マイコン11のROMに記憶されている。その後S20にて、受信完了レジスタに1が格納されている共有MBがあるか否か、すなわち、共有MBの中に、受信フレームから抽出したメッセージを格納した直後のものがあるか否かを判断する。ここで、受信完了レジスタに1が格納されている共有MB以下、受信完了共有MBというがある場合にはS20:YES、S30にて、受信完了共有MBのメッセージレジスタに格納されているメッセージを、この受信完了共有MBに対応する車両制御用RAMにコピーする。なお、車両制御用RAMは、マイコン11のRAM内に設けられたデータ記憶領域であり、メッセージ格納部21に設けられたメールボックスのそれぞれに対応して設けられている図1bを参照。これにより、マイコン11のCPUが、車両制御用RAMにコピーされたメッセージを参照し、このメッセージが示す情報を用いて、車両制御処理を実行することができる。またS30の処理が終了すると、S40にて、受信完了共有MBのタイムスタンプレジスタに格納された受信時刻情報タイムスタンプを参照し、受信完了共有MBに対応する受信準備判定値を更新する。具体的には、受信時刻情報が示す受信タイミング以下、格納受信タイミングと、受信周期から予測される受信タイミング以下、予測受信タイミングとの差分時間を受信準備判定値に反映させる。例えば、想定していた受信周期が100msであり、格納受信タイミングが予測受信タイミングよりも2ms早かった場合には、実際の受信周期は98msであると判断し、受信準備判定値を88.2ms受信周期98msに対して10小さい値に相当する値に設定する。そしてS50にて、受信完了共有MBの受信完了レジスタに0を格納するとともにIDコードレジスタとメッセージレジスタをクリアすることにより、受信完了共有MBを空き状態に遷移させ、さらにS60にて、S50でクリアした共有IDコードに対応する受信準備判定カウンタのカウントアップを開始して、S80に移行する。なお受信準備判定カウンタは、共有IDコードの全てについて、共有IDコード毎に別々に設けられている。そして受信準備判定カウンタは、カウントアップ開始指示を受けると、カウント値がリセットされカウンタ値が0となり、その後に、予め設定されたカウントアップ時間例えば、1msが経過するごとにカウント値を1増加させるカウントアップ動作を行うように構成されている。一方、受信完了レジスタに1が格納されている共有MBがない場合にはS20:NO、S70にて、受信用の共有MBの中で、IDコードレジスタに共有IDコードが格納されていないものがあるか否か、つまり、空いている共有MBがあるか否かを判断する。ここで、IDコードレジスタに共有IDコードが格納されていない共有MBが存在しない場合にはS70:NO、S20に移行して、上述の処理を繰り返す。一方、IDコードレジスタに共有IDコードが格納されていない共有MBすなわち、空いている共有MBが存在する場合にはS70:YES、S80に移行する。そしてS80に移行すると、初回受信IDコード記憶領域内に共有IDコードが記憶されているか否か、つまり、初回受信が実施されていない共有IDコード以下、初回受信未実施IDコードというがあるか否かを判断する。ここで、初回受信未実施IDコードがある場合にはS80:YES、S90にて、初回受信IDコード記憶領域内の共有IDコードの中から、初回受信タイミングが最も早い共有IDコードを抽出するとともに、空いている共有MBの中から共有MBを1つ選択し、選択した共有MBのIDコードレジスタに、抽出した共有IDコードを格納する。すなわち、共有MBを空き状態から受信準備待ち状態に遷移させ、抽出した共有IDコードに対応した受信フレームのメッセージを格納するための受信用MBを確保する。そして、初回受信IDコード記憶領域内の共有IDコードの中から、S90の処理でIDコードレジスタに格納したものと同一の共有IDコードを削除し、その後S20に移行して、上述の処理を繰り返す。一方、初回受信未実施IDコードがない場合にはS80:NO、S100にて、全ての共有IDコードについて、対応する受信準備判定カウンタの値が、共有IDコード毎に予め設定された受信準備判定値以上であるか否かを判断する。この受信準備判定値は、対応する共有IDコードが付与された受信フレームの受信周期に基づいて、対応する共有IDコードが付与された受信フレームを受信する直前に、受信準備判定カウンタの値が受信準備判定値以上となるように設定されている。例えば、或る共有IDコードが付与された受信フレームを当該ECU10が受信する周期が100msである場合には、受信準備判定値を例えば90ms受信周期100msに対して10小さい値に相当する値に設定する。すなわちS100では、受信フレームを受信するタイミングに近づいているか否かを共有IDコード毎に判定している。そして、全ての共有IDコードについて受信準備判定カウンタの値が受信準備判定値未満である場合にはS100:NO、受信準備が必要な共有IDコードはないと判断して、S20に移行して、上述の処理を繰り返す。一方、受信準備判定値以上の値となる受信準備判定カウンタがある場合にはS20:YES、S110にて、空いている共有MBの中から共有MBを1つ選択し、選択した共有MBのIDコードレジスタに、受信準備判定値以上の値となっている受信準備判定カウンタに対応する共有IDコードを格納する。すなわち、共有MBを空き状態から受信準備待ち状態に遷移させ、次に受信する受信フレームから抽出したメッセージを格納するための受信用MBを確保する。そして、S110の処理を終了すると、S20に移行して、上述の処理を繰り返す。次に、このように構成されたECU10の動作を図3,4を用いて説明する。図3は、共有MBへ初回受信未実施IDコードを格納する方法を示す図である。図4は、データの送受信の手順を示す図である。まず、マイコン11が起動すると、図3に示すように、初回受信タイミングが早い順に並べられた共有IDコードを初回受信IDコード記憶領域内に記憶し、初回受信タイミングが早い順に、空き状態の共有MBに共有IDコードを格納する。図3では、共有IDコードが、IDコードA、B,C,D.E,Fの順に並んで初回受信IDコード記憶領域内に記憶されており、共有MBが4個であるため、まず、IDコードA、B,C,Dが共有MBのIDコードレジスタに格納される矢印AL1,2,3,4を参照。その後、通信が開始されると、初回受信IDコード記憶領域内での共有IDコードの並び順に、この共有IDコードに対応するメッセージが送信されてくるため、この順番で、受信準備待ち状態の共有MBが空き状態に遷移し、初回受信IDコード記憶領域内での並び順で順次、共有IDコードが空き状態になった共有MBに格納される。図3では、まず、IDコードAを格納した共有MBが空き状態に遷移し矢印AL5を参照、この共有MBに、初回受信未実施IDコードの中で最も順番が早いIDコードEが格納され、次に、IDコードBを格納した共有MBが空き状態に遷移し、この共有MBに、初回受信未実施IDコードの中で最も順番が早いIDコードFが格納される矢印AL6を参照。また図4に示すように、データ送信側のECU10では、まず、車両制御に利用される制御データAに対応した共有IDコードが格納されている送信用MBに制御データAを格納する矢印AL11を参照。その後、送信用MBに格納された共有IDコードと制御データAに基づいてデータをフレーム化して通信トランシーバ12に出力し矢印AL12を参照、制御データAの送信タイミングになると時刻T2を参照、通信トランシーバ12からフレームを通信バスBSに送信する矢印AL13を参照。一方、データ受信側のECU10では、制御データAの受信準備タイミングになると時刻T1を参照、空き状態の共有MBのIDコードレジスタに、制御データAに対応した共有IDコードを格納して、共有MBを空き状態から受信準備待ち状態に遷移させる矢印AL21を参照。その後、通信バスBSを介して通信トランシーバ12がフレームを受信すると矢印AL14を参照、受信フレームから制御データAを抽出し、抽出したデータを、制御データAに対応した共有IDコードが格納された共有MBに格納する矢印AL15を参照。このときに、制御データAが格納された共有MBの受信完了レジスタに1が格納され、制御データAが格納された共有MBは受信完了状態に遷移する矢印AL22を参照。そして、制御データAが格納された共有MBから制御データAが抽出され、この制御データAが車両制御用RAMにコピーされる矢印AL16を参照。さらに、制御データAが格納された共有MBの受信完了レジスタに0を格納するとともにIDコードレジスタとメッセージレジスタをクリアすることにより、この共有MBは空き状態に遷移する矢印AL23を参照。このように構成されたECU10では、メッセージと、メッセージの種別を示すIDコードとが少なくとも格納される複数のメールボックスと、メールボックスからメッセージとIDコードを抽出し、メールボックスから抽出したメッセージに、メールボックスから抽出したIDコードを付与したフレームを構成して通信バスBS上に送信するとともに、通信バスBSを介してフレームを受信した場合には、受信したフレームからメッセージとIDコードを抽出し、抽出したIDコードと一致するIDコードが格納されているメールボックスに、フレームから抽出したメッセージを格納する通信コントローラ20とを備え、互いに異なる複数のIDコードのうち、受信用MBを共有するものとして予め設定されたIDコードを共有IDコードとして、複数の共有IDコードのそれぞれについて、共有IDコードが付与されたフレームを受信するタイミングに近づいているか否かを判断しS100、受信タイミングに近づいている共有IDコードがある場合にS100:YES、受信用MBの中から、IDコードが格納されていないメールボックスを選択し、選択したメールボックスに、受信タイミングに近づいていると判断された共有IDコードを格納するS110とともに、共有IDコードが格納されたメールボックス共有MBにメッセージが格納された後にS20:YES、共有MBに格納された共有IDコードを共有MBから消去するS50。すなわち、互いに異なる複数のIDコードのうち、共有IDコードについて、この共有IDコードが付与されたフレームを受信するタイミングに近づくと、この共有IDコード以下、受信直前共有IDコードというを、共有IDコードが格納されていないメールボックス以下、空きメールボックスというに格納する、これにより、この空きメールボックスは、受信直前共有IDコードが付与された受信フレームから抽出したメッセージを格納するために確保される。そして、共有IDコードが格納されたメールボックス共有MBにメッセージが格納された後に、共有MBに格納された共有IDコードを共有MBから消去する。これにより、この共有MBは、この後、他の共有IDコードを格納するために利用することが可能になる。つまり、複数の共有IDコードで1つのメールボックスを共有することができる。これにより、メッセージの受信用に設けられたメールボックスの数が、受信フレームに付与されるIDコードの数よりも少ない場合であっても、メールボックスの数を増やすことなく、メッセージの受信がメールボックス不足のためにできなくなるという状況の発生を抑制することができる。なお、共有MBにメッセージが格納された後に共有IDコードを共有設定メールボックスから消去する。このため、共有IDコードを格納してからメッセージが格納されるまでは、この共有MBはメッセージ受信待ち状態となる。したがって、共有MBに共有IDコードを格納した後に通信が途絶して、共有MBの格納対象となるメッセージが含まれるフレームを受信できない状態となると、この共有MBのメッセージ受信待ち状態が継続する。その後、通信が回復して、共有MBの格納対象となるメッセージが含まれるフレームを受信すると、このフレームに対応する共有MBは既にメッセージ受信待ち状態となっているために、受信したフレームから抽出したメッセージを即時に共有MB内に格納することができる。そして、このメッセージ格納により、通信の回復を即時に検出することが可能となる。また、受信用MBとして、共有IDコードが格納される共有MBと、共有IDコード以外のIDコードが1つ格納される固定MBを備える。これにより、重要なメッセージの受信用として固定MBを割り当てることが可能となる。このため、メールボックスの共有設定に起因した異常により重要なメッセージの受信ができなくなるという状況の発生を抑制し、通信の信頼性を向上させることができる。また、共有IDコードが付与されるフレームは、予め設定された受信周期が経過する毎にECU10により受信されるものであり、受信タイミングに近づいているか否かを、フレームを受信してから、受信周期より短くなるように予め設定された受信準備判定値に対応する時間が経過したか否かに基づいて判断する。これにより、一定周期毎に受信されるフレームから抽出したメッセージを共有MBに格納するようにすることで、受信タイミングに近づいているか否かの判断を、フレームを受信してから予め設定された受信準備判定値に対応する時間が経過したか否かという簡便な方法で判断することができ、ECU10の処理負荷を低減することができる。以上説明した実施形態において、IDコードは本発明における識別コード、通信コントローラ20は本発明における送受信手段、ECU10は本発明における車両用通信装置、S100の処理は本発明における受信直前判断手段、S110の処理は本発明における識別コード格納手段、S20とS50の処理は本発明における識別コード消去手段、受信準備判定値に対応する時間は本発明における受信直前判定時間である。以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。"