概要
MAX6970は、4線式シリアルインタフェースを使用する、8ポート、36V定電流LEDドライバです。このアプリケーションノートを使用して、MAX6970を16ビットRISCマイクロコントローラMAXQ2000と組み合わせることで、ボタンの押下に>よって各種の簡単なLEDシーケンスを生成することができます。
ハードウェアのセットアップ
このアプリケーションノートで解説する回路は、MAX6970EVKITとMAXQ2000-KITを利用しています。MAX6970の評価(EV)キットの回路図を図1に示します。MAXQ2000のEVキットのボードは、MAX6970のEVキットの設計の中に含まれています。しかし、そのままではMAXQ2000のEVキットが備えるプッシュボタン機能によってLEDのシーケンスが制御されることになるため、このアプリケーションではMAX6970のEVキットをボード上のMAXQ2000から切り離して使用します。
図1. MAX6970EVKITの回路図
ジャンパJU1~JU5からジャンパプラグを除去してください。システムの構成は、MAX6970のEVキットのボードのJU1~JU5のピン2 (DIN、CLK、LE、DOUT、およびアクティブローのOEに相当)をMAXQ2000のEVキットのボードに接続することによって行います(図2)。ジャンパJU14のジャンパプラグを2-3間の位置に移動して、3.3Vの電源をMAX6970のEVキットのVCCパッドに印加してください。電源をオンにする前に、MAXQ2000のEVキットとMAX6970のEVキットのグランドが相互に接続されていることを確認してください。MAX6970のEVキットのその他のジャンパは、すべてデフォルトの位置である1-2間のままにしておきます。図3に、MAXQ2000のEVキットとMAX6970のEVキットの間の実際のセットアップを示します。
図2. ハードウェア構成のブロック図
図3. MAXQ2000のEVキットとMAX6970のEVキットのセットアップ
LEDシーケンスの表示
MAXQ2000のEVキットはプッシュボタン(SW5)を備えており、それを使用してLEDシーケンスの選択を行います。ボタンを約500msの間押下することによって、LEDの第1のシーケンスがオンになります。表1に示すように、このプログラムは5種類のLEDシーケンスで構成されています。スレーブに送信される8ビットデータの個々のビットが、MAX6970のEVキット上の1つのLEDに対応します。プッシュボタンのカウントが1の場合、シーケンス0x55が250msの間オンになり、0xAAに変化して250msの間点灯します。このシーケンスが、次にSW5を押下するまで繰り返されます。プッシュカウントが5のときにSW5を押下した場合、次のシーケンスはプッシュカウント1に戻ります。
Push Count | Sequence |
1 | 0x55, 0xAA |
2 | 0xFF, 0x00 |
3 | 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80 |
4 | 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01 |
5 | 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF |
ファームウェアの概要
サンプルのMAXQ IAR WorkbenchのCプログラムファイルは、MAX2000のシリアルインタフェースを初期化してMAX6970との通信を行います。シリアルインタフェースのクロックは、MAXQ2000のシステムクロックが16MHzの場合、8MHzです。
{{modalTitle}}
{{modalDescription}}
{{dropdownTitle}}
- {{defaultSelectedText}} {{#each projectNames}}
- {{name}} {{/each}} {{#if newProjectText}}
-
{{newProjectText}}
{{/if}}
{{newProjectTitle}}
{{projectNameErrorText}}