JP5734057B2 - マイクロコントローラ及びその制御方法 - Google Patents

マイクロコントローラ及びその制御方法 Download PDF

Info

Publication number
JP5734057B2
JP5734057B2 JP2011079471A JP2011079471A JP5734057B2 JP 5734057 B2 JP5734057 B2 JP 5734057B2 JP 2011079471 A JP2011079471 A JP 2011079471A JP 2011079471 A JP2011079471 A JP 2011079471A JP 5734057 B2 JP5734057 B2 JP 5734057B2
Authority
JP
Japan
Prior art keywords
data
clock signal
input
oscillator
microcontroller
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.)
Active
Application number
JP2011079471A
Other languages
English (en)
Other versions
JP2012009011A (ja
Inventor
洋祐 川中
洋祐 川中
誠也 犬童
誠也 犬童
知哉 甲木
知哉 甲木
真一 中津
真一 中津
公治 江藤
公治 江藤
浩貴 下田
浩貴 下田
国泰 石原
国泰 石原
雄介 浦川
雄介 浦川
雄亮 坂口
雄亮 坂口
真吾 古田
真吾 古田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011079471A priority Critical patent/JP5734057B2/ja
Priority to US13/067,176 priority patent/US8751842B2/en
Publication of JP2012009011A publication Critical patent/JP2012009011A/ja
Priority to US14/295,461 priority patent/US9342097B2/en
Application granted granted Critical
Publication of JP5734057B2 publication Critical patent/JP5734057B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Power Sources (AREA)

Description

本発明は、マイクロコントローラ及びその制御方法に関するものである。
近年、機器の消費電力の低減化の要求が高まっている。例えば、UART通信機能を搭載したマイクロコントローラでは、図22の動作タイミングチャートに示すように、任意のタイミングで来るUARTデータの受信のため、常時チップステートをRUNの状態にしなければならない。つまり、マイクロコントローラにおいて、データ受信のためのUARTデータ受信部及びその受信データの処理のためCPUへのクロック供給が常に必要であった。この結果、UARTデータ受信の有無に関わらず多くの電力を消費していた。
このような問題を解決するため、特許文献1のような技術がある。図23に特許文献1で開示されているUARTデータの受信システム1のブロック図を示す。図23に示すように、受信システム1は、データ受信部2と、クロック信号供給制御手段3と、発振器4と、割込み制御部5と、CPU6とを有する。データ受信部2は、FIFOメモリ7を有する。
データ受信部2は、HALT(節電期間)中に受信信号のスタートビットを検出するとUARTデータのデータ受信を開始する。また、スタートビットを検出したデータ受信部2は、起動要求信号をクロック信号供給制御手段3に、割込み信号を割込み制御部5に出力する。このことにより、割込み制御部5、CPU6にクロック信号が供給され、割込み制御部5、CPU6が動作を開始する。
ここで、HALTであっても発振器4が停止していないことからデータ受信部2は、クロック信号供給制御手段3を経由したクロック信号に応じて動作している。このクロック信号を動作クロックとして、データ受信部2はFIFOメモリ7に、受信したUARTデータを格納する。
クロック信号供給制御手段3は、データ受信部2から起動要求信号を受信すると、割り込み制御部5及びCPU6へクロック信号を供給する。
割込み制御部5はデータ受信部2からの割込み信号を受信すると、他の周辺回路からの割込み信号との調停を行った後、CPU6へ割込み信号を出力する。
CPU6は、クロック供給が再開されると、データ受信部2のFIFOメモリ7内の全データを読み出す。そして、CPU6は、その後データ受信部2の受信バッファにあるUARTデータを直接読み出す。このような動作により、CPU6は、受信システム1が受信したUARTデータを漏らさず処理することが可能となる。
受信システム1の動作を説明するフローチャートを図24に示す。まず、HALT(節電期間)である場合(S1YES)、データ受信部2へクロック信号が供給され、CPU6へのクロック信号供給を停止している(S2)。データ受信部2がUARTデータの受信を開始すると起動要求信号がクロック信号供給制御手段3に送信され(S3YES)、CPU6へクロック信号が供給される(S4)。
図25に受信システム1の動作タイミングチャートを示す。図25に示すように、時刻t1以前では、受信システム1が構成されているチップのチップステートがHALTになっている。この状態では、割込み制御部5、CPU6にクロック信号が供給されておらず、図22のように常時動作している場合に比べ、消費電流が低減される。
時刻t1で、UARTデータを受信すると、割込み制御部5、CPU6にクロック信号が供給され、割込み制御部5、CPU6が動作を開始する。このため、チップステートもRUN状態となる。
UARTデータが送信されない時刻t2以降では、チップステートがHALTとなる。この状態では、時刻t1以前と同様、割込み制御部5、CPU6にクロック信号が供給されなくなるため消費電流が低減される。
また、関連技術として、その他にも特許文献2〜4のようなものがある。特許文献2には、発振制御部が発振イネーブル信号で水晶発振器を制御し、その発振イネーブル信号がロウレベルとなると水晶発振器が停止する技術が開示されている。また、特許文献3には、パリティエラーが検出されるとUARTが再送信要求信号を送信し、その後、UARTが動作を停止し、UART信号がロウレベルとなり待機状態となる技術が開示されている。更に、特許文献4には、所要のビット数を計数して受信完了を検出するまに、いずれの基本パターンとも異なる受信入力信号が入力される場合、これを異常と判定する技術が開示されている。
特開2007−58347号公報 特開2004−246793号公報 特開平5−342435号公報 特開2003−186863号公報
このように、従来の受信システム1では図25に示すように、時刻t1以前、時刻t2以降において、消費電流の低減化が可能である。しかし、受信システム1では、チップステートがHALTの状態でも、発振器4は常に動作を継続している。近年、機器の低消費電力化の要求がますます厳しくなっている。このように更なる消費電流の削減が要求されおり、マイクロコントローラチップの消費電力を可能な限り低減する機構が求められている。
本発明の一態様は、入力データが入力されると、前記入力データに応じて起動要求信号を出力するデータ入力部と、前記起動要求信号に応じて起動し、クロック信号を生成する発振器と、前記データ入力部からの前記起動要求信号を前記発振器に出力し、起動後に生成される前記発振器からのクロック信号を、前記データ入力部の動作クロック信号である第1のクロック信号と、第2のクロック信号として供給するクロック信号供給制御部と、前記第2のクロック信号を動作クロックとして動作し、その動作時に前記入力データに応じた処理を行うCPUと、を有するマイクロコントローラである。
本発明の他の態様は、発振器と、入力データを入力するデータ入力部と、前記入力データに応じた処理を行うCPUと、を備えるマイクロコントローラの制御方法であって、前記入力データが入力されると、前記入力データに応じて前記データ入力部が起動要求信号を出力し、前記起動要求信号に応じて前記発振器が起動し、クロック信号を生成し、前記発振器が生成したクロック信号に応じた第1のクロック信号により前記データ入力部が動作し、前記データ入力部が正常に動作を終了した場合、前記発振器が生成したクロック信号に応じた第2のクロック信号を動作クロックとして前記CPUに供給し、前記CPUの動作時に前記入力データに応じた処理を行うマイクロコントローラの制御方法である。
本発明にかかるマイクロコントローラでは、クロック信号を生成する発振器が、データ入力部の出力する起動要求信号を受け取るまで動作を停止している。このため、入力データがない状態では、発振器がクロック信号を生成せず、CPUも動作を停止している。よって、入力データがない状態の消費電流を、動作維持のための最小限度まで削減することが可能である。
本発明では、マイクロコントローラの消費電流の低減化が可能である。
実施の形態1にかかるマイクロコントローラのブロック構成である。 実施の形態1にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態1にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態1にかかるマイクロコントローラの動作を説明するためのフローチャートである。 実施の形態1にかかるマイクロコントローラの動作を説明するためのタイミングチャートである。 実施の形態1にかかるマイクロコントローラの動作を説明するためのタイミングチャートである。 実施の形態1にかかる発振器の好適な条件を説明するための表である。 一般的なUARTデータを説明するための模擬図である。 実施の形態1にかかるデータ受信部の動作を説明するためのタイミングチャートである。 実施の形態1にかかるマイクロコントローラの効果を説明するためのタイミングチャートである。 実施の形態2にかかるマイクロコントローラのブロック構成である。 実施の形態2にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態2にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態2にかかるマイクロコントローラの動作を説明するためのフローチャートである。 実施の形態2にかかるマイクロコントローラの動作を説明するためのタイミングチャートである。 実施の形態3にかかるマイクロコントローラのブロック構成である。 実施の形態3にかかるノイズ検出回路の構成とその周辺回路の接続関係を説明するための図である。 実施の形態3にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態3にかかるマイクロコントローラの動作を説明するためのブロック構成図である。 実施の形態3にかかるマイクロコントローラの動作を説明するためのフローチャートである。 実施の形態3にかかるマイクロコントローラの動作を説明するためのタイミングチャートである。 従来技術の問題点を説明するためのタイミングチャートである。 従来技術のブロック構成である。 従来技術の動作を説明するためのフローチャートである。 従来技術の動作を説明するためのタイミングチャートである。
発明の実施の形態1
以下、本発明を適用した具体的な実施の形態1について、図面を参照しながら詳細に説明する。この実施の形態1は、本発明をUARTの受信システムを有するマイクロコントローラに適用したものである。図1に本実施の形態にかかるマイクロコントローラ100のブロック構成を示す。
図1に示すように、マイクロコントローラ100は、データ受信部101と、クロック信号供給制御部102と、発振器103と、割込み制御部104と、CPU105とを有する。
データ受信部101は、カウンタ111と、制御回路112と、受信バッファ113とを有する。データ受信部101は、UARTデータの受信を開始し、スタートビットを検出すると、起動要求信号をクロック信号供給制御部102へ出力する。また、正常にUARTデータの受信が完了すると受信完了割り込み信号を割込み制御部104へ出力する。但し、UARTデータの受信エラーが発生した場合は、クロック信号供給制御部102への起動要求信号の出力を停止する。
また、データ受信部101は、カウンタ111を用いて、発振器103の発振安定時間によって発生するサンプリングタイミングの誤差を補正する。
発振器103は、クロック信号供給制御部102からの起動要求信号を受信すると動作を開始し、クロック信号をクロック信号供給制御部102へ供給する。また、クロック信号供給制御部102からの起動要求信号が停止した場合、チップステートがSTOPならば動作を停止する。このため、クロック信号供給制御部102へのクロック信号の供給も停止する。
なお、チップステートには、RUN、STOP、SNOOZEがあるものとする。チップステートがRUNの場合は、CPU105、データ受信部101、割込み制御部104にクロック信号が供給され、そのクロック信号に応じて、各々が動作している状態とする。また、チップステートがSTOPの場合は、発振器103が停止しており、データ受信部101、割込み制御部104、CPU105にクロック信号が供給されない状態とする。チップステートがSNOOZEの場合は、CPU105にクロック信号が供給されないが、クロック信号がデータ受信部101及び割り込み制御部104にはクロック信号が供給される状態とする。
クロック信号供給制御部102は、制御回路121を有する。データ受信部101から起動要求信号を受信すると、クロック信号供給制御部102は、その起動要求信号を発振器103へ出力する。上述したように、起動要求信号に応じて発振器103が起動し、起動後に発振器103はクロック信号の供給を開始する。そして、クロック信号供給制御部102は、発振器103から供給されたクロック信号をデータ受信部101及び割込み制御部104へ、それぞれクロック信号CLK1、CLK2として供給する。更にその後、受信完了割込み信号を受信すると、CPU105へクロック信号CLK3の供給を開始する。これら起動要求信号、受信完了割込み信号、クロック信号の各信号の入出力制御は制御回路121により制御される。
割込み制御部104は、データ受信部101から受信した受信完了割込み信号をクロック信号供給制御部102とCPU105へ出力する。なお、この割込み制御部104の機能は、データ受信部101の制御回路112が有するようにしてもよい。
CPU105は、クロック信号供給制御部102からクロック信号が供給されると、データ受信部101の受信バッファ113の保持するデータを読み出し、UART受信データの処理を開始する。
図2、図3を用いて、マイクロコントローラ100の基本動作を説明する。まず、図2に示すように、データ受信部101は、UARTデータを受信しデータのスタートビットを検出すると、例えばハイレベルの起動要求信号を出力する。クロック信号供給制御部102の制御回路121は、その起動要求信号を発振器103に出力し、発振器103がクロック信号の供給を開始する。なお、図中の実線の矢印は信号が入力されたことを、点線の矢印は信号が入力されていないことをそれぞれ意味する。
クロック信号供給制御部102は、発振器103からのクロック信号を、クロック信号CLK1としてデータ受信部101に、クロック信号CLK2として割り込み制御部104に供給する。そして、データ受信部101がクロック信号CLK1を動作クロックとして、割り込み制御部104がクロック信号CLK2を動作クロックとして動作を開始する。
なお、図2に示すように、発振器103が動作を開始し、データ受信部101及び割り込み制御部104にクロック信号が供給されるが、CPU105にはクロック信号が供給されないためチップステートがSNOOZEとなる。
次に、図3に示すように、UARTデータの受信を完了すると、データ受信部101が受信完了割込み信号を割込み制御部104へ出力する。また、データ受信部101は、起動要求信号の出力を停止する。割込み制御部104は、データ受信部101からの受信完了割込み信号をCPU105及びクロック信号供給制御部102の制御回路121へ出力する。
クロック信号供給制御部102は、クロック信号供給制御部102の制御回路121が受信完了割込み信号を受信すると発振器103からのクロック信号をクロック信号CLK3としてCPU105へ供給する。CPU105は割込み制御部104からの受信完了割込み信号で動作を開始し、クロック信号CLK3に応じてデータ受信部101の受信バッファ113から読み出したUARTデータを処理する。
なお、データ受信部101が起動要求信号の出力を停止することから、発振器103が入力する起動要求信号も停止する。しかし、発振器103は、CPU105が動作しておりチップステートがRUNとなっていることからクロック信号の供給を停止しない。
なお、CPU105が全ての処理を終了した場合、CPU105がチップステートをSTOPとする。この場合、発振器103が起動要求信号を入力していないため、発振器103は動作を停止する。このため、データ受信部101、割込み制御部104、CPU105も動作を停止し、データ受信部101がUARTデータを受信する前の状態に戻る。
次に、このようなマイクロコントローラ100の動作を説明するフローチャートを図4に示す。図4に示すように、節電期間(チップステートがSTOP)である場合(S101YES)では、発振器103が停止しており、データ受信部101、CPU105、割込み制御部104へのクロック信号の供給が停止する(S102)。
データ受信部101がUARTデータを受信し、起動要求信号が出力されると(S103YES)、データ受信部101、割込み制御部104へのクロック信号の供給が開始される(S104)。なお、この状態では、CPU105へクロック信号の供給がされていないため、チップステートはSNOOZEである。
データ受信部101がUARTデータを正常に受信完了した場合(S105YES)、CPU105へクロック信号の供給を開始する(S106)。つまり、チップステートがRUNとなる。なお、ステップS105で、データ受信部101がUARTデータを正常に受信完了しなかった場合(S105NO)、CPU105へクロック信号の供給を開始せず、ステップS102へ戻る。
次に、このようなマイクロコントローラ100の動作を説明するタイミングチャートを図5、図6に示す。図5はマイクロコントローラ100が、UARTデータを正常に受信した場合のタイミングチャートである。図6はマイクロコントローラ100が、UARTデータを正常に受信できず、受信エラーが発生した場合のタイミングチャートである。まず、図5のタイミングチャートの動作を説明する。
図5示すように、時刻t1以前は、データ受信部101がUARTデータを受信していない状態で、UARTデータの受信を待機している。このためチップステートはSTOPの状態であり、発振器103がクロック信号を供給していない。
時刻t1で、データ受信部101がUARTデータを受信する。UARTデータのスタートビット(ロウレベル)を検出すると、データ受信部101が起動要求信号をロウレベルからハイレベルに立ち上げる。このハイレベルの起動要求信号が、発振器103に入力され、時刻t2に発振器103がクロック信号の供給を開始する。そして、クロック信号供給制御部102からクロック信号CLK1がデータ受信部101に供給される。また、クロック信号CLK2が割込み制御部104に供給される。
時刻t2〜t3の間、データ受信部101がクロック信号CLK1の供給を受けて、UARTデータの受信動作を開始する。データ受信部101は、クロック信号CLK1のタイミングに応じて、UARTデータをサンプリングする。このサンプリングしたデータは、受信バッファ113に保持される。この時刻t2〜t3の間、チップステートはSNOOZEとなる。
時刻t3で、データ受信部101が、UARTデータのストップビット(ハイレベル)を検出すると、受信完了割込み信号を出力する。この受信割込み信号に応じて、クロック信号供給制御部102がクロック信号CLK3をCPU105に供給する。CPU105は、このクロック信号CLK3に応じて動作を開始し、受信バッファ113のUARTデータに対する処理を行う。
次に、図6のタイミングチャートの動作を説明する。時刻t2以前の動作は、図5で説明したのと同様であり、ここでの説明は省略する。
時刻t2〜t3でUARTデータの受信エラーが発生した場合、時刻t3にデータ受信部101は起動要求信号の出力を停止する(ハイレベルからロウレベルに立ち下げる)。発振器103は、チップステートがRUNでないときに、起動要求信号が停止されるためクロック信号の供給を停止する。このため、クロック信号CLK1、CLK2のデータ受信部101及び割込み制御部104への供給が停止される。よって、時刻t3以降は、チップステートがSTOPとなる。
なお、通常のマイクロコントローラではUARTデータの受信エラーが発生した場合、受信エラー割込み信号を出力し、その受信エラー割込み信号に応じてエラー処理を行う。しかし、本実施の形態1のマイクロコントローラ100では、受信エラー割込み信号を出力せず、起動要求信号を停止することでその後のエラー処理を行っている。
また、本実施の形態1の発振器103は、マイクロコントローラ100に接続するCR発振器や水晶発振器、もしくは、マイクロコントローラ100が備える内蔵発振器が考えられる。これらの発振器の特徴をまとめた表を図7に示す。図7に示すように、CR発振器は発振安定時間が短いが、周波数精度が低い。周波数精度が低いと、データ受信部101が受信する受信データのサンプリングに影響し、ボーレート誤差が大きくなる欠点がある。
また、図7に示すように、水晶発振器では、周波数精度は高いが、発振安定時間が長い欠点がある。発振安定時間が長いと、データ受信部101が行う最初のデータサンプリングに間に合わない場合があり、データ受信エラーが発生する可能性がある。
最後にマイクロコントローラ100が内蔵する内蔵発振器では、周波数精度も高く±2%程度以下でありボーレート誤差の悪化を低減できる。更に発振安定時間も短いため、データ受信部101の動作開始が、UARTデータのサンプリング開始限度期間内で収めることが可能となる。このため、本実施の形態1の発振器103は、内蔵発振器が最も好適であることがわかる。但し、UARTデータの送受信の規格によっては、CR発振器や水晶発振器を用いてもかまわない。
更に、内蔵発振器により発振器103が実現される場合であっても、発振安定時間によるUARTデータのサンプリング誤差が発生する場合がある。正確なUARTデータのサンプリングには、この誤差が補正される必要がある。このため、図8、図9を用いてデータ受信部101が行う上記誤差の補正について説明する。但し、以下では、マイクロコントローラ100が送受信するUARTデータが8ビットである場合を想定する。
まず、図8にUARTデータのプロトコルを示す。図8に示すように、データ受信部101が入力するUARTデータは、時間軸に対して、スタートビット(ST)、bit7〜bit0、パリティビット(P)、ストップビット(SP)の順で送信される。スタートビット(ST)は必ずロウレベルであり、ストップビット(SP)は必ずハイレベルである。
例えば、図8では、bit7〜bit0、パリティビット(P)が全てロウレベルである場合を示している。このように、UARTデータでは、スタートビット(ST)のロウレベルからハイレベルのストップビット(SP)までに、必ずロウレベルからハイレベルへの立ち上がる箇所があることになる。
図9に、本実施の形態1のデータ受信部101の動作タイミングチャートを示す。この図9では、データ受信部101に入力されるUARTデータ、データ受信部101内部で処理されるUARTデータ、カウンタ111がカウントするカウントデータ、受信バッファ113が有するシフトレジスタの記憶する値を示す。なお、データ受信部101に入力されるUARTデータのbit7〜bit1がロウレベル、bit0、パリティビット(P)がハイレベルであるとする。
また、本例ではカウンタ111は、サンプリングカウンタと、ビットカウンタを有するものとする。ここで、サンプリングカウンタはUARTデータのサンプリングするタイミングを規定し、ビットカウンタはUARTデータの何ビット目のデータをサンプリングしたかを識別する。
時刻t1にデータ受信部101にUARTデータが入力される。但し、上述したように、この時点でデータ受信部101にはクロック信号CLK1が入力されていない。このため、UARTデータのサンプリング動作を開始できない。
時刻t2に、クロック信号CLK1が入力され、サンプリング動作が開始される。このため、時刻t2からサンプリングカウンタ及びビットカウンタが動作を開始する。この時刻t1〜t2の遅延期間Tdlyは、上述した発振器103の発振安定期間に影響される。そして、時刻t2からサンプリングカウンタが規定する所定の期間後の時刻t3にデータ受信部101がスタートビット(ST)をサンプリングする。なお、サンプリング時点からビットカウンタが規定する所定の期間後に何ビット目のデータをサンプリングしたかの識別が毎回行われる。
時刻t4に、bit7のUARTデータがサンプリングされる。この場合、ロウレベルをサンプリングすることになるため、シフトレジスタが「xxxxxxx0」を記憶する。なお、上記「x」は不定の状態を示す。その後、時刻t5〜t10まで同様の動作を行い、ロウレベルのbit7〜bit1をサンプリングする。
時刻t11にUARTデータがロウレベルからハイレベルに立ち上がる。このとき、データ受信部101は、立ち上がりエッジに応じてカウンタをリセットし、リセット後に再びサンプリングカウンタとビットカウンタを動作(リスタート)させる。このリスタート後のサンプリングタイミングは、上述した発振安定時間によるサンプリング誤差を含んでいない。このため、時刻t11後にデータ受信部101が行うbit0、パリティビット(P)、ストップビット(SP)のサンプリングは、遅延期間Tdlyに影響されない正常なサンプリングタイミング(時刻t12、t13、・・・)で行うことができる。
このように、1つのUARTデータ中に必ず発生するロウからハイへの立ち上がりエッジを利用して発振器103の発振安定期間によるサンプリング誤差を補正する。なお、この補正は、発振器103が動作してから最初のUARTデータのみ実行される。これは、UARTデータを連続して入力する場合、CPU105が動作処理を続けチップステートがRUNのままとなり、発振器103が停止しないためである。
ここで、従来のマイクロコントローラでは任意のタイミングで入力されるUARTデータに対応するため、常時RUN状態を維持しなければならなかった。このため、図22に示すように、UARTデータの非受信の期間であっても常時消費電流が発生し低消費電力化が難しかった。また、図23の受信システム1においても、発振器4は常時動作しなければならず、その分の消費電流が発生する。このため、図25に示すように、図22と比較して低消費電流化が可能であるが、よりいっそうの消費電力の低減化は困難であった。
ここで本実施の形態1のマイクロコントローラ100は、チップステートがSTOPの場合、発振器103を停止させ、UARTデータを受信すると起動要求信号により発振器103を動作させ、チップステートをSNOOZEに移行させる。チップステートがSNOOZEの間は、動作クロック信号を供給せずCPU105の動作は停止しており、データ受信部101(及び割込み制御部104)に動作クロック信号を供給し動作させる。その後、UARTデータの受信が完了するとデータ受信部101が受信完了割込み信号を出力し、チップステートをRUNにする。チップステートがRUNの場合、動作クロック信号が供給されCPU105が動作を開始する。
このことにより、本実施の形態1のマイクロコントローラ100は、図10に示すように、チップステートがSTOPの場合(時刻t1以前)、動作クロック信号を供給する発振器103も停止しており、消費電流が極めて少ない状態とすることが可能である。
そして、UARTデータを受信し、チップステートがSNOOZEとなった場合(時刻t1〜t2の期間)、データ受信部101(及び割込み制御部104)は動作するが、CPU105の動作は停止する。このため、時刻t1〜t2の期間、消費電流は最大にならず、CPU105の消費電流分を削減している。このように、従来の受信システム1と比較しても、本実施の形態1は更なる消費電流の低減化が可能となっている。
発明の実施の形態2
以下、本発明を適用した具体的な実施の形態2について、図面を参照しながら詳細に説明する。この実施の形態2は、本発明を、AD変換機能を有するマイクロコントローラに適用したものである。図11に本実施の形態2にかかるマイクロコントローラ200のブロック構成を示す。
図11に示すように、マイクロコントローラ200は、AD変換部201と、クロック信号供給制御部102と、発振器103と、割込み制御部104と、CPU105とを有する。なお、図11に示された符号のうち、図1と同じ符号を付した構成は、図1と同じか又は類似の構成を示している。実施の形態2が実施の形態1と異なるのは、入力データがUARTデータから特に制限のないアナログ信号となり、データ受信部101がAD変換部201に置き換わった点である。よって、本実施の形態2では、その実施の形態1との相違部分を重点的に説明し、その他の実施の形態1と同様の部分は必要でない限り説明を省略する。
AD変換部201は、比較器211と、制御回路212と、バッファ213とを有する。AD変換部201は、クロック信号CLK1に応じて、アナログ入力信号をデジタルデータ信号に変換する。変換したデジタルデータは、バッファ213に記憶される。
比較器211は、アナログ入力信号の電圧と、基準電圧等で決定される閾値を入力し比較する。その比較結果は、起動トリガ信号として制御回路212へ送信される。例えば、アナログ入力信号の電圧が上記閾値を規定する基準電圧を超えるもしくは下回った場合、起動トリガ信号が比較器から出力される。
制御回路212は、実施の形態1の制御回路112とほぼ同様の動作を行うが、実施の形態1と異なり、起動要求信号の出力を、上記起動トリガ信号を基にして行う。また、アナログ入力信号からデジタルデータ信号へ変換を完了すると、実施の形態1の受信完了割込み信号の代わりに、変換完了割込み信号を出力する。
但し、実施の形態1の受信完了割込み信号と、変換完了割込み信号は、動作完了に対する割込み信号であり、基本的に同様の信号とみなしてかまわない。また、実施の形態1と同様、発振器103がクロック信号を供給していない状態をチップステートがSTOPであるとし、CPU105にクロック信号が供給され動作している状態をチップステートがRUNであるとする。更に、AD変換部201、割込み制御部104にクロック信号が供給され動作しているが、CPU105にはクロック信号が供給されておらず動作を停止している状態をチップステートがSNOOZEとする。
図12、図13を用いて、マイクロコントローラ200の基本動作を説明する。なお、起動トリガ信号は、アナログ入力信号が閾値を超えた場合に出力されるものとする。まず、図12に示すように、AD変換部201は、アナログ入力信号の電圧が上昇し閾値を超えると、例えばハイレベルの起動要求信号を出力する。クロック信号供給制御部102の制御回路121は、その起動要求信号を発振器103に出力し、発振器103がクロック信号の供給を開始する。
クロック信号供給制御部102は、発振器103からのクロック信号を、クロック信号CLK1としてAD変換部201に、クロック信号CLK2として割り込み制御部104に供給する。そして、AD変換部201がクロック信号CLK1を動作クロックとして、割り込み制御部104がクロック信号CLK2を動作クロックとして動作を開始する。
なお、図12に示すように、発振器103が動作を開始し、AD変換部201及び割り込み制御部104にクロック信号が供給されるが、CPU105にはクロック信号が供給されないためチップステートがSNOOZEとなる。
次に、図13に示すように、AD変換部201がアナログ入力信号をデジタルデータに変換完了すると、AD変換部201が変換完了割込み信号を割込み制御部104へ出力する。また、AD変換部201は、起動要求信号の出力を停止する。割込み制御部104は、AD変換部201からの変換完了割込み信号をCPU105及びクロック信号供給制御部102の制御回路121へ出力する。
クロック信号供給制御部102は、クロック信号供給制御部102の制御回路121が変換完了割込み信号を受信すると発振器103からのクロック信号をクロック信号CLK3としてCPU105へ供給する。CPU105は割込み制御部104からの変換完了割込み信号で動作を開始し、クロック信号CLK3に応じてAD変換部201のバッファ213から読み出したデジタルデータを処理する。
なお、AD変換部201が起動要求信号の出力を停止することから、発振器103が入力する起動要求信号も停止する。しかし、発振器103は、CPU105が動作しておりチップステートがRUNとなっていることからクロック信号の供給を停止しない。
なお、CPU105が全ての処理を終了した場合、CPU105がチップステートをSTOPとする。この場合、発振器103が起動要求信号を入力していないため、発振器103は動作を停止する。よって、AD変換部201、割込み制御部104、CPU105も動作を停止する。
次に、このようなマイクロコントローラ200の動作を説明するフローチャートを図14に示す。図14に示すように、節電期間(チップステートがSTOP)である場合(S201YES)では、発振器103が停止しており、AD変換部201、CPU105、割込み制御部104へのクロック信号の供給が停止する(S202)。
AD変換部201が入力するアナログ入力信号が閾値を超え、起動要求信号が出力されると(S203YES)、AD変換部201、割込み制御部104へのクロック信号の供給が開始される(S204)。なお、この状態では、CPU105へクロック信号の供給がされていないため、チップステートはSNOOZEである。
AD変換部201がアナログ入力信号をデジタルデータに変換完了した場合(S205YES)、CPU105へクロック信号の供給を開始する(S206)。つまり、チップステートがRUNとなる。
次に、このようなマイクロコントローラ200の動作を説明するタイミングチャートを図15に示す。図15に示すように、時刻t1以前は、AD変換部201に入力するアナログ入力信号が閾値を超えていない状態で、AD変換部201はAD変換動作を行わず、変換待機状態である。このためチップステートはSTOPの状態であり、発振器103がクロック信号を供給していない。
時刻t1で、AD変換部201に入力するアナログ入力信号が閾値を超えると、比較器211が起動トリガを出力し、制御回路212が起動要求信号をロウレベルからハイレベルに立ち上げる。このハイレベルの起動要求信号が、発振器103に入力され、時刻t2に発振器103がクロック信号の供給を開始する。そして、クロック信号供給制御部102からクロック信号CLK1がAD変換部201に供給される。また、クロック信号CLK2が割込み制御部104に供給される。
時刻t2〜t3の間、AD変換部201がクロック信号CLK1の供給を受けて、アナログ入力信号をデジタルデータにAD変換する。このデジタルデータは、バッファ213に保持される。この時刻t2〜t3の間、チップステートはSNOOZEとなる。
時刻t3で、AD変換部201が、AD変換動作を完了すると、変換完了割込み信号を出力する。この、変換完了割込み信号に応じて、クロック信号供給制御部102がクロック信号CLK3をCPU105に供給する。CPU105は、このクロック信号CLK3に応じて動作を開始し、バッファ213のデジタルデータに対する処理を行う。
また、実施の形態1と同様、発振器103の発振安定時間をAD変換部201の動作開始時間よりも短くすることで、時刻t1に入力したアナログ入力信号のAD変換も可能となる。
このように本実施の形態2のマイクロコントローラ200は、アナログ信号変換待機時、つまりチップステートがSTOPの期間において発振器103を停止させることで、消費電流の低減化を可能としている。更に、AD変換完了後、つまりチップステートがRUNの期間にCPU105を起動させている。これはSTOPからRUNまでのSNOOZEの期間、CPU105を動作させておらず、消費電流を低減させることが可能である。以上のように、本実施の形態2のマイクロコントローラ200のように、本発明を実施の形態1で記載したUARTシステム以外にも適用することができ、従来と比較して消費電流の低減が可能である。
発明の実施の形態3
以下、本発明を適用した具体的な実施の形態3について、図面を参照しながら詳細に説明する。この実施の形態3は、実施の形態1と同様、本発明をUARTの受信システムを有するマイクロコントローラに適用したものである。図16に本実施の形態3にかかるマイクロコントローラ300のブロック構成を示す。
図16に示すように、マイクロコントローラ300は、データ受信部301と、クロック信号供給制御部102と、発振器103と、割込み制御部104と、CPU105とを有する。
データ受信部301は、カウンタ111と、制御回路112と、受信バッファ113と、ノイズ検出回路314とを有する。
なお、図16に示された符号のうち、図1と同じ符号を付した構成は、図1と同じか又は類似の構成を示している。
本実施の形態3が実施の形態1と異なるのは、データ受信部301の構成であり、データ受信部301がノイズ検出回路314を有する点である。よって、本実施の形態3では、その実施の形態1との相違部分を重点的に説明し、その他の実施の形態1と同様の部分は必要でない限り説明を省略する。
ノイズ検出回路314は、データ受信部301がUARTデータではなく、ノイズを受信した場合に、それを検出してクロック信号供給制御部102へ検出信号を送信し、制御回路112からの起動要求信号の出力を停止する。データ受信部301への入力がUARTデータかノイズかの判断は、例えば、データ受信部301が入力する最初のクロック信号CLK1の立ち上がりエッジのときに、UARTデータの値がハイレベルであるかロウレベルであるかにより行う。
例えば、最初のクロック信号CLK1の立ち上がりエッジ時に、UARTデータの値がロウレベルであれば通常のUARTデータをUART受信端子が受信したと判断する。逆に、最初のクロック信号CLK1の立ち上がりエッジ時に、UARTデータの値がハイレベルである場合、UARTデータのスタートビットとしては短すぎるため、ノイズであると判断する。
図17に、ノイズ検出回路314の構成と、そのノイズ検出回路314と制御回路112を含む周辺回路との関係の一例を示す。なお、本例は一例であり、同様の機能を備える場合では他の構成であってもかまわない。
図17に示すように、ノイズ検出回路314は、フリップフロップFF31と、インバータ回路IV32とAND回路AND33とを有する。
フリップフロップFF31は、データ入力端子Dがデータ受信部301のUART受信端子と接続され、クロック入力端子がAND回路AND33の出力端子と接続される。また、データ出力端子Qが、インバータ回路IV32の入力端子と接続される。このため、フリップフロップFF31は、AND回路AND33からの出力信号の立ち上がりエッジに応じて、データ入力端子Dに印加されているデータの値をラッチし、データ出力端子Qから出力する。
インバータ回路IV32は、フリップフロップFF31のデータ出力端子Qからの信号を入力し、その反転信号を検知信号として出力する。
AND回路AND33は、一方の入力端子にクロック信号CLK1を入力し、他方の入力端子に制御回路112からのステータス信号を入力する。そして、その演算結果をフリップフロップFF31のクロック入力端子に出力する。このため、AND回路AND33は、フリップフロップFF31のクロック入力端子に対して、ステータス信号がハイレベルの場合、クロック信号CLK1を出力し、ロウレベルの場合、ロウレベルの固定値を出力する。
本例において制御回路112は起動要求信号を、AND回路AND34を経由してクロック信号供給制御部102へ出力する。AND回路AND34は、一方の入力端子にインバータ回路IV32が出力する検出信号を入力し、他方の入力端子に制御回路112からの起動要求信号を入力する。このため、AND回路AND34は、検出信号がハイレベルの場合、制御回路112からの起動要求信号をそのまま出力し、検出信号がロウレベルの場合、ロウレベルの値に固定した起動要求信号を出力する。
制御回路112は、本例においてクロック信号CLK1が所定の回数(例えば、1クロック)より多く入力された場合、ステータス信号をハイレベルからロウレベルに立ち下げる機能を有するものとする。
図18、図19を用いて、マイクロコントローラ300がUARTデータではなく、ノイズを受信した場合の動作を説明する。まず、図18に示すように、データ受信部301は、ノイズを受信すると、UARTデータの受信時と同様、ハイレベルの起動要求信号を出力する。クロック信号供給制御部102の制御回路121は、その起動要求信号を発振器103に出力し、発振器103がクロック信号の供給を開始する。そして、実施の形態1と同様、クロック信号供給制御部102は、発振器103からのクロック信号を、クロック信号CLK1としてデータ受信部301に、クロック信号CLK2として割り込み制御部104に供給する。
なお、この時点では、データ受信部101及び割り込み制御部104にクロック信号が供給されるが、CPU105にはクロック信号が供給されないためチップステートがSNOOZEとなる。
次に、図19に示すように、データ受信部301が受信したのがノイズのため、制御回路112からの起動要求信号が停止(ロウレベル出力)される。この時点で、チップステートがRUNではなくSNOOZEのため、発振器103がクロック信号の供給を停止する。このため、クロック信号CLK1、CLK2のデータ受信部101及び割込み制御部104への供給も停止され、チップステートがSTOPとなる。
次に、このようなマイクロコントローラ300の動作を説明するフローチャートを図20に示す。図20に示すように、節電期間(チップステートがSTOP)である場合(S301YES)では、発振器103が停止しており、データ受信部301、CPU105、割込み制御部104へのクロック信号の供給が停止する(S302)。
データ受信部301がUARTデータもしくはノイズを受信し、起動要求信号が出力されると(S303YES)、データ受信部301、割込み制御部104へのクロック信号の供給が開始される(S304)。なお、この状態では、CPU105へクロック信号の供給がされていないため、チップステートはSNOOZEである。
データ受信部301がUARTデータではなく、ノイズを受信したと判断された場合(S305YES)、CPU105へクロック信号の供給を開始せず、ステップS302へ戻る。一方、データ受信部301がノイズではなくUARTデータを受信したと判断された場合(S305NO)、実施の形態1と同様、データ受信部301がUARTデータを開始する。
データ受信部301がUARTデータを正常に受信完了した場合(S306YES)、CPU105へクロック信号の供給を開始する(S307)。つまり、チップステートがRUNとなる。なお、ステップS306で、データ受信部301がUARTデータを正常に受信完了しなかった場合(S306NO)、CPU105へクロック信号の供給を開始せず、ステップS302へ戻る。
次に、このようなマイクロコントローラ300がUARTデータではなく、ノイズを受信した場合の動作を説明するタイミングチャートを図21に示す。
図21に示すように、時刻t1以前は、実施の形態1と同様、データ受信部301がUARTデータを受信していない状態で、UARTデータの受信を待機している。このためチップステートはSTOPの状態であり、発振器103がクロック信号を供給していない。
時刻t1で、データ受信部301がUARTデータではなくノイズを受信する。ノイズにより引き起こされたロウレベルの信号を検出すると、データ受信部301が起動要求信号をロウレベルからハイレベルに立ち上げる。このハイレベルの起動要求信号が、発振器103に入力され、時刻t2に発振器103がクロック信号の供給を開始する。そして、クロック信号供給制御部102からクロック信号CLK1がデータ受信部101に供給される。また、クロック信号CLK2が割込み制御部104に供給される。
但し、通常のUARTデータのスタートビットSTが規定されたT1の期間ロウレベルとなるのに、ノイズにより引き起こされた信号では、T1よりも短いT2でハイレベルとなる。
このため、例えば、図17の構成を例に説明すると、時刻t2にフリップフロップFF31がハイレベルのデータを、クロック信号CLK1の立ち上がりエッジでラッチし、インバータ回路IV32に出力する。そして、インバータ回路IV32により、反転されたロウレベルの検出信号がAND回路AND34に入力される。このため、制御回路112からAND回路AND34を経由して出力されるハイレベルの起動要求信号が、ロウレベルに立ち下げられ、データ受信部301が起動要求信号の出力を停止する。このことにより、発振器103がクロック信号の供給を停止し、クロック信号CLK1、CLK2のデータ受信部101及び割込み制御部104への供給も停止される。よって、時刻t3以降は、チップステートがSTOPとなる。このように、本実施の形態3のマイクロコントローラ300でも、実施の形態1と同様、受信エラー割込み信号を出力せず、起動要求信号を停止することでその後のエラー処理を行う。
以上のような実施の形態3のマイクロコントローラ300は、データ受信部301に入力されるUARTデータが、ノイズであると判定した場合、クロック信号CLK1の最初の供給タイミングで、起動要求信号の出力を停止する。このことにより、ノイズをUARTデータのスタートビットSTであると誤判定して、発振器103がクロック信号の供給を続ける状態を防止することが可能となる。このため、実施の形態1と比較して、より確実に消費電流の低減化が可能となる。
なお、本発明は上記実施の形態に限られたものでなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
100、200、300 マイクロコントローラ
101、301 データ受信部
102 クロック信号供給制御部
103 発振器
104 割込み制御部
105 CPU
111 カウンタ
112、121、212 制御回路
113、213 バッファ
211 比較器
201 AD変換部
314 ノイズ検知回路
FF31 フリップフロップ回路
IV32 インバータ回路
AND33、AND34 AND回路

Claims (19)

  1. トリガとなる第1の入力データが入力されると起動要求信号を出力するデータ入力部と、
    前記起動要求信号に応じて起動し、クロック信号を生成する発振器と、
    前記データ入力部からの前記起動要求信号を前記発振器に出力し、起動後に生成される前記発振器のクロック信号から第1と第2のクロック信号を生成し、当該第1のクロック信号を前記データ入力部の動作クロック信号として供給するクロック信号供給制御部と、
    前記第2のクロック信号を動作クロックとして動作するCPUと、を有し、
    前記データ入力部は、前記第1の入力データに次ぐ第2の入力データに対して前記第1のクロック信号を用いて受信処理を行い、
    前記クロック信号供給制御部は、前記データ入力部による前記第2の入力データの受信処理後、前記第2のクロック信号の前記CPUへの供給を開始し、
    前記第1と第2の入力データとで1つのUARTデータが構成され、前記第1の入力データは前記UARTデータのスタートビットであり、前記第2の入力データは、前記UARTデータのうち、スタートビットよりも後のビットからストップビットまでのデータである
    マイクロコントローラ。
  2. 前記データ入力部は、前記受信処理が正常に終了した場合は、第1の割り込み信号を前記クロック信号供給制御部及び前記CPUへ出力し、
    前記クロック信号供給制御部は、前記第1の割り込み信号を受信すると、前記第2のクロック信号の前記CPUへの供給を開始する
    請求項1に記載のマイクロコントローラ。
  3. 前記発振器は、前記データ入力部が前記起動要求信号の出力を停止し、且つ、前記CPUが処理動作を終了した場合、前記クロック信号の生成を停止する
    請求項2に記載のマイクロコントローラ。
  4. 前記データ入力部は、前記受信処理が正常に終了しなかった場合は、前記起動要求信号の出力を停止し、
    前記発振器は、前記起動要求信号の出力が停止された場合は前記クロック信号の生成を停止する
    請求項1に記載のマイクロコントローラ。
  5. 前記データ入力部は、前記UARTデータを受信するデータ受信部であり、
    前記第1の入力データが入力されると前記起動要求信号を出力し、
    前記第1のクロック信号が供給されると、前記第1のクロック信号を用いて受信した前記第2の入力データを内部のバッファに記憶し、
    前記UARTのストップビットを受信すると、前記第1の割込み信号を出力し、
    前記CPUは、
    前記第1の割込み信号を入力すると、前記第2のクロック信号に応じて、前記バッフ
    ァ内に記憶されている前記第2の入力データを読み出し、その読み出したデータに応じた処理動作を行う
    請求項2または請求項3に記載のマイクロコントローラ。
  6. 前記データ入力部は、前記UARTデータを受信するデータ受信部であり、
    前記第1の入力データが入力されると前記起動要求信号を出力し、
    前記第1のクロック信号が供給されると、前記第1のクロック信号を用いて受信した前記第2の入力データを内部のバッファに記憶し、
    前記第2の入力データに対して受信エラーが発生した場合、前記起動要求信号の出力を停止する
    請求項4に記載のマイクロコントローラ。
  7. 前記データ入力部は、カウンタを有し、そのカウンタで規定される所定のタイミングで前記第2の入力データのサンプリングを行い、そのサンプリングのデータを前記バッファに記憶し、
    前記第2の入力データがロウレベルからハイレベルに立ち上がる立ち上がりエッジに同期して、前記カウンタをリスタートさせる
    請求項5または請求項6に記載のマイクロコントローラ。
  8. 前記UARTデータは、前記発振器が停止した状態のときに、最初に前記データ入力部が受信するUARTデータである
    請求項5〜請求項7のいずれか1項に記載のマイクロコントローラ。
  9. 前記発振器は、当該マイクロコントローラの内蔵発振器であり、周波数精度が±2%以下である
    請求項1〜請求項のいずれか1項に記載のマイクロコントローラ。
  10. 発振器と、入力データを入力するデータ入力部と、前記入力データに応じた処理を行うCPUと、を備えるマイクロコントローラの制御方法であって、
    トリガとなる第1の入力データが入力されると前記データ入力部が起動要求信号を出力し、
    前記起動要求信号に応じて前記発振器が起動し、クロック信号を生成し、
    前記発振器が生成したクロック信号から第1のクロック信号を生成し、前記データ入力部は、前記第1の入力データに次ぐ第2の入力データに対して前記第1のクロック信号を用いて受信処理を行い、
    前記データ入力部が前記受信処理を正常に終了した場合、前記発振器が生成したクロック信号に応じた第2のクロック信号を動作クロックとして前記CPUに供給し、前記CPUの動作時に前記第2の入力データに応じた処理を行い、
    前記第1と第2の入力データとで1つのUARTデータが構成され、前記第1の入力データは前記UARTデータのスタートビットであり、前記第2の入力データは、前記UARTデータのうち、スタートビットよりも後のビットからストップビットまでのデータである
    マイクロコントローラの制御方法。
  11. 前記データ入力部が前記起動要求信号の出力を停止し、且つ、前記CPUが処理動作を終了した場合、前記発振器が前記クロック信号の生成を停止する
    請求項10に記載のマイクロコントローラの制御方法。
  12. 前記データ入力部が正常に動作を終了しなかった場合、前記発振器が前記クロック信号の生成を停止する
    請求項10に記載のマイクロコントローラの制御方法。
  13. 前記UARTデータを受信する受信部である前記データ入力部は、
    前記第1の入力データが入力されると前記起動要求信号を出力し、
    前記第1のクロック信号が供給されると、前記第1のクロック信号を用いて受信した前記第2の入力データを内部のバッファに記憶し、
    前記UARTデータのストップビットを受信すると、第1の割込み信号を出力し、
    前記CPUは、
    前記第1の割込み信号を入力すると、供給される前記第2のクロック信号に応じて、前記バッファ内に記憶されている前記第2の入力データを読み出し、その読み出したデータに応じた処理動作を行う
    請求項10もしくは請求項11に記載のマイクロコントローラの制御方法。
  14. 前記UARTデータを受信する受信部である前記データ入力部は、
    前記第1の入力データが入力されると、前記起動要求信号を出力し、
    前記第1のクロック信号が供給されると、前記第1のクロック信号を用いて受信した前記第2の入力データを内部のバッファに記憶し、
    前記第2の入力データに対して受信エラーが発生した場合、前記起動要求信号の前記発振器への入力を停止し、前記発振器が前記クロック信号の生成を停止する
    請求項12に記載のマイクロコントローラの制御方法。
  15. 前記データ入力部は、カウンタを有し、そのカウンタで規定される所定のタイミングで前記第2の入力データのサンプリングを行い、そのサンプリングのデータを前記バッファに記憶し、
    前記第2の入力データがロウレベルからハイレベルに立ち上がる立ち上がりエッジに同期して、前記カウンタをリスタートさせる
    請求項13または請求項14に記載のマイクロコントローラの制御方法。
  16. 前記UARTデータは、前記発振器が停止した状態のときに、最初に前記データ入力部が受信するUARTデータである
    請求項13〜請求項15のいずれか1項に記載のマイクロコントローラの制御方法。
  17. 前記発振器は、当該マイクロコントローラの内蔵発振器であり、周波数精度が±2%以下である
    請求項10〜請求項16のいずれか1項に記載のマイクロコントローラの制御方法。
  18. 前記データ受信部は、ノイズ検出回路を更に有し、
    前記ノイズ検出回路が、前記第1の入力データがノイズであると判定した場合、前記データ受信部が出力する前記起動要求信号を停止する
    請求項6に記載のマイクロコントローラ。
  19. 前記データ入力部が、前記第1の入力データがノイズであると判定した場合、前記起動要求信号の出力を停止する
    請求項14に記載のマイクロコントローラの制御方法。
JP2011079471A 2010-05-21 2011-03-31 マイクロコントローラ及びその制御方法 Active JP5734057B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011079471A JP5734057B2 (ja) 2010-05-21 2011-03-31 マイクロコントローラ及びその制御方法
US13/067,176 US8751842B2 (en) 2010-05-21 2011-05-13 Microcontroller and method of controlling the same
US14/295,461 US9342097B2 (en) 2010-05-21 2014-06-04 Microcontroller and method of controlling the same

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010117707 2010-05-21
JP2010117707 2010-05-21
JP2011079471A JP5734057B2 (ja) 2010-05-21 2011-03-31 マイクロコントローラ及びその制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015082117A Division JP5890052B2 (ja) 2010-05-21 2015-04-14 マイクロコントローラ

Publications (2)

Publication Number Publication Date
JP2012009011A JP2012009011A (ja) 2012-01-12
JP5734057B2 true JP5734057B2 (ja) 2015-06-10

Family

ID=44972000

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011079471A Active JP5734057B2 (ja) 2010-05-21 2011-03-31 マイクロコントローラ及びその制御方法

Country Status (2)

Country Link
US (2) US8751842B2 (ja)
JP (1) JP5734057B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9641267B2 (en) 2014-06-10 2017-05-02 Halliburton Energy Services Inc. Synchronization of receiver units over a control area network bus
JP2016162303A (ja) * 2015-03-03 2016-09-05 株式会社東芝 無線通信装置
JP2018014630A (ja) 2016-07-21 2018-01-25 ソニーセミコンダクタソリューションズ株式会社 固体撮像装置および電子機器
CN107690633B (zh) * 2017-03-15 2020-12-22 深圳大趋智能科技有限公司 基于mPOS的MCU内部震荡校准方法及装置
CN112328523B (zh) * 2020-10-28 2023-09-08 深圳市宏旺微电子有限公司 传输双倍速率信号的方法、装置及***

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4556850A (en) * 1982-11-01 1985-12-03 United Technologies Corporation Serial to parallel data conversion circuit
JP2842750B2 (ja) 1992-04-07 1999-01-06 三菱電機株式会社 Icカード
US5909571A (en) * 1995-05-01 1999-06-01 Apple Computer, Inc. Clock distribution for processor and host cards
JP3093705B2 (ja) * 1997-12-19 2000-10-03 日本電気移動通信株式会社 移動端末及び移動端末における復調回路起動方法
US6754839B1 (en) * 2000-03-17 2004-06-22 Exar Corporation UART clock wake-up sequence
JP3894787B2 (ja) 2001-12-20 2007-03-22 松下電器産業株式会社 受信回路
JP2004246793A (ja) * 2003-02-17 2004-09-02 Sharp Corp カード型デバイス
US7543163B2 (en) * 2005-01-05 2009-06-02 Exar Corporation Low power method of monitoring and of responsively initiating higher powered intelligent response to detected change of condition
JP2007058347A (ja) * 2005-08-22 2007-03-08 Kenwood Corp 受信装置及びその制御方法
JP5039322B2 (ja) * 2006-05-09 2012-10-03 ローム株式会社 起動回路、方法ならびにそれを用いた低電圧誤動作防止回路、電源回路および電子機器
US7734942B2 (en) * 2006-12-28 2010-06-08 Intel Corporation Enabling idle states for a component associated with an interconnect
JP2008182315A (ja) * 2007-01-23 2008-08-07 Hitachi Kokusai Electric Inc デジタル伝送システム
US7831847B2 (en) * 2007-05-07 2010-11-09 Mediatek Inc. Integrated circuit with power control and power control method thereof
JP5198110B2 (ja) * 2008-03-26 2013-05-15 ニッタン株式会社 火災警報器

Also Published As

Publication number Publication date
US9342097B2 (en) 2016-05-17
JP2012009011A (ja) 2012-01-12
US20110285429A1 (en) 2011-11-24
US8751842B2 (en) 2014-06-10
US20140289547A1 (en) 2014-09-25

Similar Documents

Publication Publication Date Title
JP5734057B2 (ja) マイクロコントローラ及びその制御方法
EP2324407B1 (en) Circuit having a low power mode
JP2010154294A (ja) 同期化回路
US8064534B2 (en) Single-wire asynchronous serial interface
JP2016004388A (ja) 通信システム及び電子回路
JP2007200016A (ja) リセット信号生成回路
US20150235542A1 (en) Method for performing alarm grouping control of an electronic device with aid of at least one grouping control strategy, and associated apparatus
JP2005339135A (ja) シリアルataインタフェースを持つ電子機器及び同機器におけるパワーセーブ制御方法
US8174290B2 (en) Noise reduction circuit and semiconductor device provided with noise reduction circuit
JP2007074320A (ja) ネットワーク機器装置
JP5890052B2 (ja) マイクロコントローラ
JPWO2008084541A1 (ja) 受信装置及び受信装置の起動制御方法
JP2010055265A (ja) システムlsi、システムlsiの制御方法、プログラム、及び記憶媒体
JP2008103863A (ja) クロック非同期切替装置およびノイズキャンセル回路ならびにノイズキャンセル方法およびプログラム
JP3894787B2 (ja) 受信回路
JPWO2010125616A1 (ja) 符号化ストリーム復号装置
JP2013232747A (ja) 受信回路及び受信方法
CN117826967B (zh) 唤醒电路
JP7092612B2 (ja) 電子制御装置
JP5385722B2 (ja) インターフェース回路
JP5456705B2 (ja) 画像形成装置
JP2011128813A (ja) データ処理回路
US20100064174A1 (en) Data processing system and debug method
JP2006031133A (ja) 半導体装置
JP2007102493A (ja) シリアル割込み復帰回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150324

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150414

R150 Certificate of patent or registration of utility model

Ref document number: 5734057

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350