•
•
•
マキシム >
設計者のためのライブラリ >
アプリケーションノート
>
マイクロコントローラ
キーワード: MAXQ3212, MAXQ3210, マイクロコントローラ, 少ない命令セット, RISC, 少ないピン数パッケージ, LPC, ACパワー, AC電力, パワーシーケンサ, LEDドライブ, LED駆動
関連製品
APP 3914: Jan 16, 2008
ダウンロード、PDFフォーマット (58kB)
アプリケーションノート3914
MAXQ3212マイクロコントローラを使用したAC電源シーケンサ
要約:MAXQ3212マイクロコントローラは、小型であること、低コストであること、そして完全かつ低コストな開発システムがすぐ手に入ることから、現実世界の制御アプリケーションに最適な製品です。このアプリケーションノートでは、MAXQ3212をベースとして、ステレオコンポーネントへのAC電源投入をシーケンス管理するよう設計されたシステムについて解説します。このシステムは、不快かつ障害の原因になる可能性のある、通電時や電源オフ時のトランジェントを排除します。MAXQ3212 RISCマイクロコントローラはポート端子をI/Oとして使用し、リレーを動作させるための信号を生成して、2組の独立したステレオコンポーネントに対するAC給電を制御します。
概要
システムあるいは個々のコンポーネントに対する通電を特定の順番で行うと好都合な場合があります。また、安定性を確保するため、各コンポーネントに対する通電または電源オフの合間に遅延時間を挿入するのが望ましい場合もあります。そうした状況の具体例の1つが、図1 に示すようなコンポーネントステレオシステムです。順番に通電を行い、その間に遅延時間を入れるというこの手法のメリットは、損害を与える危険性を持つトランジェントが、高音用スピーカのドライバのような敏感なコンポーネントに到達しなくなることです。図1のコンポーネントは、2つのグループに分けられています。信号源とプリアンプ(これらをまとめて一般にプリアンプと呼びます)が1つのグループ、パワーアンプとスピーカ(一般にスピーカと呼びます)がもう1つのグループです。そうしたシステムでは、まずプリアンプ(AC Power A)に通電し、その出力が安定するよう一定時間遅延した後で、スピーカ(AC power B)に通電を行うのが望ましい方法です。こうすることによって、不快なポップノイズや、障害の原因になる可能性のあるトランジェントを排除することができます。電源オフについても同じことが言えますが、順番を逆転して、まずスピーカの電源を落としてからプリアンプの電源をオフにします。
図1. 標準的なコンポーネントステレオシステム
このアプリケーションノートでは、図1に示したコンポーネントステレオシステムへの通電シーケンスを管理する、MAXQ3212 RISCマイクロコントローラをベースとしたシンプルなシステムについて説明します。その小さなサイズと低コストを評価して、MAXQ3212をこのプロジェクト用に選択しました。また、完全な、低コストの開発システムがすぐ手に入ることも重要でした。この後者の要件を満たすのが、MAXQ3210の評価(EV)キットです。MAXQ3210ではなくMAXQ3212をこのプロジェクトに選んだのは、このアプリケーションではMAXQ3210の電圧レギュレータと圧電ホーンドライバを使用しないためです。設計をシンプルにし、運用上の問題が発生する可能性を最小限にするため、小型のパワーリレーを使ってAC電源のオンオフを行っています。システムのソフトウェアは、単極単投(SPST)スイッチからのユーザ入力を検出し、出力用に構成されたプロセッサのポート端子を使ってリレーを制御します。軽負荷用のパワーFETが、プロセッサのポート端子とリレーのコイルをつなぐ役目を果たします。
このコード例に使用した完全な開発環境は、MAX-IDE のversion 1.0と、 MAXQ3210のキットボード のrevision Aです。
システム実装の詳細
このシステムの実装は非常にシンプルです。AC電源ラインの誘導負荷に起因する問題を回避するため、トライアックのような固体素子デバイスではなく、5Vのコイルを持つリレーを使ってAC電源のオンオフを行います。ここで実装したシステムは外付けの5V安定化電源を使用しており、この電圧が直接リレーのコイルに接続されています。リレーのコイルへの電流は小型の(TO92パッケージ)パワーFETを使って制御し、このFETの制御をMAXQ3212プロセッサの標準的な出力ポート端子によって行います。システムの回路図を図2 に示します。
ユーザ入力
このシステムのプロトタイプでは、単一のスイッチを使ってユーザがシステム全体のオンオフを行うようになっていました。しかし、プリアンプには通電してスピーカには通電しないということも、できた方が良いことが明らかになりました。この柔軟性があれば、ユーザはスピーカを動作させず、プリアンプによって駆動されるヘッドフォンを使うことがきます。これを実現するため、スピーカディセーブルスイッチがシステムに追加されました。このシステムは、スピーカに通電する直前にこのスイッチを調べます。スイッチがオンになっている場合、スピーカへの通電は行われません。スイッチがオフの場合、通常通りスピーカに電力が印加されます。
図2. MAXQ3212システム図
LEDステータスインジケータ
このシステムでは、MAXQ3212のポート端子P0.7が持つ直接LED駆動機能によって、システムステータスインジケータを提供しています。システムのソフトウェアがメインループを通過するたびに、このポート端子がそれまでの状態から反転されます。この端子は470Ωの電流制限抵抗でハイにプルアップされたLEDに直接接続されているため、ポート端子のこの極性反転によって、メインプログラムループ通過の1回おきに、LEDが点滅する結果になります。システムのアイドル時(すなわちユーザ入力を待っている状態)は、LEDがおよそ毎秒2回の割合で点滅します。ソフトウェアが遅延ループに入ると、そのループから抜けるまでLEDは現在の状態のままになります。したがって、LEDの動作からシステムの状態を判断することが可能です。
デュアルFETによるコイル駆動
システムの最初のプロトタイプでは、ポート端子とリレーのコイルの間に、単一のFETを使用していました。DC電源がマイクロコントローラに印加されて安定動作に達する際に、プロセッサのポート端子がリセット時のデフォルトのハイ状態から、フォームウェアの指示に従ってリレーをオフにするために必要なロー状態に遷移することになり、リレーが短時間だけ動作してしまいます。第2のFETを追加することで、ファームウェアの介入なしに、ポート端子のリセット時デフォルト状態でリレーをオフにしておくことができます。こうして、好ましくない過渡的動作が除去されます。
システムステータスバイト
システムのソフトウェアの中では、現在のシステムステータスを反映するために1バイトのデータを使用しています。このバイト内の各ビットが、個々の入出力信号の状態を示すために使用されます。したがってこのバイトは、読取り、書込み、ビット操作の各アクセスが可能でなければなりません。MAXQ3212では、モジュール0~2のすべてのレジスタが、ビットアドレス可能です。ウェイクアップタイマーレジスタ(WUT)はモジュール0に位置していますが(M0[15])、このアプリケーションの場合、このタイマーを使用していません。したがって、システムステータスバイトの場所として、このレジスタを選択しました。ソフトウェアの中では、このバイト内の各ビットにラベルを付与しています。各ビットは個別に読み書きされ、それぞれが表すポート端子の状態を反映して、必要に応じてセットまたはクリアすることができるようになっています。
遅延時間の生成
このシステム内で既知の遅延時間を生成するために、MAXQ3212のTimer 2を使用しています。3.58MHzのメインシステム用水晶を持つこの16ビットタイマーは、最大2.34秒までの間隔を生成することができます。簡単にするため、基本の時間間隔として1秒を使用し、システム変数TICを使用して1秒の間隔を数えます。タイマーのリロード値は、下の式で与えられます。1秒の時間間隔には、37583 (最も近い整数に丸め)というリロード値が必要であることが分かります。
リロード = 65536 - (時間×3.578MHz / 128)
タイマーは、1秒のインターバル終了時に割込みを発生するよう設定されており、割込みごとに変数TICがインクリメントされます。したがって、TICと希望する値とを比較することによって、タイマーの最大インターバルよりはるかに長い時間間隔を生成することが可能です。遅延時間の変更は、ディレイサブルーチンに渡すパラメータを変えてコードをアセンブルし直すだけの、単純な作業です。
選択可能な遅延
通電時と電源オフ時とで異なる遅延が必要な状況に対応するため、遅延時間は変更可能なシステムパラメータとして設計してあります。このシステムのプロトタイプで、通電後にプリアンプの出力が安定するまでの所要時間は、電源オフ時にスピーカから電力が「抜ける」のに必要な時間より、はるかに短いことが分かりました。したがって、この文書の関連ソフトウェアでは、スピーカの通電には5秒の遅延を使用し、プリアンプの電源オフには10秒の遅延を使用しています。
コード例
このアプリケーションノートに付随するソフトウェアが、マキシムのFTPサイト(ftp://ftp.dalsemi.com/pub/microcontroller/app_note_software/ )で入手することができるan3914_sw.zipというファイルに格納されています。このファイルには、ソースコードファイルSequencer.asmと、MAXQ3210/12のレジスタアドレス定義を含んだmaxq3210.incというファイルが収められています。また、MAX-IDEのプロジェクトファイル Sequencer.prjと「ローダブル」なhexファイルSequencer.hexもこの.zipファイルに収録されています。これらのファイルを共有ディレクトリに展開することによって、ソフトウェアをアセンブルしてMAXQ3210のEVキット上で実行することができます。
結論
MAXQ32112は、幅広いアプリケーションに適する高性能なRISCプロセッサです。低コストと低消費電力の点で、バッテリ駆動の携帯型および環境型センサ/アラームアプリケーションには特に適しています。ここで紹介したアプリケーションでも、低コストかつ少ピン数のパッケージを持つMAXQ3212は、このシンプルなAC電源制御アプリケーションにとって魅力的な存在でした。また、完全な開発環境であるMAXQ3210-KITが低コストですぐ手に入るため、迅速かつ効果的にファームウェアの開発とテストを行うことができます。
フィードバックをお寄せください。 内容に満足されましたか、あるいは満足されていませんか?もっと良いページにできると思いますか?あるいは、単なるコメントでも結構です。フィードバックをお待ちしています。 —マキシムはお客様からいただく訂正、提案を元に改善していきます。
このページを評価し、フィードバックを送信する。
自動アップデート
お客様が関心のある分野でアプリケーションノートが新規に掲載された際に自動通知Eメールの受信を希望する場合は、EE-Mail™にご登録ください。
その他の情報
APP 3914: Jan 16, 2008
ダウンロード、PDFフォーマット (58kB)
AN3914,
AN 3914,
APP3914,
Appnote3914,
Appnote 3914
プライバシーポリシー
•
法的お知らせ
Copyright © 2008 by Maxim Integrated Products, Dallas Semiconductor