(57)【特許請求の範囲】
【請求項１】
複数のデータ部を持つオドエリアと複数のデータ部を持つアドレスエリアとを有する書き換え可能な不揮発性メモリと、
車両に設けられたセンサから出力される車速パルスをカウントし、このカウント結果に基づき、前記オドエリアの各データ部をサイクリックに使用して、走行距離情報を書き込むとともに、前記アドレスエリアの各データ部をサイクリックに使用して、前記オドエリアの各データ部のうち、最後に書き込まれたデータ部を指示する最新指示情報を書き込む走行距離情報更新部と、
走行距離を表示する際には、前記不揮発性メモリの前記アドレスエリアに書き込まれている最新指示情報を読み出し、この最新指示情報に基づき、前記不揮発性メモリの前記オドエリアに書き込まれている走行距離情報を読み出し、この走行距離情報に基づき、表示器上に車両の走行距離を表示する走行距離情報演算表示部と、
を備えたことを特徴とする電子オドメータ装置。
【請求項２】
請求項１に記載の電子オドメータ装置において、
前記走行距離情報演算表示部は、前記アドレスエリアの各データ部に書き込まれているデータを順次読み出し各データの変化点に基づき最新指示情報を求めるとともに、前記オドエリアの各データ部に書き込まれているデータを順次、読み出しながら、前記最新指示情報に基づき各データの値を補正して補正済みの値の多数決をとり、前記オドエリアに書き込まれている走行距離情報を決定する、
ことを特徴とする電子オドメータ装置。
【請求項３】
請求項１、２のいずれかに記載の電子オドメータ装置において、
前記走行距離情報更新部または前記走行距離情報演算表示部は、前記不揮発性メモリに対する書き込み処理、または読み出し処理を行なうとき、予め設定されているリトライ回数だけリトライしても正しい書き込み処理、または読み出し処理を行なうことができないときには、前記不揮発性メモリが異常であると判定して走行距離情報の更新処理、または読み出し処理を中止する、
ことを特徴とする電子オドメータ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、車両などに搭載される電子オドメータ装置に係わり、特にビット化けに対する冗長性を向上させる電子オドメータ装置に関する。
【０００２】
【従来の技術】
最近、車両用計器の電子化が進み、液晶、蛍光表示管などの電子式計器を用いて、計器の表示部を構成するようになってきている。このような電子化に伴い、走行距離を表示する走行距離計にも、電子式表示器を使用するとともに、走行距離情報をＲＡＭなどのメモリに記憶しておき、このメモリに記憶している走行距離情報に基づいて表示を行なうようになってきている。
【０００３】
しかし、ＲＡＭなどのメモリの場合、そのバックアップ電源が無くなると、記憶している走行距離情報が失われてしまい、その車両のそれまでの走行距離を表示することができなくなってしまう。
【０００４】
そこで、電源によってバックアップしなくても、記憶情報を保持することができる不揮発性メモリを使用した記憶媒体をＲＡＭなどのメモリと別個に設け、バッテリー交換などのために電源を切り離しても、走行距離情報などが失われることが無いようにしたものが開発されている。
【０００５】
図１０はこのような不揮発性メモリを有する電子オドメータ装置の一例を示すブロック図である。
【０００６】
この図に示す電子オドメータ装置１０１は、車両の車軸などに設けられたセンサから出力される車速パルスを取り込んで、これをカウントし、走行距離データを求めるＣＰＵ回路１０２と、このＣＰＵ回路１０２から出力される走行距離データに基づき、それまでの走行距離データを更新するバックアップ電源付きのＲＡＭ回路１０３と、ＣＰＵ回路１０２から出力される走行距離データに基づき、それまでの走行距離データを更新するＥＥＰＲＯＭ回路１０４と、ＣＰＵ回路１０２から出力される表示データを取り込んで、走行距離を表示する表示器１０５とを備えており、ＣＰＵ回路１０２によって、車両の車軸などに設けられたセンサから出力される車速パルスを取り込んで、これをカウントし、走行距離が所定の距離、例えば１ｋｍになる毎に、ＲＡＭ回路１０３に記憶されている走行距離データ、ＥＥＰＲＯＭ回路１０４に記憶されている走行距離データを更新しながら、最新の走行距離データに基づき、表示データを作成して、表示器１０５上に最新の走行距離を表示する。
【０００７】
この際、イグニッションスイッチがオン状態にされたとき、ＣＰＵ回路１０２によってＲＡＭ回路１０３に記憶されているキーワードの内容をチェックし、このキーワードが正しいキーワードであれば、ＲＡＭ回路１０３に記憶されている走行距離データが壊れていないと判断し、ＲＡＭ回路１０３に記憶されている走行距離データを使用して、走行距離の更新を行ない、またＲＡＭ回路１０３に記憶されているキーワードが正しいキーワードでなければ、ＥＥＰＲＯＭ回路１０４に記憶されている走行距離データを使用して、ＲＡＭ回路１０３に記憶されている走行距離データを修正した後、ＲＡＭ回路１０３に記憶されている走行距離データを使用して、走行距離の更新を行なう。
【０００８】
そして、ＲＡＭ回路１０３に記憶されている走行距離データを更新する毎に、以下に述べる手順で、ＥＥＰＲＯＭ回路１０４に記憶されている走行距離データを更新して、これらＥＥＰＲＯＭ回路１０４に記憶されている走行距離データの値と、ＲＡＭ回路１０３に記憶されている走行距離データの値とを一致させる。
【０００９】
まず、ＥＥＰＲＯＭ回路１０４が初期化された状態では、各アドレス“０”〜“４７”に対応するデータ部の値を全て“ＦＦＦＦ”にし、この状態で車両が走行を開始し、その走行距離が１ｋｍを経過する毎に、ＣＰＵ回路１０２によって、図１１の（ａ）に示すように、アドレス“０”〜“４７”を順次、選択し、各アドレス“０”〜“４７”に対応するデータ部に“００００”を書き込む。
【００１０】
この後、走行距離が“４８ｋｍ”を経過し、全てのデータ部に“００００”が書き込まれた状態で、さらに車両が走行すると、その走行距離が１ｋｍを経過する毎に、ＣＰＵ回路１０２によって、図１１の（ｂ）に示すように、アドレス“０”〜“４７”を順次、選択し、各アドレス“０”〜“４７”に対応するデータ部に“０００１”を書き込む。
【００１１】
以下、さらに車両が走行し、その走行距離が“４８ｋｍ”を越える毎に、同様な手順で、データ部に書き込まれる値をインクリメントし、図１１の（ｃ）に示すように、走行距離が“９９９９９９”になったとき、全てのデータ部に書き込まれている値を“ＦＦＦＦ”に戻し、走行距離を初期化する。
【００１２】
そして、ＲＡＭ回路１０３に記憶されている走行距離データを修正するとき、ＥＥＰＲＯＭ回路１０４の各データ部に記憶されている値を読み出して、下記に示す演算式で走行距離データを計算し、この計算結果に基づき、ＲＡＭ回路１０３に記憶されている走行距離データを修正する。
【００１３】
走行距離＝４８×（ポイントデータの値＋１）＋アドレスポイント
【００１４】
【発明が解決しようとする課題】
ところで、このような従来の電子オドメータ装置１０１では、ＥＥＰＲＯＭ回路１０４に記憶されている走行距離データに誤りがあるとき、ポインタＰＴが指定している現在のアドレスが“０”以外のアドレスであれば、図１２に示すように、現在のポインタＰＴで指定されたアドレスのデータ部に書き込まれているデータ（現データ）の値Ｄnと、１つ前のアドレスのデータ部に書き込まれているデータ（前データ）のＤn-1との差を求め、この差に応じて、複数ある修正手続きのいずれるかを使用して、データ部に書き込まれているデータの値を修正しなければならない。
【００１５】
また、前記ポインタＰＴが指定している現在のアドレスが“０”であれば、図１３に示すように、アドレス“０”のデータ部に書き込まれているデータの値Ｄ0と、アドレス“１”のデータ部に書き込まれているデータのＤ1との差を求め、この差に応じて、複数ある修正手続きのいずれるかを使用して、データ部に書き込まれているデータの値を修正しなければならない。
【００１６】
このため、ＥＥＰＲＯＭ回路１０４から走行距離データを読み出す際のプログラムが複雑になって、処理時間が長くなってしまうとともに、プログラムを格納しておくメモリの容量が大きくなってしまうという問題があった。
【００１７】
本発明は上記の事情に鑑み、請求項１では、車両の走行距離を計算する際、不揮発性メモリ素子のみを使用して、車両の走行距離を求めることができ、これによってＲＡＭ素子を使用しない分だけ、部品点数を少なくして、コストを低減させることができるとともに、ビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる電子オドメータ装置を提供することを目的としている。
【００１８】
また、請求項２では、不揮発性メモリ素子に記憶される走行距離データのビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる電子オドメータ装置を提供することを目的としている。
【００１９】
また、請求項３では、不揮発性メモリ素子に走行距離データを記憶させる際または記憶させている走行距離データを読み出す際、何らかの理由により、正しい書き込み処理、正しい読み出し処理を行なえないとき、不揮発性メモリ素子が異常になったのか、単に一時的な書き込みエラー、一時的な読み出しエラーが発生したのかを区別することができ、これによって不揮発性メモリ素子の異常に起因する走行距離データの誤りを無くすことができる電子オドメータ装置を提供することを目的としている。
【００２０】
【課題を解決するための手段】
上記の目的を達成するために本発明は、請求項１では、複数のデータ部を持つオドエリアと複数のデータ部を持つアドレスエリアとを有する書き換え可能な不揮発性メモリと、車両に設けられたセンサから出力される車速パルスをカウントし、このカウント結果に基づき、前記オドエリアの各データ部をサイクリックに使用して、走行距離情報を書き込むとともに、前記アドレスエリアの各データ部をサイクリックに使用して、前記オドエリアの各データ部のうち、最後に書き込まれたデータ部を指示する最新指示情報を書き込む走行距離情報更新部と、走行距離を表示する際には、前記不揮発性メモリの前記アドレスエリアに書き込まれている最新指示情報を読み出し、この最新指示情報に基づき、前記不揮発性メモリの前記オドエリアに書き込まれている走行距離情報を読み出し、この走行距離情報に基づき、表示器上に車両の走行距離を表示する走行距離情報演算表示部とを備えたことを特徴としている。
【００２１】
請求項２では、請求項１に記載の電子オドメータ装置において、前記走行距離情報演算表示部は、前記アドレスエリアの各データ部に書き込まれているデータを順次読み出し各データの変化点に基づき最新指示情報を求めるとともに、前記オドエリアの各データ部に書き込まれているデータを順次、読み出しながら、前記最新指示情報に基づき各データの値を補正して補正済みの値の多数決をとり、前記オドエリアに書き込まれている走行距離情報を決定することを特徴としている。
【００２２】
請求項３では、請求項１、２のいずれかに記載の電子オドメータ装置において、前記走行距離情報更新部または前記走行距離情報演算表示部は、前記不揮発性メモリに対する書き込み処理、読み出し処理を行なうとき、予め設定されているリトライ回数だけリトライしても正しい書き込み処理、または読み出し処理を行なうことができないときには、前記不揮発性メモリが異常であると判定して走行距離情報の更新処理、または読み出し処理を中止することを特徴としている。
【００２３】
上記の構成により、請求項１では、走行距離情報更新部は、車両に設けられたセンサから出力される車速パルスをカウントし、このカウント結果に基づき、不揮発性メモリのオドエリアの各データ部をサイクリックに使用して、走行距離情報を書き込むとともに、前記不揮発性メモリのアドレスエリアの各データ部をサイクリックに使用して、前記オドエリアの各データ部のうち、最後に書き込まれたデータ部を指示する最新指示情報を書き込む。前記表示器上に車両の走行距離を表示するとき、走行距離情報演算表示部は、前記不揮発性メモリの前記アドレスエリアに書き込まれている最新指示情報を読み出し、この最新指示情報に基づき、前記不揮発性メモリの前記オドエリアに書き込まれている走行距離情報を読み出し、この走行距離情報に基づき、表示器上に車両の走行距離を表示する。これにより、車両の走行距離を計算する際、不揮発性メモリ素子のみを使用して、車両の走行距離を求め、これによってＲＡＭ素子を使用しない分だけ、部品点数を少なくして、コストを低減させるとともに、ビット化けに対する冗長性を高め、不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくする。
【００２４】
請求項２では、走行距離情報演算表示部は、前記アドレスエリアの各データ部に書き込まれているデータを順次読み出し、各データの変化点に基づき、最新指示情報を求めるとともに、前記オドエリアの各データ部に書き込まれているデータを順次、読み出しながら、前記最新指示情報に基づき、各データの値を補正して、補正済みの値の多数決をとり、前記オドエリアに書き込まれている走行距離情報を決定する。これにより、不揮発性メモリ素子に記憶される走行距離データのビット化けに対する冗長性を高め、不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくする。
【００２５】
請求項３では、走行距離情報更新部または走行距離情報演算表示部は、前記不揮発性メモリに対する書き込み処理、読み出し処理を行なうとき、予め設定されているリトライ回数だけ、リトライしても、正しい書き込み処理、読み出し処理を行なうことができないとき、前記不揮発性メモリが異常であると判定して、走行距離情報の更新処理、または読み出し処理を中止する。これにより、不揮発性メモリ素子に走行距離データを記憶させる際または記憶させている走行距離データを読み出す際、何らかの理由により、正しい書き込み処理、正しい読み出し処理を行なえないとき、不揮発性メモリ素子が異常になったのか、単に一時的な書き込みエラー、一時的な読み出しエラーが発生したのかを区別し、不揮発性メモリ素子の異常に起因する走行距離データの誤りを無くす。
【００２６】
【発明の実施の形態】
図１は本発明による電子オドメータ装置の実施の形態を示すブロック図である。
【００２７】
この図に示す電子オドメータ装置１は、車両の車軸などに設けられたセンサから出力される車速パルスを取り込んで、これをカウントして、走行距離データを求めるＣＰＵ回路２と、図２に示すように、アドレス“０”〜“１７”がオドエリア７として使用され、アドレス“１７”〜“３３”がアドレスエリア８として使用され、ＣＰＵ回路２から出力される走行距離データに基づき、それまでの走行距離データを更新するＥＥＰＲＯＭ回路３と、ＣＰＵ回路２から出力される表示データを取り込んで、走行距離を表示する表示器４とを備えている。
【００２８】
また、ＣＰＵ回路２は、その機能上、走行距離情報更新部５と、走行距離情報演算表示部６とを備え、センサから出力される車速パルスを取り込んでカウントし、走行距離が所定の距離、例えば１ｋｍになる毎に、ＥＥＰＲＯＭ回路３に記憶されている走行距離データを更新しながら、最新の走行距離データに基づき、表示データを作成して表示器４上に最新の走行距離を表示する。
【００２９】
次に、図１に示すブロック図、図２に示す説明図を参照しながら、この実施の形態の動作について詳細に説明する。
【００３０】
＜ＥＥＰＲＯＭ回路３に対する書き込み動作＞
この処理は、主に、ＣＰＵ回路２の走行距離情報更新部５で実行される。まず、車両の走行距離が“０”であるとき、オドエリア７のアドレス“０”〜“１６”にデータ“００００”が書き込まれ、ポインタＡがアドレス“０”を示すようポインタＡの値が設定されるとともに、アドレスエリア８のアドレス“１７”〜“３３”にデータ“００００”が書き込まれ、ポインタＢがアドレス“１７”を示すようにポインタＢの値が設定される。
【００３１】
この状態で、イグニッションスイッチがオン状態にされ、車両が走行を開始すると、図３のフローチャートに示すように、ＣＰＵ回路２によって、車両の車軸などに設けられたセンサから出力される車速パルスがカウントされて、走行距離が所定の距離、例えば１ｋｍ（オドカウンタの値で、“２５４８”）を経過した時点で（ステップＳＴ１）、図４の（ａ）に示すように、前記オドカウンタが初期化されて（ステップＳＴ２）、アドレスエリア８のアドレス“１７”にデータ“ＦＦＦＦ”が書き込まれ、ポインタＢが１つ進められるとともに（ステップＳＴ３）、オドエリア７のアドレス“０”にデータ“０００１”が書き込まれて、ポインタＡが１つ進められた後（ステップＳＴ４）、表示用オドデータの値が“１”だけインクリメントされる（ステップＳＴ５）。
【００３２】
そして、アドレスエリア８、オドエリア７に対するデータの書き込を行なったとき、データが正しく書き込まれていないことを示すベリファイエラー（Verify Error）が発生しても、予め設定されている回数（リトライ回数）、例えば３回まで、上述した書き込み処理が行わわれる。
【００３３】
次いで、ＣＰＵ回路２によって、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めたかどうかがチェックされ、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータが書き込めたとき（ステップＳＴ６）、前記表示用オドデータの値に基づき、表示データが作成され、表示器４上に走行距離“１ｋｍ”が表示される（ステップＳＴ７）。
【００３４】
また、このとき、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めなければ（ステップＳＴ６）、ＣＰＵ回路２によって、表示器４上に表示されている走行距離がホールドされて、ＥＥＰＲＯＭ回路３に対するアクセスが中止される（ステップＳＴ８）。
【００３５】
この後、車両がさらに走行して、オドカウンタの値が、再度、“２５４８”になった時点で、前記オドカウンタが初期化されて、図４の（ｂ）に示すように、アドレスエリア８のアドレス“１８”にデータ“ＦＦＦＦ”が書き込まれ、ポインタＢが１つ進められるとともに、オドエリア７のアドレス“１”にデータ“０００１”が書き込まれて、ポインタＡが１つ進められた後、表示用オドデータの値が“１”だけインクリメントされる（ステップＳＴ１〜ＳＴ５）。
【００３６】
そして、アドレスエリア８、オドエリア７に対するデータの書き込を行なったとき、データが正しく書き込まれていないことを示すベリファイエラーが発生しても、予め設定されている回数（リトライ回数）、例えば３回まで、上述した書き込み処理が行わわれる。
【００３７】
次いで、ＣＰＵ回路２によって、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めたかどうかがチェックされ、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めたとき（ステップＳＴ６）、前記表示用オドデータの値に基づき、表示データが作成され、表示器４上に走行距離“２ｋｍ”が表示される（ステップＳＴ７）。
【００３８】
また、このとき、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めなければ（ステップＳＴ６）、ＣＰＵ回路２によって、表示器４上に表示されている走行距離がホールドされて、ＥＥＰＲＯＭ回路３に対するアクセスが中止される（ステップＳＴ８）。
【００３９】
以下、車両がさらに走行して、オドカウンタの値が、再度、“２５４８”になる毎に、上述したアドレスエリア８に対するデータ“ＦＦＦＦ”の書き込み処理、ポインタＢのインクリメント処理、オドエリア７に対するデータ“０００１”の書き込み処理、ポインタＡのインクリメント処理、表示用オドデータのインクリメント処理などが順次、行われて、ＥＥＰＲＯＭ回路３に記憶されている走行距離データが更新されるとともに、表示器４上に表示されている走行距離が更新される（ステップＳＴ１〜ＳＴ８）。
【００４０】
そして、図５の（ａ）に示すように、アドレスエリア８のアドレス“３３”に対するデータ“ＦＦＦＦ”の書き込み処理、ポインタＢのインクリメント処理、オドエリア７のアドレス“１６”に対するデータ“０００１”の書き込み処理、ポインタＡのインクリメント処理、表示用オドデータのインクリメント処理などが行われた後、車両がさらに走行して、オドカウンタの値が、再度、“２５４８”になったとき、図５の（ｂ）に示すように、アドレスエリア８のアドレス“１７”にデータ“００００”が書き込まれ、ポインタＢが１つ進められるとともに、オドエリア７のアドレス“０”にデータ“０００２”が書き込まれて、ポインタＡが１つ進められた後、表示用オドデータの値が“１”だけインクリメントされる（ステップＳＴ１〜ＳＴ８）。
【００４１】
そして、アドレスエリア８、オドエリア７に対するデータを書き込を行なったとき、データが正しく書き込まれていないことを示すベリファイエラー（Verify Error）が発生しても、予め設定されている回数（リトライ回数）、例えば３回まで、上述した書き込み処理が行わわれる。
【００４２】
次いで、ＣＰＵ回路２によって、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めたかどうかがチェックされ、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めたとき、前記表示用オドデータの値に基づき、表示データが作成され、表示器４上に走行距離“１８ｋｍ”が表示される（ステップＳＴ１〜ＳＴ８）。
【００４３】
また、このとき、３回以内のリトライ回数で、アドレスエリア８、オドエリア７に対し、正しくデータを書き込めなければ（ステップＳＴ６）、ＣＰＵ回路２によって、表示器４上に表示されている走行距離がホールドされて、ＥＥＰＲＯＭ回路３に対するアクセスが中止される（ステップＳＴ８）。
【００４４】
以下、車両がさらに走行して、オドカウンタの値が、再度、“２５４８”になる毎に、上述したアドレスエリア８に対するデータ“ＦＦＦＦ”または“００００”の書き込み処理、ポインタＢのインクリメント処理、オドエリア７に対するデータ“０００２”、“０００３”、…の書き込み処理、ポインタＡのインクリメント処理、表示用オドデータのインクリメント処理などが順次、行われて、ＥＥＰＲＯＭ回路３に記憶されている走行距離データが更新されるとともに、表示器４上に表示されている走行距離が更新される（ステップＳＴ１〜ＳＴ７）。
【００４５】
そして、車両が停止状態にされて、イグニッションスイッチがオフ状態にされたとき、ＣＰＵ回路２が動作を停止して、上述したＥＥＰＲＯＭ回路３に記憶されている走行距離データがそのまま保持される。
【００４６】
＜ＥＥＰＲＯＭ回路３に対する書き込み動作＞
書き込み動作は、主にＣＰＵ回路２の走行距離情報演算表示部６で実行される処理である。車両のイグニッションスイッチが再度、オン状態にされたとき、図６のフローチャートに示すように、ＣＰＵ回路２によって、ＥＥＰＲＯＭ回路３を構成しているアドレスエリア８の先頭アドレス“１７”に記憶されているデータが２回、連続して読み出され、各読み出し処理で得られたデータが同一の値であるとき（ステップＳＴ１１）、このデータを構成する最上位ビットを除く下位１５ビットの多数決が求められ、この多数決結果に基づき、前記データの値が“ＦＦＦＦ”か、“００００”かが判定される（ステップＳＴ１２）。
【００４７】
次いで、ＣＰＵ回路２によって、アドレスエリア８を構成する次のアドレス“１８”に記憶されているデータが２回、連続して読み出され、各読み出し処理で得られたデータが同一の値であるとき（ステップＳＴ１１）、このデータを構成する最上位ビットを除く下位１５ビットの多数決が求められ（ステップＳＴ１２）、この多数決結果に基づき、前記データの値が“ＦＦＦＦ”か、“００００”かが判定された後、先頭アドレス“１７”に書き込まていたデータの値と、次のアドレス“１８”に書き込まれていたデータの値とが比較される。
【００４８】
そして、これらが同一であれば（ステップＳＴ１３）、ＣＰＵ回路２によって、残っているアドレス“１９”〜“３３”に記憶されている各データが順次、２回ずつ、アクセスされて、これらアドレス“１９”に記憶されているデータ〜最終アドレス“３３”に記憶されているデータが順次、読み出されるとともに（ステップＳＴ１１）、各データの最上位ビットを除く下位１５ビットの多数決がとられて、各データの値が“ＦＦＦＦ”か、“００００”かが判定された後（ステップＳＴ１２）、アドレス“１８”〜“３３”に記憶されていたデータの値が変化しているアドレスが見つけ出され、このアドレスの値がポイントＢに格納される。
【００４９】
これにより、図７に示すように、アドレス“１７”、“１８”にデータ“ＦＦＦＦ”が記憶され、アドレス“１９”にデータ“００００”が記憶されていれば、ＣＰＵ回路２によって、アドレス“１９”に記憶されているデータが読み出されたとき、データが変化していると判定されて、アドレス“１９”を示す値がポイントＢに格納される。
【００５０】
また、最終アドレス“３３”まで、アクセスしても、データの変化点が見つからないときには、ＣＰＵ回路２によって、先頭アドレス“１７”から最終アドレス“３３”まで、同じ値のデータが書き込まれていると判定されて、先頭アドレス“１７”を示す値がポイントＢに格納される。
【００５１】
この後、ＣＰＵ回路２によって、ポインタＢに格納されている値から“１７”が減算され、これによって得られた値がポインタＡに格納されるとともに、図８に示すように、上述した変化点検出処理結果に基づき、“００００”または“ＦＦＦＦ”のいずれかが選択され、このデータがポインタＢで指定されたアドレスに書き込まれる次のデータとして記憶される（ステップＳＴ１３）。
【００５２】
次いで、ＣＰＵ回路２によって、オドエリア７を構成する各アドレス“０”〜“１６”に格納されている各データが順次、読み出されるとともに（ステップＳＴ１４）、図９に示すように、内部に設けられているメモリ（ＣＰＵ回路２の内部メモリ）９上で、各アドレス“０”〜“１６”に記憶されていたデータのうち、先頭アドレス“０”に記憶されていたデータからポインタＡの値で指定されたアドレスの１つ前のアドレスに記憶されていたデータがそのままの値に保持されたまま、ポインタＡの値で指定されるアドレスに記憶されていたデータから最終アドレス“１６”に記憶されていたデータに“１”が加算されて、各データの値がそれぞれ比較される（ステップＳＴ１５）。
【００５３】
そして、ＣＰＵ回路２によって、各データの値のうち、同じ値を持つデータの個数がカウントされ、同じ値を持つデータの個数が１０個以上であるとき（ステップＳＴ１６）、このデータの値がポインタＡで指定されたアドレスに書き込まれる次のデータの値として記憶され、また全てのデータについて、データの比較処理を行なっても、同じ値を持つデータの個数が１０個に満たなければ、オドホールド状態にされて、同じ値を持つデータの個数が最も多いデータの値がポインタＡで指定されたアドレスに書き込まれる次のデータの値として記憶される（ステップＳＴ１７）。
【００５４】
この後、ＣＰＵ回路２によって、上述したアドレスエリア８、オドエリア７に対するデータの読み込み処理を行なう際、読み込み開始信号を受信できず、リトライを行なった回数が３回以下かどうか、アドレスエリア８、オドエリア７に対するデータの読み込み処理を２回、連続して行ない、各データの値が異なっていたかどうかがチェックされる。
【００５５】
そして、３回以下のリトライ回数で、アドレスエリア８、オドエリア７に記憶されているデータを正しく読み込めなかったとき、あるいはアドレスエリア８、オドエリア７に対するデータの読み込み処理を２回、連続して行ない、各データの値が異なっていたとき（ステップＳＴ１８）、ＥＥＰＲＯＭ回路３に異常が発生したと判定されて、ＥＥＰＲＯＭ回路３に対する以後のアクセスが中止されて、表示器４上に表示される走行距離がブランク状態にされる（ステップＳＴ２０）。
【００５６】
また、この処理で、ＥＥＰＲＯＭ回路３が正常であると判定されたとき（ステップＳＴ１８）、ＣＰＵ回路２によって、下記に示す演算式で走行距離データが計算され、この計算処理で得られた走行距離データに基づき、表示データが作成され、表示器４上に走行距離が表示される（ステップＳＴ１９）。
【００５７】
走行距離＝（次のデータの値−１）×１７＋ポイントＡの値
この後、車両の走行が開始されると、ＣＰＵ回路２によって、上述したＥＥＰＲＯＭ回路３に対する書き込み動作が開始されて、走行距離が“１ｋｍ”になる毎に、このＥＥＰＲＯＭ回路３に書き込まれている走行距離データが更新される（ステップＳＴ１１〜ＳＴ２０）。
【００５８】
このように、この実施の形態においては、ＣＰＵ回路２によって、車両の車軸などに設けられたセンサから出力される車速パルスを取り込んで、これをカウントし、走行距離が所定の距離、例えば１ｋｍになる毎に、ＥＥＰＲＯＭ回路３に記憶されている走行距離データを更新しながら、最新の走行距離データに基づき、表示データを作成して、表示器４上に最新の走行距離を表示するようにしているので、車両の走行距離を計算する際、ＥＥＰＲＯＭ回路３などのような不揮発性メモリ素子のみを使用して、車両の走行距離を求めることができ、これによってＲＡＭ素子を使用しない分だけ、部品点数を少なくして、コストを低減させることができるとともに、ビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる（請求項１の効果）。
【００５９】
また、この実施の形態では、ＥＥＰＲＯＭ回路３のアドレスエリア８の各データ部に書き込まれているデータを順次読み出し、各データの変化点に基づき、最新指示情報を求めるとともに、ＥＥＰＲＯＭ回路３のオドエリア７の各データ部に書き込まれているデータを順次、読み出しながら、前記最新指示情報に基づき、各データの値を補正して、補正済みの値の多数決をとり、オドエリア７に書き込まれている走行距離情報を決定するようにしているので、不揮発性メモリ素子に記憶される走行距離データのビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる（請求項２の効果）。
【００６０】
また、この実施の形態では、ＥＥＰＲＯＭ回路３に対する書き込み処理、読み出し処理を行なうとき、予め設定されているリトライ回数だけ、リトライしても、正しい書き込み処理、読み出し処理を行なうことができないとき、ＥＥＰＲＯＭ回路３が異常であると判定して、走行距離情報の更新処理、または読み出し処理を中止するようにしているので、ＥＥＰＲＯＭ回路３に走行距離データを記憶させる際または記憶させている走行距離データを読み出す際、何らかの理由により、正しい書き込み処理、正しい読み出し処理を行なえないとき、ＥＥＰＲＯＭ回路３が異常になったのか、単に一時的な書き込みエラー、一時的な読み出しエラーが発生したのかを区別することができ、これによってＥＥＰＲＯＭ回路３の異常に起因する走行距離データの誤りを無くすことができる（請求項３の効果）。
【００６１】
【発明の効果】
以上説明したように本発明によれば、請求項１の電子オドメータ装置では、車両の走行距離を計算する際、不揮発性メモリ素子のみを使用して、車両の走行距離を求めることができ、これによってＲＡＭ素子を使用しない分だけ、部品点数を少なくして、コストを低減させることができるとともに、ビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる。
【００６２】
また、請求項２の電子オドメータ装置では、不揮発性メモリ素子に記憶される走行距離データのビット化けに対する冗長性を高めることができ、これによって不揮発性メモリ素子に記憶される走行距離データを読み出すときに使用するプログラムを簡素化して、プログラム格納エリアの容量を小さくすることができる。
【００６３】
また、請求項３の電子オドメータ装置では、不揮発性メモリ素子に走行距離データを記憶させる際または記憶させている走行距離データを読み出す際、何らかの理由により、正しい書き込み処理、正しい読み出し処理を行なえないとき、不揮発性メモリ素子が異常になったのか、単に一時的な書き込みエラー、一時的な読み出しエラーが発生したのかを区別することができ、これによって不揮発性メモリ素子の異常に起因する走行距離データの誤りを無くすことができる。
【図面の簡単な説明】
【図１】本発明による電子オドメータ装置の実施の形態を示すブロック図である。
【図２】図１に示すＥＥＰＲＯＭ回路の詳細なメモリ構成を模式的に示す説明図である。
【図３】図１に示すＥＥＰＲＯＭ回路の書き込み動作を示すフローチャートである。
【図４】図１に示すＥＥＰＲＯＭ回路の書き込み動作を模式的に示す説明図である。
【図５】図１に示すＥＥＰＲＯＭ回路の書き込み動作を模式的に示す説明図である。
【図６】図１に示すＥＥＰＲＯＭ回路の読み込み動作を示すフローチャートである。
【図７】図１に示すＥＥＰＲＯＭ回路の読み込み動作を模式的に示す説明図である。
【図８】図１に示すＥＥＰＲＯＭ回路の読み込み動作を模式的に示す説明図である。
【図９】図１に示すＣＰＵ回路内に設けられるメモリの使用例を模式的に示す説明図である。
【図１０】従来から知られている電子オドメータ装置の一例を示すブロック図である。
【図１１】図１０に示すＥＥＰＲＯＭ回路の使用例を模式的に示す説明図である。
【図１２】図１０に示すＥＥＰＲＯＭ回路に記憶されているデータの修正動作を模式的に示す説明図である。
【図１３】図１０に示すＥＥＰＲＯＭ回路に記憶されているデータの修正動作を模式的に示す説明図である。
【符号の説明】
１：電離オドメータ装置
２：ＣＰＵ回路
３：ＥＥＰＲＯＭ回路
４：表示器
５：走行距離情報更新部
６：走行距離情報演算表示部
７：オドエリア
８：アドレスエリア
９：メモリ
【図１】
0003967457.tif 000002
【図２】
0003967457.tif 000003
【図３】
0003967457.tif 000004
【図４】
0003967457.tif 000005
【図５】
0003967457.tif 000006
【図６】
0003967457.tif 000007
【図７】
0003967457.tif 000008
【図８】
0003967457.tif 000009
【図９】
0003967457.tif 000010
【図１０】
0003967457.tif 000011
【図１１】
0003967457.tif 000012
【図１２】
0003967457.tif 000013
【図１３】
0003967457.tif 000014