(57)【特許請求の範囲】
【請求項１】
マイクロコントローラの中のコントローラエリアネットワークモジュールを初期化するための方法であって、
該方法は、
−コントローラエリアネットワーク信号の連続的な立ち下がりエッジまたは連続的な立ち上がりエッジの間の時間を測定することを含み、
−該測定された時間をソートすることにより、第１のソートされたリストを提供することと、
−該ソートされたリストのうちの隣接する測定された時間の間の差値を決定することと、
−該差値をソートすることにより、第２のソートされたリストを提供することと、
−該第２のソートされたリストから第１の差値を選択し、該第１の差値から第１のビットレート周波数を決定することと、
−該選択されたビットレート周波数を使用して、該コントローラエリアネットワークモジュールを初期化することと、
−コントローラエリアネットワーク信号フレームを受信することと、
−エラーが生じたか否かを決定することと、
−エラーが生じた場合、有効コントローラエリアネットワーク周波数が見つけられるまで、次の周波数を選択し、該コントローラエリアネットワークモジュールを初期化することを繰り返すことと
によって特徴付けられる、方法。
【請求項２】
外部コントローラエリアネットワークラインを前記マイクロコントローラの捕捉モジュールの入力と連結することにより、前記時間を測定することをさらに含む、請求項１に記載の方法。
【請求項３】
コントローラエリアネットワーク信号を前記マイクロコントローラの捕捉モジュールの入力に内部的にフィードすることにより、前記時間を測定することをさらに含む、請求項１に記載の方法。
【請求項４】
前記差値をソートするステップの後に、
無効周波数をもたらす差値を破棄するステップをさらに含む、請求項１に記載の方法。
【請求項５】
タイマおよび捕捉ユニットは、前記時間を測定するために使用される、請求項１に記載の方法。
【請求項６】
コントローラエリアネットワーク信号の連続的な立ち下がりエッジまたは連続的な立ち上がりエッジの間の所定の数、特に１０の時間が、測定される、請求項３に記載の方法。
【請求項７】
有効周波数が見つけられない場合、前記方法が繰り返される、請求項１に記載の方法。
【請求項８】
前記差値から周波数を決定するステップは、ルックアップテーブルを使用して行われる、請求項１に記載の方法。
【請求項９】
前記差値から周波数を決定するステップは、丸めまたは切り捨てを使用して周波数を計算する、請求項１に記載の方法。
【請求項１０】
前記マイクロコントローラは、前記方法を行うようにプログラムされる、請求項１に記載の方法。
【請求項１１】
前記マイクロコントローラは、前記方法を行う状態機械を備える、請求項１に記載の方法。
【請求項１２】
マイクロコントローラであって、
該マイクロコントローラは、
中央処理ユニットと、
コントローラエリアネットワークモジュールと、
タイマと、
該タイマと連結された捕捉モジュールと
を備え、
該マイクロコントローラは、請求項１〜１１のいずれか一項に記載の方法を行うことによって、コントローラエリアネットワーク周波数を自動的に検出するように構成されている、マイクロコントローラ。
【請求項１３】
前記捕捉モジュールは、エッジ検出器を備え、該エッジ検出器は、前記タイマを捕捉レジスタと連結するドライバを制御する、請求項１２に記載のマイクロコントローラ。
【請求項１４】
制御可能ドライバを備え、該制御可能ドライバは、コントローラエリアネットワークバスモジュールの入力と前記捕捉モジュールの入力との間に連結されている、請求項１２に記載のマイクロコントローラ。
【請求項１５】
前記状態機械を制御するための特殊機能レジスタを備える、請求項１２に記載のマイクロコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
（技術分野）
本発明は、コントローラエリアネットワーク（ＣＡＮ）モジュールを有するマイクロコントローラに関する。
【背景技術】
【０００２】
（背景）
コントローラエリアネットワーク（ＣＡＮ）は、高レベルのセキュリティによって、分散型リアルタイム制御を効率的にサポートするシリアル通信プロトコルである。ＣＡＮの用途は、高速デジタル通信ネットワークから低コスト多重配線まで及ぶ。ＣＡＮは、リアルタイム用途のための高信頼性シリアルデータ通信バスである。ＣＡＮは、１秒あたり最大１メガビットのデータレートで動作し、優れたエラー検出および閉じ込め性能を有し、元来は、自動車内において使用するために開発された。ＣＡＮの背後にある動機は、自動車用電子機器、エンジン制御ユニット、センサ、横滑り防止システム等の相互運用性を改善する一方、配線用ハーネス重量および複雑性を低減させることによって、自動車をより信頼性があり、安全、かつ燃料効率的にするというものであった。ＣＡＮの出現以来、産業オートメーションおよび自動車／トラック用途において、ＣＡＮプロトコルが、広く普及している。騒音環境におけるＣＡＮバスのロバスト性ならびに故障状態の検出およびそこからの回復能力は、ＣＡＮを産業制御機器、医療機器、試験機器、モバイルおよびポータブル機械、器具等と併用するために好適なものにしている。
【０００３】
ＣＡＮは、例えば、２本のワイヤを備える１つの論理バスを有する非同期シリアルバスシステムである。等しいバスノードを有する開放型の線形バス構造を有する。ＣＡＮバスは、２つ以上のノードから成る。バス上のノードの数は、他のノードの通信を妨害せずに、動的に変更され得る。
【０００４】
ＣＡＮ論理バスは、「ワイヤードＯＲ」機構に対応し、「劣性」ビット（大部分は、必ずしもではないが、論理レベル「１」に相当する）が、「優性」ビット（大部分は、論理レベル「０」）によって上書きされる。いずれのバスノードも、優性ビットを送信していない限り、バスラインは、劣性状態にあるが、任意のバスノードからの優性ビットは、優性バス状態を生成する。したがって、ＣＡＮバスラインのために、２つの可能性として考えられるビット状態（優性および劣性）を伝送可能である、媒体が選択される。使用される一般的物理的媒体は、ツイストワイヤ対である。バスワイヤは、したがって、「ＣＡＮＨ」および「ＣＡＮＬ」と呼ばれ、直接、ＣＡＮコントローラノードに、またはコネクタを介して、そこに接続され得る。
【０００５】
ＣＡＮバスプロトコルでは、バスノードは、アドレスされず、むしろ、アドレス情報は、伝送されるメッセージ内に含有される。これは、メッセージコンテンツ、例えば、エンジン速度、オイル温度等を識別する、識別子（各メッセージの一部）を介して行われる。識別子は、加えて、メッセージの優先順位を示す。識別子のバイナリ値が低いほど、メッセージの優先順位が高くなる（より優性なビット）。
【０００６】
ＣＡＮコントローラでは、アーキテクチャは、単純ＵＡＲＴに類似するが、完全フレームが、文字の代わりに、送信される。すなわち、（典型的には）単一伝送バッファおよび二重バッファによる受信バッファが存在する。ＣＰＵは、フレームを伝送バッファ内に置き、フレームが送信されると、中断する。ＣＰＵは、フレームを受信バッファ内で受信し、中断し、バッファを空にする（後続フレームが受信される前に）。ＣＰＵは、伝送および受信を管理し、フレームの記憶を処理しなければならない。
【０００７】
初期化の間、伝送デバイスおよび受信デバイスは、概して、所定のＣＡＮ周波数を使用するように、その個別のＣＡＮモジュールをプログラムする。しかしながら、多くの用途では、この周波数は、既知ではない場合がある。また、各ＣＡＮビットの長さは、ある公称長の約２０％変動し得る。さらに、作動中システムでは、システムが同期され得る、「既知の初期化伝送」は、存在しない。言い換えると、デバイスが既に確立されたＣＡＮバスシステムに連結される場合、転送されるメッセージのコンテンツは、未知である。したがって、従来のシステムでは、試行錯誤法を使用してＣＡＮバスの正確な動作周波数を決定し得るが、これは、非常に長いセットアップ時間をもたらす可能性がある、または完全に故障さえし得る。他のシリアルバスシステムでは、初期化段階は、「５５５５」または「ＡＡＡＡ」等の同期文字配列を使用して行われ得る。しかしながら、そのような初期化ルーチンは、特に、ＣＡＮバスが、既に動作中である場合、利用可能ではないときがある。
【０００８】
故に、ＣＡＮシステム内で使用される動作周波数の迅速決定を可能にする、ＣＡＮモジュールを有するマイクロコントローラのための改良された自動速度検出システムおよび方法の必要性が存在する。
【発明の概要】
【課題を解決するための手段】
【０００９】
ある実施形態によると、マイクロコントローラ内でコントローラエリアネットワーク（ＣＡＮ）モジュールを初期化するための方法は、ＣＡＮ信号の複数の立ち下がりエッジまたは立ち上がりエッジの間の期間を測定するステップと、期間をソートするステップと、ソートされた期間のうちの隣接する期間の間の差値を決定するステップと、差値をソートするステップと、ソートされた差値から第１の差値を選択し、第１の差値から第１の周波数を決定するステップと、選択された周波数を使用して、ＣＡＮモジュールを初期化するステップと、ＣＡＮ信号フレームを受信するステップと、エラーが生じたか否かを決定するステップと、エラーが生じた場合、有効ＣＡＮ周波数が見つけられるまで、次の周波数を選択し、ＣＡＮモジュールを初期化するステップを繰り返すステップとを含んでもよい。
【００１０】
さらなる実施形態によると、本方法はまた、外部ＣＡＮラインをマイクロコントローラの捕捉モジュールの入力と連結し、期間を測定するステップを含んでもよい。さらなる実施形態によると、本方法はさらに、ＣＡＮ信号をマイクロコントローラの捕捉モジュールの入力に内部からフィードし、期間を測定するステップを含んでもよい。さらなる実施形態によると、本方法はさらに、差値をソートするステップの後に、無効周波数をもたらす差値を破棄するステップを含んでもよい。さらなる実施形態によると、タイマおよび捕捉ユニットを使用して、期間を測定することができる。さらなる実施形態によると、ＣＡＮ信号の立ち下がりエッジの間の１０の期間が、測定されてもよい。さらなる実施形態によると、本方法は、有効周波数が見つけられない場合、繰り返されてもよい。さらなる実施形態によると、差値から周波数を決定するステップは、ルックアップテーブルを使用して行われてもよい。さらなる実施形態によると、差値から周波数を決定するステップは、丸めまたは切り捨てを使用して、周波数を計算してもよい。さらなる実施形態によると、マイクロコントローラは、本方法を行うようにプログラムされてもよい。さらなる実施形態によると、マイクロコントローラは、本方法を行う、状態機械を備えてもよい。
【００１１】
別の実施形態によると、マイクロコントローラは、中央処理ユニット（ＣＰＵ）と、コントローラエリアネットワーク（ＣＡＮ）モジュールと、タイマと、タイマと連結された捕捉モジュールとを備えてもよく、マイクロコントローラは、ＣＡＮ信号の複数の立ち下がりまたは立ち上がりエッジ間の期間を測定するステップと、期間をソートするステップと、ソートされた期間の隣接する期間間の差を決定するステップと、第１の差を選択し、第１の差から第１の周波数を決定するステップと、選択された周波数を使用して、ＣＡＮモジュールを初期化するステップと、ＣＡＮ信号フレームを受信するステップと、エラーが生じたか否かを決定するステップと、エラーが生じた場合、次の周波数を選択し、有効ＣＡＮ周波数が見つけられるまで、ＣＡＮモジュールを初期化するステップを繰り返すステップとによって、ＣＡＮ周波数を自動的に検出するように構成される。
【００１２】
マイクロコントローラのさらなる実施形態によると、マイクロコントローラはさらに、無効周波数をもたらす差値を破棄するように構成されてもよい。マイクロコントローラのさらなる実施形態によると、捕捉モジュールは、タイマを捕捉レジスタと連結する、ドライバを制御する、エッジ検出器を備えてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、ＣＡＮバスモジュールの入力と捕捉モジュールの入力との間に連結される、制御可能ドライバを備えてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、ルックアップテーブルを使用することによって、差値から周波数を決定するように構成されてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、丸めまたは切り捨てを使用して、差値から周波数を決定するように構成されてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、ＣＡＮ周波数を決定するように、ソフトウェアによって、プログラムされてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、ＣＡＮ周波数を決定するために、状態機械を備えてもよい。マイクロコントローラのさらなる実施形態によると、マイクロコントローラは、状態機械を制御するために、特殊機能レジスタを備えてもよい。
本願明細書は、例えば、以下の項目も提供する。
（項目１）
マイクロコントローラの中のコントローラエリアネットワーク（ＣＡＮ）モジュールを初期化するための方法であって、
該方法は、
−ＣＡＮ信号の複数の立ち下がりエッジまたは立ち上がりエッジの間の期間を測定することと、
−該期間をソートすることと、
−該ソートされた期間のうちの隣接する期間の間の差値を決定することと、
−該差値をソートすることと、
−該ソートされた差値から第１の差値を選択し、該第１の差値から第１の周波数を決定することと、
−該選択された周波数を使用して、該ＣＡＮモジュールを初期化することと、
−ＣＡＮ信号フレームを受信することと、
−エラーが生じたか否かを決定することと、
−エラーが生じた場合、有効ＣＡＮ周波数が見つけられるまで、次の周波数を選択し、該ＣＡＮモジュールを初期化することを繰り返すことと
を含む、方法。
（項目２）
外部ＣＡＮラインを前記マイクロコントローラの捕捉モジュールの入力と連結することをさらに含み、それにより、前記期間を測定する、項目１に記載の方法。
（項目３）
ＣＡＮ信号を前記マイクロコントローラの捕捉モジュールの入力に内部的にフィードすることをさらに含み、それにより、前記期間を測定する、項目１に記載の方法。
（項目４）
前記差値をソートするステップの後に、
無効周波数をもたらす差値を破棄するステップをさらに含む、項目１に記載の方法。
（項目５）
タイマおよび捕捉ユニットを使用して、前記期間を測定する、項目１に記載の方法。
（項目６）
ＣＡＮ信号の立ち下がりエッジの間の１０の期間が測定される、項目３に記載の方法。
（項目７）
有効周波数が見つけられない場合、前記方法が繰り返される、項目１に記載の方法。
（項目８）
前記差値から周波数を決定するステップは、ルックアップテーブルを使用して行われる、項目１に記載の方法。
（項目９）
前記差値から周波数を決定するステップは、丸めまたは切り捨てを使用して周波数を計算する、項目１に記載の方法。
（項目１０）
前記マイクロコントローラは、前記方法を行うようにプログラムされる、項目１に記載の方法。
（項目１１）
前記マイクロコントローラは、前記方法を行う状態機械を備える、項目１に記載の方法。
（項目１２）
マイクロコントローラであって、
該マイクロコントローラは、
中央処理ユニット（ＣＰＵ）と、
コントローラエリアネットワーク（ＣＡＮ）モジュールと、
タイマと、
該タイマと連結された捕捉モジュールと、
を備え、
該マイクロコントローラは、
−ＣＡＮ信号の複数の立ち下がりエッジまたは立ち上がりエッジの間の期間を測定することと、
−該期間をソートすることと、
−該ソートされた期間についての隣接する期間の間の差を決定することと、
−第１の差を選択し、該第１の差から第１の周波数を決定することと、
−該選択された周波数を使用して、該ＣＡＮモジュールを初期化することと、
−ＣＡＮ信号フレームを受信することと、
−エラーが生じたか否かを決定することと、
−エラーが生じた場合、有効ＣＡＮ周波数が見つけられるまで、次の周波数を選択し、該ＣＡＮモジュールを初期化することを繰り返すことと
によって、ＣＡＮ周波数を自動的に検出するように構成される、マイクロコントローラ。
（項目１３）
前記マイクロコントローラは、無効周波数をもたらす差値を破棄するようにさら構成される、項目１２に記載のマイクロコントローラ。
（項目１４）
前記捕捉モジュールは、エッジ検出器を備え、該エッジ検出器は、前記タイマを捕捉レジスタと連結するドライバを制御する、項目１２に記載のマイクロコントローラ。
（項目１５）
制御可能ドライバを備え、該制御可能ドライバは、前記ＣＡＮバスモジュールの入力と前記捕捉モジュールの入力との間に連結される、項目１２に記載のマイクロコントローラ。
（項目１６）
前記マイクロコントローラは、ルックアップテーブルを使用することによって、前記差値から周波数を決定するように構成される、項目１２に記載のマイクロコントローラ。
（項目１７）
前記マイクロコントローラは、丸めまたは切り捨てを使用して、前記差値から周波数を決定するように構成される、項目１２に記載のマイクロコントローラ。
（項目１８）
前記マイクロコントローラは、前記ＣＡＮ周波数を決定するように、ソフトウェアによってプログラムされる、項目１２に記載のマイクロコントローラ。
（項目１９）
前記ＣＡＮ周波数を決定するための状態機械を備える、項目１２に記載のマイクロコントローラ。
（項目２０）
前記状態機械を制御するための特殊機能レジスタを備える、項目１９に記載のマイクロコントローラ。
【図面の簡単な説明】
【００１３】
【図１】図１は、統合されたＣＡＮモジュールを有するマイクロコントローラの実施形態のブロック図である。
【図２】図２は、例示的ＣＡＮ信号のタイミング図を示す。
【図３】図３は、ある実施形態による、ＣＡＮ動作周波数を決定するための原理を示す。
【図４】図４は、ある実施形態による、流れ図を示す。
【発明を実施するための形態】
【００１４】
図１を参照すると、マイクロコントローラ１００は、点線によって示される。マイクロコントローラ１００は、中央処理ユニット（ＣＰＵ）１１０と、ＣＰＵ１１０と連結されたＣＡＮバスモジュールまたは周辺デバイスとを備える。外部ピン１３０および１３５は、それを通して、ＣＡＮバスモジュール１２０が、その別個の伝送および受信ラインＣＡＮＴＸ、ＣＡＮＲＸを外部ＣＡＮバス１８０のツイスト対ＣＡＮＨおよびＣＡＮＬラインに接続することができるように提供される。これは、通常、別個の内部信号ＣＡＮＲＸおよびＣＡＮＴＸを個別のＣＡＮバス信号ＣＡＮＨおよびＣＡＮＬに変換する外部インターフェースドライバ１０５を介して行われる。しかしながら、他の実施形態は、ＣＡＮバスへの直接接続を可能にする、そのようなインターフェースデバイスを内部に提供してもよい。
【００１５】
さらに、マイクロコントローラは、捕捉／比較／パルス幅変調（ＣＣＰ）モジュール１４０と、タイマモジュール１７０と、クロックシステム１６０とを備え、全て、ＣＰＵ１１０と連結される。ＣＣＰユニット１４０は、外部信号を評価するために、別の外部ピン１５０と連結される。この目的を達成するために、ある実施形態によると、ＣＣＰモジュール１４０内側の制御可能ドライバ１４６は、外部ピン１５０に接続されてもよい。しかしながら、図１に示される例示的デバイスはまた、点線によって示されるように、内部信号を評価／処理可能であってもよい。例えば、一実施形態では、内部ＣＡＮ信号ＣＡＮＲＸは、制御可能ドライバ１８５を通して、ＣＣＰモジュール１４０にフィードされることができる。本実施形態は、特に、内部ＣＡＮバスインターフェース１０５が、内部ＣＡＮＲＸ信号の評価を可能にするために存在するとき、検討され得る。しかしながら、当業者によって理解されるであろうように、他の実施形態は、直接、ＣＡＮバスラインを評価可能であってもよい。そのような場合、内部または外部に配列される、差動ドライバ／コンバータユニットを使用して、ＣＡＮバス上の信号を単一デジタル信号に変換し、それらをＣＣＰモジュール１４０にフィードしてもよい。
【００１６】
ＣＣＰモジュール１４０は、内部または外部入力信号を選択するように実装され得るドライバ１４６および１８５および任意の他の制御可能ドライバの出力を受信する、プリスケーラ１４２を備えてもよい。プリスケーラ１４２の出力は、プログラム的に、着信信号の立ち上がりまたは立ち下がりエッジのいずれかを検出することができるエッジ検出器１４８と連結される。このエッジ検出器の出力信号は、タイマモジュール１７０のタイマレジスタ１７５をＣＣＰモジュール１４０の捕捉レジスタ１４４と連結する、さらなるドライバ１４５を制御する。エッジ検出器１６０は、クロックシステム１６０から、クロック信号を受信してもよい。
【００１７】
自動速度検出機能を提供するために、ＣＣＰモジュールの入力、またはＣＣＰモジュールが複数の入力を備える場合、その入力のうちの１つは、ピン１３０において利用可能なようなＣＡＮＲＸラインと連結される。図１に示されるように、これは、外部ピン１５０をＣＡＮＲＸピン１３０と接続するか、または制御可能ドライバ１８５を介して、内部連結を選択することのいずれかによって行われることができる。この設定は、自動速度検出段階の間にのみ必要である。いったん速度が決定されると、ＣＣＰ入力は、他の信号を処理するために使用されることができる。
【００１８】
図２は、外部ＣＡＮバス１８０上の例示的信号を示す。ＣＣＰモジュール１４０は、ＣＡＮ信号２００の立ち下がりエッジを分析するようにプログラムされる。しかしながら、他の実施形態では、異なる信号特性は、周期を決定するために分析されてもよい。図２によると、立ち下がりエッジが生じるたびに、ＣＣＰモジュール１４０は、タイマモジュールから、タイマ値を捕捉する。捕捉された例示的タイマ値が、示される。値は、単に、この方法の原理の理解を促進するために、小数点以下３桁で四捨五入される。図２に示される実施例では、１０の立ち下がりエッジが、調査される。しかしながら、より多いまたはより少ないエッジを処理することができる。捕捉されるエッジが多いほど、自動速度検出は、より精密となるであろう。タイマは、１００ｎｓの分解能で初期化されてもよい。この目的を達成するために、タイマは、１０ＭＨｚまたは任意の他の好適なクロック周波数でクロックされてもよい。タイマ値は、例えば、図１に示されるように、１６ビット値であることができる。したがって、クロックソースに応じて、異なる分解能を取得することができる。タイマ分解能が良好であるほど、測定は、より正確となる。最速可能タイマソースの使用は、タイマの分解能を増加させるので、好ましい方法である。例えば、４０ＭＨｚクロックを使用して、タイマ分解能を２５ｎｓまで改善することができる。これらのタイマ値は、次いで、アレイ内に記憶されることができる。
【００１９】
図３は、捕捉されたタイマ値が、どのようにさらに処理されるかを示す。第１のステップでは、１０の捕捉されたタイマ値を有するアレイが、最左列に示されるように、最小値から最高値にソートされる。次いで、各２つの隣接するタイマ値の間の差が、第２列に示されるように計算される。次に、異なる差値が、再び、第３列に示されるように、ソートされる。別のステップでは、無効差は、破棄され得る。例えば、明らかに１μｓまたは任意の所定の最大周期を下回るか、あるいは所定の最大周波数を上回る値は、図３における第３列に示されるように、破棄され得る。図３における第４列に示されるように、残りの値に対して、残りの周期値に対して結果として生じる周波数が決定される。第１の値は、次いで、ＣＡＮモジュールの周波数を設定するために使用される。この目的を達成するために、ある実施形態によると、ウィンドウを使用して、周波数をＣＡＮシステム内で合理的である最も近い数に丸めてもよい。例えば、２６３ｋｂｐｓではなく、２５０ｋｂｐｓまたは２７５ｋｂｐｓとなる。いったんこの周波数、例えば、図３に示されるように、５００ｋｂｐｓが決定されると、ＣＡＮモジュール１２０は、この周波数を使用して、初期化され、正常バストラフィックが中断されないように、「リッスン専用」モードに設定される。次いで、システムは、待機し、受信されたメッセージが有効であるか否か、またはエラーメッセージが、ＣＡＮモジュールによって生成されるか否かを決定する。エラーメッセージの場合、自動速度検出方法は、図３に示されるように、次の利用可能な周波数、例えば、４５０ｋｂｐｓを選択する。これらのステップは、正確な周波数が設定されるまで、繰り返される。したがって、本方法は、図３に示される最後の列において決定されるような異なる周波数を使用して、ＣＡＮモジュール１２０を初期化するステップを繰り返す。これらの決定された値のいずれもが正確な設定を生成しない場合、本方法は、再び、開始し、ＣＡＮ信号の別の１０のエッジを評価する。
【００２０】
図３における第４列に示されるように、タイマ差値は、直接、実際の周波数値を含有するテーブルにアクセスするために使用されてもよい。そのような方法は、容易に、切り捨てまたは丸めを行い、有用周波数値を取得することを可能にするであろう。
【００２１】
図４は、前述の説明された方法の例示的流れ図を示す。ステップ４００において、ＣＡＮ信号は、立ち下がりエッジまたは立ち上がりエッジを検出し、関連付けられたタイマ値ｔ（１）からｔ（ｎ）までを記憶することによって、ＣＣＰモジュールを使用して評価される。これらの値は、次いで、ステップ４１０において、値ｔｓ（１）−ｔｓ（ｎ）にソートされる。ステップ４２０において、Δ値ｄ（１）−ｄ（ｎ−１）は、ｘ＝１．．ｎ−１に対して、ｄ（ｘ）＝ｔｓ（ｘ＋１）−ｔｓ（ｘ）を計算することによって決定される。Δ値は、再び、ステップ４３０において、ｄｓ（１）．．ｄｓ（ｎ−１）にソートされる。次いで、随意に、ステップ４４０において、有効周波数を形成しない値ｄｓ（）は、破棄される。残りの値は、ステップ４５０において、周波数値ｆ（ｘ）＝１／ｄｓ（ｘ）を決定するために使用される。ステップ４６０において、第１の値ｆ（１）は、ＣＡＮモジュール１２０を初期化するために使用される。次いで、ステップ４７０において、フレームが受信される。正確なタイミングは、ステップ４８０において、ＣＡＮモジュールが任意のエラーメッセージを生成したか否かをチェックすることによって決定される。そうでない場合、ルーチンは、終了する。エラーが生成された場合、ルーチンは、ステップ４９０において、例えば、ルックアップテーブルを使用することによって、次の値ｆ（ｉ）を取得することによって進行する。ステップ５００において、利用可能な値がないかが決定される。その場合、ルーチンは、ステップ５００にジャンプし、そうでなければ、ルーチンは、ステップ４６０にジャンプする。
【００２２】
ある実施形態によると、前述の説明されるシーケンスは、ソフトウェアによって行われることができる。しかしながら、別の実施形態によると、状態機械１９０を使用して、前述のような具体的シーケンスを制御してもよい。図１は、状態機械１９０を示す。この状態機械は、特に、図１に示されるように、例えば、制御可能ドライバ１８５を通して、ＣＡＮバスモジュール１２０への入力信号を内部で選択可能なマイクロコントローラ１００内で有利であろう。状態機械は、特殊機能レジスタ１９５内でビットを設定するステップを通して始動され得る。いったん始動されると、状態機械１９０は、ドライバ１８５を介して、ＣＣＰモジュール１４０に内部ＣＡＮバス信号を連結し、前述のように、ＣＡＮモジュール１２０の初期化を行い、ＣＡＮ信号をＣＣＰモジュール１４０から切断する。ユーザは、次いで、他の信号の評価のために、このモジュールを使用してもよい。
【００２３】
本発明は、したがって、目的を遂行し、前述の目標および利点ならびに本明細書に固有のその他を達成するために好適に適応される。本発明は、本発明の特定の好ましい実施形態を参照することによって、描写、説明、および定義されたが、そのような参照は、本発明の限定を含意するものではなく、そのような限定が、暗示されるものでもない。本発明は、当業者に想起されるであろうように、形態および機能に相当な修正、変更、および均等物が可能である。本発明の描写および説明される好ましい実施形態は、例示にすぎず、本発明の範囲の包括ではない。その結果、本発明は、あらゆる観点において、均等物に対する完全認識を与える、添付の請求項の精神および範囲によってのみ限定されることが意図される。
【図１】
0005963783.tif 000002
【図２】
0005963783.tif 000003
【図３】
0005963783.tif 000004
【図４】
0005963783.tif 000005