(57)【要約】【課題】大容量のメモリを必要とせず、簡単な演算により誤差を補正することができるアナログデジタル変換装置を提供することを課題とする。【解決手段】アナログデジタル変換装置は、アナログ電圧を入力し、前記アナログ電圧をデジタル値に変換し、変換されたデジタル値を出力するアナログデジタル変換器（２０３）と、前記アナログデジタル変換器に第１のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第１のデジタル値と、前記アナログデジタル変換器に前記第１のアナログ電圧と電圧値が異なる第２のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第２のデジタル値とを基に、オフセット補正値を演算するオフセット補正部（２０４）とを有し、前記アナログデジタル変換器は、前記オフセット補正値の演算後、前記変換されたデジタル値に対して前記オフセット補正値が減算されたデジタル値を出力する。【選択図】図２
2014165649.tif 000002
【特許請求の範囲】
【請求項１】
アナログ電圧を入力し、前記アナログ電圧をデジタル値に変換し、前記変換されたデジタル値を出力するアナログデジタル変換器と、
前記アナログデジタル変換器に第１のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第１のデジタル値と、前記アナログデジタル変換器に前記第１のアナログ電圧と電圧値が異なる第２のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第２のデジタル値とを基に、オフセット補正値を演算するオフセット補正部とを有し、
前記アナログデジタル変換器は、前記オフセット補正値の演算後、前記変換されたデジタル値に対して前記オフセット補正値が減算されたデジタル値を出力することを特徴とするアナログデジタル変換装置。
【請求項２】
前記第１のアナログ電圧は、前記アナログデジタル変換器の入力レンジの最低電圧であり、
前記第２のアナログ電圧は、前記アナログデジタル変換器の入力レンジの最高電圧であることを特徴とする請求項１記載のアナログデジタル変換装置。
【請求項３】
前記オフセット補正部は、前記第１のデジタル値の誤差の絶対値と前記第２のデジタル値の誤差の絶対値との平均値を前記オフセット補正値として演算することを特徴とする請求項１又は２記載のアナログデジタル変換装置。
【請求項４】
さらに、内部クロック信号を生成する内部発振器を有し、
前記アナログデジタル変換器は、前記オフセット補正値の演算期間では、前記内部クロック信号に同期して前記変換を行い、前記オフセット補正値の演算期間の後では、外部クロック信号に同期して、前記変換されたデジタル値に対して前記オフセット補正値が減算されたデジタル値を出力することを特徴とする請求項１〜３のいずれか１項に記載のアナログデジタル変換装置。
【請求項５】
さらに、電源電圧が閾値より高くなるとパワーオンリセット信号を生成するパワーオンリセット発生回路を有し、
前記オフセット補正部は、前記パワーオンリセット信号が生成されると、前記オフセット補正値の演算を開始することを特徴とする請求項１〜４のいずれか１項に記載のアナログデジタル変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アナログデジタル変換装置に関する。
【背景技術】
【０００２】
逐次比較型アナログデジタル変換装置は、その装置の構成上、基準電圧と入力電圧を比較するコンパレータに対しオフセット誤差が発生する。オフセット誤差が大きいと、アナログデジタル変換装置の総合誤差が大きくなる。オフセット誤差を適切に補正することにより、アナログデジタル変換装置の総合誤差を小さくすることができる。マイクロコントローラにアナログデジタル変換装置を搭載して使用する場合、アナログデジタル変換装置自体の製造ばらつきに加え、周辺部品のばらつきや周辺環境（温度、電圧など）により総合誤差が大きくなる。総合誤差は、特に、モーターの分野では重要視されるパラメータであり、この値をできるだけ小さくすることは市場要求とも言える。また、モーターの分野では、システムの決まった周期の中で、アナログデジタル変換（及び補正）→トルク制御処理→モーターへのフィードバックを実施する必要があり、中央処理装置（ＣＰＵ）への負荷を極力抑えることも市場要求と言える。
【０００３】
測定対象のアナログ信号をデジタル信号に変換し、変換の誤差を補正するＡ／Ｄ変換回路が知られている（例えば、特許文献１参照）。そのＡ／Ｄ変換回路は、温度計測回路によって計測されるＡ／Ｄ変換器周辺の温度に温度変化が検出されたら、記憶回路より計測温度に応じた補正値を検索し、存在した場合は検索された補正値を以降の誤差補正に用いる。
【０００４】
また、入力されたアナログ信号をデジタル信号に変換して出力するＡ／Ｄ変換装置におけるデータ補正方法が知られている（例えば、特許文献２参照）。そのデータ補正方法は、アナログ信号をデジタル信号に変換した後のデジタル信号を最小二乗法を用いて求められたデジタル信号と、予め与えられた理想デジタル信号との値の差分により補正値を求める。そして、この補正値に基づいてゲイン／オフセット誤差及び非直線性誤差を補正演算する。
【０００５】
また、Ａ／Ｄコンバータで得られた変換値と理論値との誤差に基づいた補正値を制御回路により不揮発性メモリから読み出し、読み出した補正値により変換値を補正した値をＡ／Ｄ変換結果として出力するＡ／Ｄコンバータが知られている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２４４７７１号公報
【特許文献２】特開平１０−１４５２３１号公報
【特許文献３】特開平１１−８８１６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
アナログデジタル変換装置の総合誤差を小さくするには、複雑な補正演算や大容量のメモリが必要になり、スループットが低下し、アナログデジタル変換装置が大型化する課題が存在する。
【０００８】
本発明の目的は、大容量のメモリを必要とせず、簡単な演算により誤差を補正することができるアナログデジタル変換装置を提供することである。
【課題を解決するための手段】
【０００９】
アナログデジタル変換装置は、アナログ電圧を入力し、前記アナログ電圧をデジタル値に変換し、前記変換されたデジタル値を出力するアナログデジタル変換器と、前記アナログデジタル変換器に第１のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第１のデジタル値と、前記アナログデジタル変換器に前記第１のアナログ電圧と電圧値が異なる第２のアナログ電圧を入力することにより前記アナログデジタル変換器から出力される第２のデジタル値とを基に、オフセット補正値を演算するオフセット補正部とを有し、前記アナログデジタル変換器は、前記オフセット補正値の演算後、前記変換されたデジタル値に対して前記オフセット補正値が減算されたデジタル値を出力する。
【発明の効果】
【００１０】
大容量のメモリを必要とせず、簡単な演算により誤差を補正することができるので、スループットの低下を防止し、アナログデジタル変換装置の大型化を防止することができる。
【図面の簡単な説明】
【００１１】
【図１】図１（Ａ）及び（Ｂ）は、アナログデジタル変換装置の入出力特性の例を示すグラフである。
【図２】図２は、本実施形態によるマイクロコントローラの構成例を示す図である。
【図３】図３は、図２のマイクロコントローラの動作例を示すタイミングチャートである。
【図４】図４は、図２のマイクロコントローラの処理例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
図１（Ａ）は、本実施形態によるアナログデジタル変換装置の入出力特性の例を示すグラフである。横軸は、アナログデジタル変換装置の入力アナログ電圧ＡＤＩＮを示す。縦軸は、アナログデジタル変換装置の出力デジタル値ＡＤＯＵＴを示す。アナログデジタル変換装置は、アナログ電圧ＡＤＩＮを入力し、アナログ電圧ＡＤＩＮをデジタル値ＡＤＯＵＴに変換し、その変換されたデジタル値ＡＤＯＵＴを出力する。直線１０１は、理想の入出力特性を示す。直線１０２は、補正前の実際の入出力特性を示す。直線１０３は、補正後の入出力特性を示す。アナログ電圧ＡＤＩＮの入力レンジは、最低電圧が０［Ｖ］であり、最高電圧がＡＶＲＨＩ［Ｖ］である。
【００１３】
理想の入出力特性を示す直線１０１は、次式（１）で表される。ここで、Ｋ１は、アナログデジタル変換装置のゲインを示す。
ＡＤＯＵＴ＝Ｋ１×ＡＤＩＮ      ・・・（１）
【００１４】
式（１）の理想の入出力特性の直線１０１に対し、実際の入出力特性の直線１０２は、次式（２）に示すように、ゲイン誤差α及びオフセット誤差Ａ１により、切片Ａ１及び傾き（１＋α）×Ｋ１をもった１次関数で表わされる。
ＡＤＯＵＴａ＝（１＋α）×Ｋ１×ＡＤＩＮ＋Ａ１      ・・・（２）
【００１５】
次に、上記のオフセット誤差Ａ１及びゲイン誤差αの算出方法を説明する。まず、オフセット誤差Ａ１の算出方法を説明する。入力アナログ電圧ＡＤＩＮが０［Ｖ］の時の出力デジタル値ＡＤＯＵＴａをＡＤＯＵＴｇとすると、出力デジタル値ＡＤＯＵＴｇは、式（２）を基に次式（３）で表される。
ＡＤＯＵＴｇ＝（１＋α）×Ｋ１×０＋Ａ１
＝Ａ１                            ・・・（３）
【００１６】
したがって、オフセット誤差Ａ１は、出力デジタル値ＡＤＯＵＴｇと同じ値として算出することができる。
【００１７】
次に、ゲイン誤差αの算出方法を説明する。入力アナログ電圧ＡＤＩＮが基準電圧ＡＤＩＮｒ（例えば最高電圧）の時の出力デジタル値ＡＤＯＵＴａをＡＤＯＵＴｒとすると、式（２）により、出力デジタル値ＡＤＯＵＴｒは、次式（４）で表される。
ＡＤＯＵＴｒ＝（１＋α）×Ｋ１×ＡＤＩＮｒ＋Ａ１      ・・・（４）
【００１８】
式（４）より、ゲイン誤差αは、次式（５）で表される。
α=（（ＡＤＯＵＴｒ−Ａ１）／（Ｋ１×ＡＤＩＮｒ））−１      ・・・（５）
【００１９】
式（３）のオフセット誤差Ａ１及び式（５）のゲイン誤差αを用いて、式（２）の実際の出力デジタル値ＡＤＯＵＴａを基に、式（１）の理想の出力デジタル値ＡＤＯＵＴを算出する。具体的には、式（１）より、次式（６）が成立する。
ＡＤＩＮ＝ＡＤＯＵＴ／Ｋ１      ・・・（６）
【００２０】
式（６）を式（２）に代入すると、次式（７）が成立する。
ＡＤＯＵＴａ＝（１＋α）×Ｋ１×（ＡＤＯＵＴ／Ｋ１）＋Ａ１
＝（１＋α）×ＡＤＯＵＴ＋Ａ１                  ・・・（７）
【００２１】
式（７）より、理想の出力デジタル値ＡＤＯＵＴは、次式（８）で表される。
ＡＤＯＵＴ＝（ＡＤＯＵＴａ−Ａ１）／（１＋α）      ・・・（８）
【００２２】
以上のように、式（３）よりオフセット誤差Ａ１を算出し、式（５）よりゲイン誤差αを算出すれば、式（８）を用いて、実際の出力デジタル値ＡＤＯＵＴａを基に、理想の出力デジタル値ＡＤＯＵＴを算出することができる。
【００２３】
しかし、この方法では、アナログデジタル変換の度に、下記の２個の処理を行う必要がある。
［１］メモリからのオフセット誤差Ａ１及びゲイン誤差αの読み出し
［２］ＣＰＵによる上記の演算処理による出力デジタル値の補正
【００２４】
これらの処理は、比較的複雑であり、ＣＰＵへ負荷をかけることになり、例えば頻繁にアナログデジタル変換を実施するシステムでは、スループットの低下を引き起こす。また、補正処理のためのソフトウェアが必要となる。また、オフセット誤差Ａ１及びゲイン誤差αを記憶するためのメモリを用意する必要があり、半導体チップサイズの増大も懸念される。
【００２５】
そこで、本実施形態では、実際の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴからオフセット補正値Ａ３を減算することにより、補正後の入出力特性の直線１０３の出力デジタル値ＡＤＯＵＴを得る。本実施形態は、補正精度は上記の補正方法より落ちるが、大容量メモリを必要とせず、簡単な演算（減算）により誤差を補正することができるので、スループットの低下を防止し、アナログデジタル変換装置の大型化を防止することができる。
【００２６】
次に、オフセット補正値Ａ３の演算方法を説明する。例えば、１２ビットのアナログデジタル変換装置の場合、アナログ電圧ＡＤＩＮの入力レンジは、最低アナログ電圧が０Ｖであり、最高アナログ電圧がＡＶＲＨＩ（例えば５Ｖ）であり、デジタル値ＡＤＯＵＴの出力レンジは、最小デジタル値が「０」であり、最高デジタル値が「４０９６」である。
【００２７】
入力アナログ電圧ＡＤＩＮが最低電圧０［Ｖ］の時、実際の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴは、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴ（＝０）に対して、誤差Ａ１を有する。
【００２８】
また、入力アナログ電圧ＡＤＩＮが最高電圧ＡＶＲＨＩの時、実際の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴは、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴ（＝４０９６）に対して、誤差Ａ２を有する。
【００２９】
オフセット補正値Ａ３は、次式（９）のように、誤差Ａ１の絶対値と誤差Ａ２の絶対値との平均値として演算する。
Ａ３＝（｜Ａ１｜＋｜Ａ２｜）／２      ・・・（９）
【００３０】
その後、上記のように、実際の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴからオフセット補正値Ａ３を減算することにより、補正後の入出力特性の直線１０３の出力デジタル値ＡＤＯＵＴを得る。
【００３１】
補正前の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴは、入力アナログ電圧ＡＤＩＮが最低電圧０［Ｖ］の時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差Ａ１を有し、入力アナログ電圧ＡＤＩＮが最高電圧ＡＶＲＨＩの時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差Ａ２を有する。したがって、補正前の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴは、最大誤差がＡ１である。
【００３２】
これに対し、補正後の入出力特性の直線１０３の出力デジタル値ＡＤＯＵＴは、入力アナログ電圧ＡＤＩＮが最低電圧０［Ｖ］の時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差Ａ４を有し、入力アナログ電圧ＡＤＩＮが最高電圧ＡＶＲＨＩの時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差Ａ５を有する。したがって、補正後の入出力特性の直線１０３の出力デジタル値ＡＤＯＵＴは、最大誤差がＡ４又はＡ５であり、上記の補正前の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴの最大誤差Ａ１より小さくなる。
【００３３】
図１（Ｂ）は、図１（Ａ）に対応し、オフセット誤差Ａ１を０にするための補正方法を説明するためのグラフである。補正後の入出力特性の直線１０４の出力デジタル値ＡＤＯＵＴは、実際の入出力特性の直線１０２の出力デジタル値ＡＤＯＵＴからオフセット誤差Ａ１を減算することにより得られる。補正後の入出力特性の直線１０４の出力デジタル値ＡＤＯＵＴは、入力アナログ電圧ＡＤＩＮが最低電圧０［Ｖ］の時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差が０であり、入力アナログ電圧ＡＤＩＮが最高電圧ＡＶＲＨＩの時には、理想の入出力特性の直線１０１の出力デジタル値ＡＤＯＵＴに対して誤差Ａ６を有する。したがって、補正後の入出力特性の直線１０４の出力デジタル値ＡＤＯＵＴは、最大誤差がＡ６であり、図１（Ａ）の補正後の入出力特性の直線１０３の出力デジタル値ＡＤＯＵＴの最大誤差Ａ４又はＡ５より大きくなってしまう。したがって、図１（Ｂ）の直線１０４の補正より、図１（Ａ）の直線１０３の補正が好ましい。
【００３４】
図２は、本実施形態によるマイクロコントローラ２０１の構成例を示す図である。マイクロコントローラ２０１は、ＣＰＵ２０２及びアナログデジタル変換装置を有する。アナログデジタル変換装置は、アナログデジタル変換器２０３、オフセット補正部２０４、リセット発生回路２０５、パワーオンリセット発生回路２０６、内部発振器２０７及びセレクタ２０８を有する。オフセット補正部２０４は、タイミング制御回路２０９、クロック制御回路２１０、スイッチ２１１、レジスタ２１２〜２１４、補数化処理回路２１５、加算器２１６，２１７及び１ビット右シフト回路２１８を有する。
【００３５】
図３は図２のマイクロコントローラ２０１の動作例を示すタイミングチャートであり、図４は図２のマイクロコントローラ２０１の処理例を示すフローチャートである。マイクロコントローラ２０１は、外部から、電源電圧Ｖｃｃ及び外部クロック信号ＸＣＬＫを入力する。初期時、電源電圧Ｖｃｃは０［Ｖ］であり、パワーオンリセット信号ＰＯＮＲはハイレベルであり、リセット信号ＲＳはハイレベルである。
【００３６】
ステップＳ４０１では、マイクロコントローラ（マイコン）２０１の電源がオンになると、電源電圧Ｖｃｃは０Ｖから５Ｖに立ち上がる。次に、ステップＳ４０２では、マイクロコントローラ２０１は、アナログデジタル（ＡＤ）変換器２０３の電源端子に電源電圧を印加する。次に、ステップＳ４０３では、パワーオンリセット発生回路２０６は、電源電圧Ｖｃｃが閾値より高くなると、パワーオンリセット信号ＰＯＮＲをハイレベルからローレベルに切り替える。オフセット補正部２０４は、パワーオンリセット信号ＰＯＮＲがローレベルになると、下記のオフセット補正値ＯＦＳＴの演算を開始する。
【００３７】
次に、ステップＳ４０４では、タイミング制御回路２０９は、パワーオンリセット信号ＰＯＮＲがローレベルに立ち下がると、切り替え信号ＭＤをハイレベルからローレベルに変更する。クロック制御回路２１０は、切り替え信号ＭＤがハイレベルの場合には、外部クロック信号ＸＣＬＫを選択し、切り替え信号ＭＤがローレベルの場合には、内部発振器２０７が生成する内部クロック信号ＣＲＣＬＫを選択し、その選択したクロック信号をクロック信号ＡＤＣＬＫとして、アナログデジタル変換器２０３に出力する。内部発振器２０７は、例えば、ＣＲ発振回路であり、内部クロック信号ＣＲＣＬＫを生成する。電源オン直後は、外部クロック信号ＸＣＬＫは安定していないので、切り替え信号ＭＤをローレベルにし、内部クロック信号ＣＲＣＬＫをクロック信号ＡＤＣＬＫとしてアナログデジタル変換器２０３に供給する。下記のオフセット補正値ＯＦＳＴの演算は、外部クロック信号ＸＣＬＫの安定待ち時間を利用して行う。外部クロック信号ＸＣＬＫは、例えば、水晶回路及び位相ロックループ（ＰＬＬ）回路により生成される。
【００３８】
次に、ステップＳ４０５では、タイミング制御回路２０９は、パワーオンリセット信号ＰＯＮＲがローレベルに立ち下がると、時刻ｔ１において、「００」の２ビット制御信号ＳＷを出力する。セレクタ２０８は、「００」の２ビット制御信号ＳＷを入力すると、最低電圧ＧＮＤＩを選択し、最低電圧ＧＮＤＩを入力アナログ電圧ＡＤＩＮとしてアナログデジタル変換器２０３に出力する。最低電圧ＧＮＤＩは、アナログデジタル変換器２０３のアナログ電圧ＡＤＩＮの入力レンジの最低電圧であり、例えば０［Ｖ］である。
【００３９】
次に、ステップＳ４０６では、タイミング制御回路２０９は、時刻ｔ１から所定時間経過後に、ハイレベルパルスのスタート信号ＳＴをアナログデジタル変換器２０３に出力する。すると、アナログデジタル変換器２０３は、クロック信号ＡＤＣＬＫに同期して、アナログ電圧ＡＤＩＮを入力し、アナログ電圧ＡＤＩＮをデジタル値ＡＤＯＵＴに変換し、その変換されたデジタル値ＡＤＯＵＴをオフセット補正部２０４に出力する。
【００４０】
次に、ステップＳ４０７では、スイッチ２１１は、２ビット制御信号ＳＷが「００」であるので、デジタル値ＡＤＯＵＴをレジスタ２１２に出力する。レジスタ２１２には、デジタル値ＡＤＯＵＴが書き込まれる。すなわち、レジスタ２１２には、アナログデジタル変換器２０３に最低電圧ＧＮＤＩを入力することによりアナログデジタル変換器２０３から出力されるデジタル値ＡＤＯＵＴが書き込まれる。
【００４１】
次に、ステップＳ４０８では、タイミング制御回路２０９は、時刻ｔ１から所定時間経過後の時刻ｔ２において、「１１」の２ビット制御信号ＳＷを出力する。セレクタ２０８は、「１１」の２ビット制御信号ＳＷを入力すると、最高電圧ＡＶＲＨＩを選択し、最高電圧ＡＶＲＨＩを入力アナログ電圧ＡＤＩＮとしてアナログデジタル変換器２０３に出力する。最高電圧ＡＶＲＨＩは、アナログデジタル変換器２０３のアナログ電圧ＡＤＩＮの入力レンジの最高電圧であり、例えば５［Ｖ］である。
【００４２】
次に、ステップＳ４０９では、タイミング制御回路２０９は、時刻ｔ２から所定時間経過後に、ハイレベルパルスのスタート信号ＳＴをアナログデジタル変換器２０３に出力する。すると、アナログデジタル変換器２０３は、クロック信号ＡＤＣＬＫに同期して、アナログ電圧ＡＤＩＮを入力し、アナログ電圧ＡＤＩＮをデジタル値ＡＤＯＵＴに変換し、その変換されたデジタル値ＡＤＯＵＴをオフセット補正部２０４に出力する。
【００４３】
次に、ステップＳ４１０では、スイッチ２１１は、２ビット制御信号ＳＷが「１１」であるので、デジタル値ＡＤＯＵＴをレジスタ２１３に出力する。レジスタ２１３には、デジタル値ＡＤＯＵＴが書き込まれる。すなわち、レジスタ２１３には、アナログデジタル変換器２０３に最高電圧ＡＶＲＨＩを入力することによりアナログデジタル変換器２０３から出力されるデジタル値ＡＤＯＵＴが書き込まれる。
【００４４】
次に、ステップＳ４１１では、補数化処理回路２１５は、レジスタ２１３に記憶されているデジタル値ＦＲＥＧ１を補数化し、デジタル値ＦＲＥＧ２を出力する。デジタル値ＦＲＥＧ２は、ＦＲＥＧ２＝−１×ＦＲＥＧ１で表される。加算器２１６は、レジスタ２１４に記憶されている値「４０９６」とデジタル値ＦＲＥＧ２を加算し、デジタル値ＦＲＥＧ３（＝４０９６−ＦＲＥＧ１）を出力する。値「４０９６」は、１２ビットのアナログデジタル変換器２０３の出力レンジの最大値である。デジタル値ＦＲＥＧ３は、図１（Ａ）の誤差Ａ２に対応する。
【００４５】
加算器２１７は、レジスタ２１２に記憶されているデジタル値ＺＲＥＧとデジタル値ＦＲＥＧ３とを加算し、デジタル値ＺＦを出力する。デジタル値ＺＲＥＧは図１（Ａ）の誤差Ａ１に対応し、デジタル値ＦＲＥＧ３は図１（Ａ）の誤差Ａ２に対応する。デジタル値ＺＦは、Ａ１＋Ａ２に対応する。
【００４６】
１ビット右シフト回路２１８は、デジタル値ＺＦを１ビット右シフトすることより、オフセット補正値ＯＦＳＴ（＝ＺＦ／２）を出力する。オフセット補正値ＯＦＳＴは、図１（Ａ）のオフセット補正値Ａ３（＝（Ａ１＋Ａ２）／２）に対応する。
【００４７】
次に、ステップＳ４１２では、アナログデジタル変換器２０３は、オフセット補正値ＯＦＳＴを入力し、オフセット補正値ＯＦＳＴの設定を行う。その後、タイミング制御回路２０９は、時刻ｔ２から所定時間経過後の時刻ｔ３において、「０１」の２ビット制御信号ＳＷを出力する。セレクタ２０８は、「０１」の２ビット制御信号ＳＷを入力すると、入力アナログ電圧ＡＮＩＮを選択し、入力アナログ電圧ＡＮＩＮを入力アナログ電圧ＡＤＩＮとしてアナログデジタル変換器２０３に出力する。
【００４８】
次に、ステップＳ４１３では、タイミング制御回路２０９は、切り替え信号ＭＤをローレベルからハイレベルに切り替える。クロック制御回路２１０は、切り替え信号ＭＤがハイレベルになると、外部クロック信号ＸＣＬＫをクロック信号ＡＤＣＬＫとしてアナログデジタル変換器２０３に出力する。すなわち、外部クロック信号ＸＣＬＫの安定待ち時間経過後に、外部クロック信号ＸＣＬＫをアナログデジタル変換器２０３に供給する。
【００４９】
次に、ステップＳ４１４では、リセット発生回路２０５は、パワーオンリセット信号ＰＯＮＲの立ち下がりエッジから所定時間経過後に、リセット信号ＲＳをハイレベルからローレベルに切り替える。ＣＰＵ２０２は、リセット信号ＲＳがローレベルになると、プログラムに従った動作を開始する。具体的には、ＣＰＵ２０２は、制御信号ＣＣＮにより、アナログデジタル変換器２０３にアナログデジタル変換を指示する。すると、アナログデジタル変換器２０３は、クロック信号ＡＤＣＬＫに同期して、入力アナログ電圧ＡＤＩＮをデジタル値に変換し、その変換されたデジタル値に対してオフセット補正値ＯＦＳＴが減算されたデジタル値ＡＤＯＵＴを出力する。これにより、アナログデジタル変換器２０３の誤差を低減することができる。
【００５０】
以上のように、ステップＳ４０５〜Ｓ４０７では、オフセット補正部２０４は、アナログデジタル変換器２０３に第１のアナログ電圧（例えば最低電圧）ＧＮＤＩを入力することによりアナログデジタル変換器２０３から出力される第１のデジタル値ＺＲＥＧをレジスタ２１２に格納する。次に、ステップＳ４０８〜Ｓ４１０では、オフセット補正部２０４は、アナログデジタル変換器２０３に第２のアナログ電圧（例えば最高電圧）ＡＶＲＨＩを入力することによりアナログデジタル変換器２０３から出力される第２のデジタル値ＦＲＥＧ１をレジスタ２１３に格納する。次に、ステップＳ４１１では、オフセット補正部２０４は、レジスタ２１２の第１のデジタル値ＺＲＥＧとレジスタ２１３の第２のデジタル値ＦＲＥＧ１とを基に、オフセット補正値ＯＦＳＴを演算する。アナログデジタル変換器２０３は、オフセット補正値ＯＦＳＴの演算後、入力アナログ電圧ＡＮＩＮをデジタル値に変換し、その変換されたデジタル値に対してオフセット補正値ＯＦＳＴが減算されたデジタル値ＡＤＯＵＴを出力する。
【００５１】
アナログデジタル変換器２０３は、オフセット補正値ＯＦＳＴの演算期間ｔ１〜ｔ３では、内部クロック信号ＣＲＣＬＫに同期してアナログデジタル変換を行う。これに対し、アナログデジタル変換器２０３は、オフセット補正値ＯＦＳＴの演算期間ｔ１〜ｔ３の後では、外部クロック信号ＸＣＬＫに同期して、アナログデジタル変換されたデジタル値に対してオフセット補正値ＯＦＳＴが減算されたデジタル値ＡＤＯＵＴを出力する。
【００５２】
本実施形態によれば、電源投入直後にのみオフセット補正値ＯＦＳＴの演算を行い、アナログデジタル変換の度にオフセット補正値の演算を行わないので、アナログデジタル変換の速度の低下を防止することができる。また、オフセット補正値ＯＦＳＴの演算は簡単な演算であるため、オフセット補正部２０４により演算可能である。また、オフセット補正処理も簡単な演算（減算）であるため、アナログデジタル変換器２０３により演算可能である。これにより、ＣＰＵ２０２は、補正処理が不要になるので、処理負担を軽減することができ、スループットの低下を防止することができる。また、コストを低減することができる。
【００５３】
上記では、外部クロック信号ＸＣＬＫの水晶発振安定待ち時間を利用して、オフセット補正値ＯＦＳＴを演算する方法を示しているが、例えば、ソフトウェアにより、ユーザが任意のタイミングでオフセット補正値ＯＦＳＴを再演算させてもよい。
【００５４】
また、オフセット補正部２０４又はＣＰＵ２０２は、演算されたオフセット補正値ＯＦＳＴを基に、アナログデジタル変換器２０３の故障を検出することができる。具体的には、オフセット補正値ＯＦＳＴが閾値（オフセット値又は誤差の規格値に基づく値）より大きな値であれば、アナログデジタル変換器２０３の故障と判断し、エラーフラグを立てることで、パワーオン時にアナログデジタル変換器２０３の異常を検知することができる。
【００５５】
本実施形態では、アナログデジタル変換器２０３が自己でオフセット補正を行う。オフセット補正値ＯＦＳＴの演算は、オフセット補正部２０４のハードウェアで実現し、アナログデジタル変換毎の演算の必要がなく、演算処理のソフトウェアの開発も不要である。また、ＣＰＵ２０２を使用した補正処理が不要となるため、ＣＰＵ２０２の負荷の低減、ひいては、パフォーマンスの高いマイクロコントローラ２０１を提供することができる。
【００５６】
また、本実施形態は、アナログデジタル変換器２０３自体がオフセット補正するために、補正データを保持するための大容量のメモリが不要となる。これにより、半導体チップサイズの縮小による低コスト化の効果が得られる。
【００５７】
また、オフセット補正値ＯＦＳＴの演算は、電源立上げ時、外部リセット時、タイマートリガ時、割込み発生時など、使用する側の必要なタイミングで選択することができ、使用環境にも対応した決め細かい再演算を実現できる。
【００５８】
また、本実施形態は、オフセット補正値ＯＦＳＴが閾値を越えた場合には、アナログデジタル変換器２０３の異常を検出し、エラーフラグにより通知することができる。これにより、ＣＰＵ２０２は、エラーフラグに応じたソフト処理、又は割込み処理などにより、アナログデジタル変換器２０３の故障又は変換値の異常に対する動作の機能安全を実現することができる。
【００５９】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６０】
２０１  マイクロコントローラ
２０２  ＣＰＵ
２０３  アナログデジタル変換器
２０４  オフセット補正部
２０５  リセット発生回路
２０６  パワーオンリセット発生回路
２０７  内部発振器
２０８  セレクタ
【図１】
2014165649.tif 000003
【図２】
2014165649.tif 000004
【図３】
2014165649.tif 000005
【図４】
2014165649.tif 000006