JP2005038026A - Canコントローラを含むマイクロコントローラ - Google Patents
Canコントローラを含むマイクロコントローラ Download PDFInfo
- Publication number
- JP2005038026A JP2005038026A JP2003197424A JP2003197424A JP2005038026A JP 2005038026 A JP2005038026 A JP 2005038026A JP 2003197424 A JP2003197424 A JP 2003197424A JP 2003197424 A JP2003197424 A JP 2003197424A JP 2005038026 A JP2005038026 A JP 2005038026A
- Authority
- JP
- Japan
- Prior art keywords
- controller
- level
- failure detection
- output terminal
- transmission
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】内蔵のCANコントローラに、CAN送信出力端子をLレベルに固定する故障が発生した場合、このCANコントローラをCANバスから切り離すことのできるCANコントローラを含むマイクロコントローラを提供する。
【解決手段】CANコントローラ2の送信出力部21から出力されるLレベルモニタ信号のLレベルの期間を故障検知部3のカウンタ31でカウントし、CANプロトコルの規定を越えてLレベルが継続すると、カウンタ31の出力が反転する。これを受けて、切り離し信号生成回路34から出力される切り離し信号がHレベルからLレベルに変化し、切り離し用NMOS212を非導通とする。このとき、出力用PMOS211も非道通であるため送信出力端子6はハイインピーダンスとなる。
【選択図】 図1
【解決手段】CANコントローラ2の送信出力部21から出力されるLレベルモニタ信号のLレベルの期間を故障検知部3のカウンタ31でカウントし、CANプロトコルの規定を越えてLレベルが継続すると、カウンタ31の出力が反転する。これを受けて、切り離し信号生成回路34から出力される切り離し信号がHレベルからLレベルに変化し、切り離し用NMOS212を非導通とする。このとき、出力用PMOS211も非道通であるため送信出力端子6はハイインピーダンスとなる。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、CAN(Controller Area Network)プロトコルの通信を制御するCANコントローラを含むマイクロコントローラに関する。
【0002】
【従来の技術】
CANは、ISO11519およびISO11898として国際規格化された通信プロトコルであり、車載機器間のデータ通信等に広く使われている。
【0003】
CAN通信プロトコルでは、CANバスと称される二線式の伝送路が用いられ、この二線間の差動電圧を論理値の0/1に置き換えて送受信信号とするシリアル通信方式が採用されている。
【0004】
このCANを使用する各機器にはCANコントローラが搭載されており、図4に示すように、CANコントローラ100の送信出力端子および受信入力端子がCANトランシーバ150を介してCANバスに接続される。
【0005】
また、図5に、従来のCANコントローラの送信部の回路の例を示す。出力用PチャネルMOSFET(以下、「PMOS」と称す。)111と出力用NチャネルMOSFET(以下、「NMOS」と称す。)112からなる送信出力部110は、送信制御部120の制御を受けて送信出力端子へ送信データを出力する。
【0006】
このようなCANコントローラは、単体で提供されるだけでなく、モジュール化されてマイクロコントローラに搭載され、いわゆるCAN内蔵マイクロコントローラとしても提供される。
【0007】
CANプロトコルにおいては、通信データのフォーマットが規定されているが、その他に、通信エラーの検知およびエラー処理についても規定されている。
【0008】
エラーとしては、ビットエラー、アクノリッジエラー、CRCエラー、スタッフエラー、フォーマットエラーの5種類が規定されており、CANコントローラは検知されたエラーに応じてエラー回復のための処理を行う。例えば、送信時に通信エラーを規定回数以上検知した場合には、一旦その送信を終了し、その送信メッセージが正常に送信されるまで再送信を繰り返す。
【0009】
そのため、CANコントローラには、このようなCANプロトコルにより規定される通信エラーを検知するための機能およびエラー処理を行うための機能が搭載されている(例えば、特許文献1を参照。)。
【0010】
【特許文献1】
特開2001−339412号公報(第3−5頁、図5)
【0011】
【発明が解決しようとする課題】
上述したように、送信エラーが検知された場合、CANコントローラは、送信を複数回繰り返し、正常状態への復帰を図る。しかしながら、CANコントローラの送信出力部に故障があり、送信出力端子の出力レベルが常に同じ値に固定されているような場合、上述の方法ではエラーが復帰しない。なかでも、送信出力端子がLレベル(論理0)に固定されている場合、CAN通信にとっては、致命的なエラーとなる。
【0012】
これは、CANプロトコルでは、論理0はドミナント(優勢)レベルと規定されており、ドミナントレベルを出力するCANコントローラがCANバスを占有することになっていることによる。そのため、上記のような送信出力端子がLレベルに固定される故障が発生すると、そのCANコントローラがCANバスを占有し、その他の機器は通信が一切できなくなるという問題が生じる。
【0013】
そこで、本発明の目的は、内蔵のCANコントローラに、CAN送信出力端子をLレベルに固定する故障が発生した場合、このCANコントローラをCANバスから切り離し、CANバスに接続されている他の機器間では相互の通信が可能となるCANコントローラを含むマイクロコントローラを提供することにある。
【0014】
【課題を解決するための手段】
本発明の一態様によれば、CANプロトコルによる送信信号を出力するためのCAN送信出力端子を備えるCANコントローラと、前記CANコントローラを制御するCPUと、前記CANプロトコルに規定される期間より長い期間に亘って前記CAN送信出力端子からLレベルが送出される故障を検知し、故障検知信号を出力する故障検知手段と、前記故障検知信号に基づき前記CAN送信出力端子をハイインピーダンスにするCAN送信出力端子切り離し手段とを有することを特徴とするCANコントローラを含むマイクロコントローラが提供される。
【0015】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【0016】
図1は、本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの構成を示すブロック図である。
【0017】
CAN内蔵マイクロコントローラ1は、CPU5を有し、CANプロトコルによるCAN通信を制御するCANコントローラ2を内蔵している。CANコントローラ2は、送信信号を出力する送信出力部21と送信出力部21を制御する送信制御部22を有しており、送信出力部21は、CANプロトコルによる送信信号を送信信号出力端子6へ出力する。
【0018】
なお、CPU5は、CANコントローラ2を制御しており、CANコントローラ2の使用/不使用の切り替えを行うこともできる。
【0019】
さらに、CAN内蔵マイクロコントローラ1は、故障検知部3とレジスタ4を有している。
【0020】
故障検知部3は、送信信号出力端子6へ出力されるLレベルをモニタし、CANプロトコルの規定を超える期間Lレベルが出力される故障を検知する。故障を検知すると、故障検知部3は、送信信号出力端子6をハイインピーダンスとするための切り離し信号と、CPUへの割り込み信号を出力する。なお、故障検知部3の詳細な回路構成については後述する。
【0021】
また、レジスタ4には、CANコントローラ2の使用/不使用の切り替えに合わせて故障検知部3の使用/不使用を選択するイネーブル(Enable)信号が書き込まれている。このレジスタ4から出力されるイネーブル信号は、故障検知部3を制御し、イネーブル信号がHのときは故障検知部3を動作させ、イネーブル信号がLのときは故障検知部3が動作しないようにする。
【0022】
ここで、送信出力部21の回路構成について説明する。
【0023】
送信出力部21は、電源端子VCCと送信出力端子6との間に接続された出力用PMOS211と、接地端子と送信出力端子6との間に直列に接続された出力用NMOS212と切り離し用NMOS213からなる。このうち、出力用NMOS212の一端が接地端子に接続されている。また、出力用NMOS212の他端からは、Lレベルモニタ信号が出力されている。
【0024】
出力用PMOS211および出力用NMOS212のゲート入力は送信制御部22により制御され、切り離し用NMOS213のゲート入力は、後述する故障検知部3から出力される切り離し信号により制御される。
【0025】
送信出力端子6に正常な送信信号が出力されているときには、切り離し用NMOS213は常に導通するよう制御されるため、出力用NMOS212が導通したときには、送信出力端子6にLレベルが出力される。また、出力用PMOS211が導通したときには、送信出力端子6にHレベルが出力される。
【0026】
次に、故障検知部3の回路構成について説明する。
【0027】
故障検知部3は、送信出力部21の出力のLレベルの期間を計測するカウンタ31と、カウンタ31が使用するクロックを切り替えるクロック切り替え回路32と、カウンタ31のカウント動作を制御するカウンタ制御回路33と、カウンタ31の出力が入力されて切り離し信号を生成する切り離し信号生成回路34および割り込み信号を生成する割り込み信号生成回路35からなる。
【0028】
カウンタ31は、送信出力部21から出力されるLレベルの期間を計測し、Lレベルの期間がCANプロトコルで規定する最長の期間を超えると出力を変化させる。CANプロトコルでは、5種類の通信フレームが規定されているが、このうちLレベル期間が最長となるのは、図2(a)に示すエラーフレームにおけるエラーフラグの幅および図2(b)に示すオーバーロードフレームのオーバーロードフラグの幅である6bitである。
【0029】
したがって、カウンタ31は、7をカウントすると出力を変化させるカウンタとする。
【0030】
クロック切り替え回路32は、カウンタ31が用いるクロックを切り替える回路である。クロック切り替え回路32へは、CANコントローラ2が使用する送信クロック、およびクロックジェネレータ(図示せず)で生成されるボーレートの異なる送信クロックのうち最小のボーレートの送信に用いられる最小ボーレート送信クロックの2種類のクロックが入力される。
【0031】
クロック切り替え回路32からは、通常、送信クロックが出力される。しかし、何らかの理由で送信クロックが停止したときには、クロック切り替え回路32は、送信クロックが停止したことを検知して、出力を切り替えて最小ボーレート送信クロックを出力する。
【0032】
もしくは、クロック切り替え回路32の内部にレジスタ(図示せず)を設け、レジスタの設定により、送信クロックを使用するか、最小ボーレート送信クロックを使用するかを指定するようにしてもよい。この場合、通信先の他ノードとのボーレートが異なるときは、予め、最小ボーレート送信クロックを選択するようレジスタを設定しておく。
【0033】
カウンタ制御回路33は、レジスタ4からのイネーブル信号と送信出力部21からのLレベルモニタ信号を入力として、カウンタ31のカウント動作を制御する。
【0034】
イネーブル信号がHレベルのときは、カウンタ31が動作することを許可するが、イネーブル信号がLレベルのときは、カウンタ31の動作を禁止する。
【0035】
イネーブル信号がHレベルで、Lレベルモニタ信号がHレベルのときは、カウンタ31はリセット状態でカウンタ値は0に設定される。その後、Lレベルモニタ信号がLレベルに変化すると、カウンタ31はカウントを開始するが、カウント7に達する前に、Lレベルモニタ信号がHレベルに戻ると、カウンタ31はリセットされてカウンタ値は0に戻る。しかし、Lレベルモニタ信号のLレベルの状態が継続してカウンタ31のカウント値が7に達すると、カウンタ31の出力がHになる。
【0036】
切り離し信号生成回路34は、送信出力部21の切り離し用NMOS213のゲート制御する切り離し信号を生成する回路で、通常Hレベルを出力しているが、カウンタ31の出力がHになると、出力をLレベルに変化させる。
【0037】
割り込み信号生成回路35は、CPU5への割り込み信号を生成する回路で、カウンタ31の出力がHに変化したときに、割り込み信号を発生させる。この割り込み信号が入力されると、CPU5は、故障によるCAN通信への障害発生を回避するための処理を実行する。
【0038】
図3は、送信出力部21の出力がLレベルに固定される故障を故障検知部3が検知したときの本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの動作を示す波形図である。
【0039】
CANコントローラ2を使用するときにレジスタ4に書き込まれるイネーブル信号はHであり、これにより故障検知部3は使用可能となり、カウンタ31が動作許可される。
【0040】
このとき、送信出力部21からのLレベルモニタ信号がHレベルの間は、カウンタ31はリセット状態であり、カウンタ出力はLレベルである。また、このとき、切り離し信号生成回路34から出力される切り離し信号はHレベルである。
【0041】
その後、送信出力部21からのLレベルモニタ信号がHレベルからLレベルへ変化すると、カウンタ31はカウント動作を開始し、送信クロックまたは最小ボーレート送信クロックの数をカウントする。
【0042】
そして、故障のため送信出力部21の出力用NMOS212が導通状態のままとなり、Lレベルモニタ信号のLレベル期間がCANプロトコルの規定を超えてカウンタ31のカウントが7に達すると、カウンタ31の出力がLからHに変化する。
【0043】
カウンタ31の出力がHに変化すると、切り離し信号生成回路34は、切り離し信号をHレベルからLレベルへ変化させる。また、割り込み信号生成回路35が割り込み信号を発生させる。
【0044】
切り離し信号がHレベルからLレベルに変化することにより、送信出力部21の切り離し用NMOS213が非導通となる。これにより、送信出力端子6と接地端子の間が非導通となる。また、送信出力部21がLレベルを出力する状態のときは、出力用PMOS211が非導通となっているため、送信出力端子6はハイインピーダンス状態となる。
【0045】
このような本実施の形態によれば、CAN内蔵マイクロコントローラ1に内蔵されるCANコントローラ2に、CAN通信用の送信出力端子6をLレベルに固定する故障が発生した場合、この送信出力端子6をハイインピーダンスにして、CANコントローラ2をCANバスから切り離すことができる。
【0046】
なお、本発明は、上述の実施の形態に何ら限定されるものではなく、故障検知部および送信出力部の回路構成は、種々変形して実施することができる
【0047】
【発明の効果】
CAN内蔵マイクロコントローラに内蔵されるCANコントローラに、CAN送信出力端子をLレベルに固定する故障が発生した場合、このCANコントローラをCANバスから切り離すことができる。
【0048】
これにより、故障したCANコントローラがドミナントとなる状態が解消され、CANバスに接続されている他の機器間では相互に通信を行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの構成を示すブロック図。
【図2】通信フレームのCANプロトコルを説明するための図。
【図3】本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの動作波形図。
【図4】CANコントローラとCANバスの接続を説明するための図。
【図5】従来のCANコントローラの送信出力部の構成を示す回路図。
【符号の説明】
1 CAN内蔵マイクロコントローラ
2、100 CANコントローラ
21、110 送信出力部
22、120 送信制御部
211、111 出力用PMOS
212、112 出力用NMOS
213 切り離し用NMOS
3 故障検知部
31 カウンタ
32 ロック切り替え回路
33 カウンタ制御回路
34 信号生成回路
35 信号生成回路
4 レジスタ
5 CPU
6 送信出力端子
150 CANトランシーバ
RX 受信入力端子
TX 送信出力端子
VCC 電源端子
【発明の属する技術分野】
本発明は、CAN(Controller Area Network)プロトコルの通信を制御するCANコントローラを含むマイクロコントローラに関する。
【0002】
【従来の技術】
CANは、ISO11519およびISO11898として国際規格化された通信プロトコルであり、車載機器間のデータ通信等に広く使われている。
【0003】
CAN通信プロトコルでは、CANバスと称される二線式の伝送路が用いられ、この二線間の差動電圧を論理値の0/1に置き換えて送受信信号とするシリアル通信方式が採用されている。
【0004】
このCANを使用する各機器にはCANコントローラが搭載されており、図4に示すように、CANコントローラ100の送信出力端子および受信入力端子がCANトランシーバ150を介してCANバスに接続される。
【0005】
また、図5に、従来のCANコントローラの送信部の回路の例を示す。出力用PチャネルMOSFET(以下、「PMOS」と称す。)111と出力用NチャネルMOSFET(以下、「NMOS」と称す。)112からなる送信出力部110は、送信制御部120の制御を受けて送信出力端子へ送信データを出力する。
【0006】
このようなCANコントローラは、単体で提供されるだけでなく、モジュール化されてマイクロコントローラに搭載され、いわゆるCAN内蔵マイクロコントローラとしても提供される。
【0007】
CANプロトコルにおいては、通信データのフォーマットが規定されているが、その他に、通信エラーの検知およびエラー処理についても規定されている。
【0008】
エラーとしては、ビットエラー、アクノリッジエラー、CRCエラー、スタッフエラー、フォーマットエラーの5種類が規定されており、CANコントローラは検知されたエラーに応じてエラー回復のための処理を行う。例えば、送信時に通信エラーを規定回数以上検知した場合には、一旦その送信を終了し、その送信メッセージが正常に送信されるまで再送信を繰り返す。
【0009】
そのため、CANコントローラには、このようなCANプロトコルにより規定される通信エラーを検知するための機能およびエラー処理を行うための機能が搭載されている(例えば、特許文献1を参照。)。
【0010】
【特許文献1】
特開2001−339412号公報(第3−5頁、図5)
【0011】
【発明が解決しようとする課題】
上述したように、送信エラーが検知された場合、CANコントローラは、送信を複数回繰り返し、正常状態への復帰を図る。しかしながら、CANコントローラの送信出力部に故障があり、送信出力端子の出力レベルが常に同じ値に固定されているような場合、上述の方法ではエラーが復帰しない。なかでも、送信出力端子がLレベル(論理0)に固定されている場合、CAN通信にとっては、致命的なエラーとなる。
【0012】
これは、CANプロトコルでは、論理0はドミナント(優勢)レベルと規定されており、ドミナントレベルを出力するCANコントローラがCANバスを占有することになっていることによる。そのため、上記のような送信出力端子がLレベルに固定される故障が発生すると、そのCANコントローラがCANバスを占有し、その他の機器は通信が一切できなくなるという問題が生じる。
【0013】
そこで、本発明の目的は、内蔵のCANコントローラに、CAN送信出力端子をLレベルに固定する故障が発生した場合、このCANコントローラをCANバスから切り離し、CANバスに接続されている他の機器間では相互の通信が可能となるCANコントローラを含むマイクロコントローラを提供することにある。
【0014】
【課題を解決するための手段】
本発明の一態様によれば、CANプロトコルによる送信信号を出力するためのCAN送信出力端子を備えるCANコントローラと、前記CANコントローラを制御するCPUと、前記CANプロトコルに規定される期間より長い期間に亘って前記CAN送信出力端子からLレベルが送出される故障を検知し、故障検知信号を出力する故障検知手段と、前記故障検知信号に基づき前記CAN送信出力端子をハイインピーダンスにするCAN送信出力端子切り離し手段とを有することを特徴とするCANコントローラを含むマイクロコントローラが提供される。
【0015】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【0016】
図1は、本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの構成を示すブロック図である。
【0017】
CAN内蔵マイクロコントローラ1は、CPU5を有し、CANプロトコルによるCAN通信を制御するCANコントローラ2を内蔵している。CANコントローラ2は、送信信号を出力する送信出力部21と送信出力部21を制御する送信制御部22を有しており、送信出力部21は、CANプロトコルによる送信信号を送信信号出力端子6へ出力する。
【0018】
なお、CPU5は、CANコントローラ2を制御しており、CANコントローラ2の使用/不使用の切り替えを行うこともできる。
【0019】
さらに、CAN内蔵マイクロコントローラ1は、故障検知部3とレジスタ4を有している。
【0020】
故障検知部3は、送信信号出力端子6へ出力されるLレベルをモニタし、CANプロトコルの規定を超える期間Lレベルが出力される故障を検知する。故障を検知すると、故障検知部3は、送信信号出力端子6をハイインピーダンスとするための切り離し信号と、CPUへの割り込み信号を出力する。なお、故障検知部3の詳細な回路構成については後述する。
【0021】
また、レジスタ4には、CANコントローラ2の使用/不使用の切り替えに合わせて故障検知部3の使用/不使用を選択するイネーブル(Enable)信号が書き込まれている。このレジスタ4から出力されるイネーブル信号は、故障検知部3を制御し、イネーブル信号がHのときは故障検知部3を動作させ、イネーブル信号がLのときは故障検知部3が動作しないようにする。
【0022】
ここで、送信出力部21の回路構成について説明する。
【0023】
送信出力部21は、電源端子VCCと送信出力端子6との間に接続された出力用PMOS211と、接地端子と送信出力端子6との間に直列に接続された出力用NMOS212と切り離し用NMOS213からなる。このうち、出力用NMOS212の一端が接地端子に接続されている。また、出力用NMOS212の他端からは、Lレベルモニタ信号が出力されている。
【0024】
出力用PMOS211および出力用NMOS212のゲート入力は送信制御部22により制御され、切り離し用NMOS213のゲート入力は、後述する故障検知部3から出力される切り離し信号により制御される。
【0025】
送信出力端子6に正常な送信信号が出力されているときには、切り離し用NMOS213は常に導通するよう制御されるため、出力用NMOS212が導通したときには、送信出力端子6にLレベルが出力される。また、出力用PMOS211が導通したときには、送信出力端子6にHレベルが出力される。
【0026】
次に、故障検知部3の回路構成について説明する。
【0027】
故障検知部3は、送信出力部21の出力のLレベルの期間を計測するカウンタ31と、カウンタ31が使用するクロックを切り替えるクロック切り替え回路32と、カウンタ31のカウント動作を制御するカウンタ制御回路33と、カウンタ31の出力が入力されて切り離し信号を生成する切り離し信号生成回路34および割り込み信号を生成する割り込み信号生成回路35からなる。
【0028】
カウンタ31は、送信出力部21から出力されるLレベルの期間を計測し、Lレベルの期間がCANプロトコルで規定する最長の期間を超えると出力を変化させる。CANプロトコルでは、5種類の通信フレームが規定されているが、このうちLレベル期間が最長となるのは、図2(a)に示すエラーフレームにおけるエラーフラグの幅および図2(b)に示すオーバーロードフレームのオーバーロードフラグの幅である6bitである。
【0029】
したがって、カウンタ31は、7をカウントすると出力を変化させるカウンタとする。
【0030】
クロック切り替え回路32は、カウンタ31が用いるクロックを切り替える回路である。クロック切り替え回路32へは、CANコントローラ2が使用する送信クロック、およびクロックジェネレータ(図示せず)で生成されるボーレートの異なる送信クロックのうち最小のボーレートの送信に用いられる最小ボーレート送信クロックの2種類のクロックが入力される。
【0031】
クロック切り替え回路32からは、通常、送信クロックが出力される。しかし、何らかの理由で送信クロックが停止したときには、クロック切り替え回路32は、送信クロックが停止したことを検知して、出力を切り替えて最小ボーレート送信クロックを出力する。
【0032】
もしくは、クロック切り替え回路32の内部にレジスタ(図示せず)を設け、レジスタの設定により、送信クロックを使用するか、最小ボーレート送信クロックを使用するかを指定するようにしてもよい。この場合、通信先の他ノードとのボーレートが異なるときは、予め、最小ボーレート送信クロックを選択するようレジスタを設定しておく。
【0033】
カウンタ制御回路33は、レジスタ4からのイネーブル信号と送信出力部21からのLレベルモニタ信号を入力として、カウンタ31のカウント動作を制御する。
【0034】
イネーブル信号がHレベルのときは、カウンタ31が動作することを許可するが、イネーブル信号がLレベルのときは、カウンタ31の動作を禁止する。
【0035】
イネーブル信号がHレベルで、Lレベルモニタ信号がHレベルのときは、カウンタ31はリセット状態でカウンタ値は0に設定される。その後、Lレベルモニタ信号がLレベルに変化すると、カウンタ31はカウントを開始するが、カウント7に達する前に、Lレベルモニタ信号がHレベルに戻ると、カウンタ31はリセットされてカウンタ値は0に戻る。しかし、Lレベルモニタ信号のLレベルの状態が継続してカウンタ31のカウント値が7に達すると、カウンタ31の出力がHになる。
【0036】
切り離し信号生成回路34は、送信出力部21の切り離し用NMOS213のゲート制御する切り離し信号を生成する回路で、通常Hレベルを出力しているが、カウンタ31の出力がHになると、出力をLレベルに変化させる。
【0037】
割り込み信号生成回路35は、CPU5への割り込み信号を生成する回路で、カウンタ31の出力がHに変化したときに、割り込み信号を発生させる。この割り込み信号が入力されると、CPU5は、故障によるCAN通信への障害発生を回避するための処理を実行する。
【0038】
図3は、送信出力部21の出力がLレベルに固定される故障を故障検知部3が検知したときの本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの動作を示す波形図である。
【0039】
CANコントローラ2を使用するときにレジスタ4に書き込まれるイネーブル信号はHであり、これにより故障検知部3は使用可能となり、カウンタ31が動作許可される。
【0040】
このとき、送信出力部21からのLレベルモニタ信号がHレベルの間は、カウンタ31はリセット状態であり、カウンタ出力はLレベルである。また、このとき、切り離し信号生成回路34から出力される切り離し信号はHレベルである。
【0041】
その後、送信出力部21からのLレベルモニタ信号がHレベルからLレベルへ変化すると、カウンタ31はカウント動作を開始し、送信クロックまたは最小ボーレート送信クロックの数をカウントする。
【0042】
そして、故障のため送信出力部21の出力用NMOS212が導通状態のままとなり、Lレベルモニタ信号のLレベル期間がCANプロトコルの規定を超えてカウンタ31のカウントが7に達すると、カウンタ31の出力がLからHに変化する。
【0043】
カウンタ31の出力がHに変化すると、切り離し信号生成回路34は、切り離し信号をHレベルからLレベルへ変化させる。また、割り込み信号生成回路35が割り込み信号を発生させる。
【0044】
切り離し信号がHレベルからLレベルに変化することにより、送信出力部21の切り離し用NMOS213が非導通となる。これにより、送信出力端子6と接地端子の間が非導通となる。また、送信出力部21がLレベルを出力する状態のときは、出力用PMOS211が非導通となっているため、送信出力端子6はハイインピーダンス状態となる。
【0045】
このような本実施の形態によれば、CAN内蔵マイクロコントローラ1に内蔵されるCANコントローラ2に、CAN通信用の送信出力端子6をLレベルに固定する故障が発生した場合、この送信出力端子6をハイインピーダンスにして、CANコントローラ2をCANバスから切り離すことができる。
【0046】
なお、本発明は、上述の実施の形態に何ら限定されるものではなく、故障検知部および送信出力部の回路構成は、種々変形して実施することができる
【0047】
【発明の効果】
CAN内蔵マイクロコントローラに内蔵されるCANコントローラに、CAN送信出力端子をLレベルに固定する故障が発生した場合、このCANコントローラをCANバスから切り離すことができる。
【0048】
これにより、故障したCANコントローラがドミナントとなる状態が解消され、CANバスに接続されている他の機器間では相互に通信を行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの構成を示すブロック図。
【図2】通信フレームのCANプロトコルを説明するための図。
【図3】本発明の実施の形態に係るCANコントローラを含むマイクロコントローラの動作波形図。
【図4】CANコントローラとCANバスの接続を説明するための図。
【図5】従来のCANコントローラの送信出力部の構成を示す回路図。
【符号の説明】
1 CAN内蔵マイクロコントローラ
2、100 CANコントローラ
21、110 送信出力部
22、120 送信制御部
211、111 出力用PMOS
212、112 出力用NMOS
213 切り離し用NMOS
3 故障検知部
31 カウンタ
32 ロック切り替え回路
33 カウンタ制御回路
34 信号生成回路
35 信号生成回路
4 レジスタ
5 CPU
6 送信出力端子
150 CANトランシーバ
RX 受信入力端子
TX 送信出力端子
VCC 電源端子
Claims (10)
- CANプロトコルによる送信信号を出力するためのCAN送信出力端子を備えるCANコントローラと、
前記CANコントローラを制御するCPUと、
前記CANプロトコルに規定される期間より長い期間に亘って前記CAN送信出力端子からLレベルが送出される故障を検知し、故障検知信号を出力する故障検知手段と、
前記故障検知信号に基づき前記CAN送信出力端子をハイインピーダンスにするCAN送信出力端子切り離し手段とを有することを特徴とするCANコントローラを含むマイクロコントローラ。 - 前記故障検知手段は、前記故障を検知したときに、前記CPUに対して、割り込み信号をさらに出力することを特徴とする請求項1に記載のCANコントローラを含むマイクロコントローラ。
- 前記故障検知手段は、前記CAN送信出力端子のLレベルの継続期間を計測するカウンタを有し、前記Lレベルの継続期間が前記CANプロトコルに規定される期間を超えると前記カウンタの出力が変化することを特徴とする請求項1または2に記載のCANコントローラを含むマイクロコントローラ。
- 前記故障検知手段の前記カウンタのクロック入力が、CANコントローラの送信クロックまたは最小ボーレートの送信クロックであることを特徴とする請求項3に記載のCANコントローラを含むマイクロコントローラ。
- 前記故障検知手段が、前記カウンタの出力が変化したときに前記故障検知信号を出力することを特徴とする請求項3または4に記載のCANコントローラを含むマイクロコントローラ。
- 前記故障検知手段が、前記カウンタの出力が変化したときに前記割り込み信号を出力することを特徴とする請求項3または4に記載のCANコントローラを含むマイクロコントローラ。
- 前記CANコントローラの使用/不使用に合わせて前記故障検知手段の使用/不使用を選択する選択手段を有することを特徴とする請求項1乃至6のいずれか1項に記載のCANコントローラを含むマイクロコントローラ。
- 前記選択手段が、動作可/不可の情報が書き込まれたレジスタであることを特徴とする請求項7に記載のCANコントローラを含むマイクロコントローラ。
- 前記故障検知手段が、前記レジスタの情報を読み出して、前記カウンタのカウント動作の動作/停止を制御することを特徴とする請求項3乃至6のいずれか1項に記載のCANコントローラを含むマイクロコントローラ。
- 前記CAN送信出力端子切り離し手段が、ゲート端子に前記故障検知信号が入力されるNチャネルMOSFETであり、前記CAN送信出力端子と前記CAN送信出力端子をLレベルに駆動する素子との間に挿入されて、前記故障が検出されたときに前記CAN送信出力端子と前記CAN送信出力端子をLレベルに駆動する前記素子との間を非導通とすることを特徴とする請求項1に記載のCANコントローラを含むマイクロコントローラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003197424A JP2005038026A (ja) | 2003-07-15 | 2003-07-15 | Canコントローラを含むマイクロコントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003197424A JP2005038026A (ja) | 2003-07-15 | 2003-07-15 | Canコントローラを含むマイクロコントローラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005038026A true JP2005038026A (ja) | 2005-02-10 |
Family
ID=34207576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003197424A Pending JP2005038026A (ja) | 2003-07-15 | 2003-07-15 | Canコントローラを含むマイクロコントローラ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005038026A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009202720A (ja) * | 2008-02-27 | 2009-09-10 | Toyota Motor Corp | 通信システム、その異常推定方法、及び情報読出装置 |
CN103116350A (zh) * | 2012-12-06 | 2013-05-22 | 金龙联合汽车工业(苏州)有限公司 | 汽车can通讯失效检测系统及其检测方法 |
CN104483885A (zh) * | 2014-11-12 | 2015-04-01 | 宁夏嘉翔自控技术有限公司 | 一种油田锅炉的控制系统的can总线结构 |
-
2003
- 2003-07-15 JP JP2003197424A patent/JP2005038026A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009202720A (ja) * | 2008-02-27 | 2009-09-10 | Toyota Motor Corp | 通信システム、その異常推定方法、及び情報読出装置 |
CN103116350A (zh) * | 2012-12-06 | 2013-05-22 | 金龙联合汽车工业(苏州)有限公司 | 汽车can通讯失效检测系统及其检测方法 |
CN104483885A (zh) * | 2014-11-12 | 2015-04-01 | 宁夏嘉翔自控技术有限公司 | 一种油田锅炉的控制系统的can总线结构 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11561920B2 (en) | Interface for bridging out-of-band information from a downstream communication link to an upstream communication link | |
TWI536776B (zh) | 具有usb2.0高速模式及自動速度檢測之usb隔離器積體電路 | |
JP6093031B2 (ja) | プロトコル例外状態を利用したデータ伝送 | |
JP2019528644A (ja) | リモートバスイネーブルのためのシステムおよび技法 | |
US6559783B1 (en) | Programmable auto-converting analog to digital conversion module | |
US20220239576A1 (en) | Error detection test device for a subscriber station of a serial bus system and method for testing mechanisms for detecting errors in a communication in a serial bus system | |
CN113507404B (zh) | 通信系统中适应性利用多个电源的设备及方法 | |
EP2985955B1 (en) | Controller area network (can) device and method for emulating classic can error management | |
CN102474438B (zh) | 环状传输系统中的节点装置、集成电路及控制方法 | |
CN110663193B (zh) | 用于在微控制器与收发器组件之间通信的方法 | |
US8560877B2 (en) | Image processing apparatus and method of transmitting reference clock | |
JP2005038026A (ja) | Canコントローラを含むマイクロコントローラ | |
CN109257260B (zh) | 通信系统中多个电源的适应性应用 | |
US10728064B2 (en) | Interface circuit | |
JP2006171868A (ja) | 印字装置 | |
US11729643B2 (en) | Communication device and image forming apparatus | |
CN118118446A (zh) | 一种交换机及交换机系统 | |
CN117762834A (zh) | 用于确定装置与总线断开连接的设备和方法 | |
JP2002094512A (ja) | 障害検出方法およびインタフェースユニットおよびセル交換ユニット | |
JP2021064855A (ja) | 電子制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050428 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050606 |