8. Avalon インタフェース対応 Optrex 16207 LCD コントローラ・コア この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。こちらの日本語版は参考用としてご利用 ください。設計の際には、最新の英語版で内容をご確認ください。 NII51019-6.0.0 コアの概要 Avalon® インタフェース対応のキャラクタ LCD(Optrex 16207)コント ローラ(「LCD コントローラ」)は、Nios® II プロセッサが Optrex 16207 (または同等な)16x2 キャラクタ LCD パネルにキャラクタを表示するた めに必要な、ハードウェア・インタフェースとソフトウェア・ドライバ を提供します。Nios II プロセッサの場合、デバイス・ドライバは HAL システム・ライブラリで提供されます。Nios II プログラムは、printf() などの ANSI C 標準ライブラリ・ルーチンを使用して、キャラクタ・モー ド・デバイスとして LCD コントローラにアクセスします。LCD コント ローラは、SOPC Builder に対応しており、SOPC Builder で生成された どのシステムにも容易に統合できます。 Nios II 開発キットには、Optrex LCD モジュールが含まれており、LCD コ ントローラを介して Optrex 16207 上にテキストを表示する既製デザイン例 がいくつか用意されています。Optrex 16207 LCD モジュールの詳細につい ては、http://www.optrex.com にアクセスして、Optrex 提供の「Dot Matrix Character LCD Module User's Manual」を参照してください。 機能の説明 LCD コントローラ・ハードウェアは、ユーザが管理可能な以下の 2 つの コンポーネントで構成されています。 1. Optrex 16207 LCD パネルのピンに接続される 11 の信号 – これらの 信号は、Optrex 16207 データ・シートで定義されています。 ● ● ● ● E −イネーブル(出力) RS −レジスタ・セレクト(出力) R/W −読み出しまたは書き込み(出力) DB0 ∼ DB7 −データ・バス(双方向) 2. 4 つのレジスタにアクセスする Avalon スレーブ・インタフェース –HAL デバイス・ドライバの利用により、ユーザがレジスタに直接アクセス する必要はありません。したがって、レジスタの使用法の詳細につい ては記載していません。詳細については、8–2 ページの「ソフトウェ ア・プログラミング・モデル」を参照してください。 Altera Corporation 2006 年 5 月 8–1 デバイスおよびツールのサポート 図 8-1 に、LCD コントローラ・コアのブロック図を示します。 図 8-1. LCD コントローラのブロック図 アルテラFPGA E アドレス オンチップ・ ロジックへの Avalon スレーブ・ インタフェース RS データ コントロール LCD コントローラ R/W Optrex 16207 LCDモジュール DB0 .. DB7 デバイスおよ びツールのサ ポート LCD コントローラのハードウェアは、すべてのアルテラ FPGA ファミ リをサポートしています。LCD コントローラ・ドライバは Nios II プロ セッサをサポートしています。ドライバは第 1 世代の Nios プロセッサ はサポートしていません。 SOPC Builder でのコアのイン スタンス化 SOPC Builder では、LCD コントローラ・コンポーネントの名前は Character LCD(16x2、Optrex 16207)です。LCD コントローラには、 ユーザ がコンフィギュレーション可能な設定はありません。SOPC Builder では、LCD コントローラをシステムに追加するかどうかのみを 選択します。システムに追加された各 LCD の場合、トップ・レベルの システム・モジュールには、LCD モジュールに接続される 11 の信号が 含まれています。 ソフトウェア・ プログラミン グ・モデル このセクションでは、LCD コントローラのソフトウェア・プログラミン グ・モデルについて説明します。 8–2 Quartus II ハンドブック Volume 5 Altera Corporation 2006 年 5 月 Avalon インタフェース対応 Optrex 16207 LCD コントローラ・コア HAL システム・ライブラリ・サポート アルテラは、ANSI C 標準ライブラリ関数を使用して LCD コントローラ へのアクセスを可能にする、Nios II プロセッサ用の HAL システム・ラ イブラリ・ドライバを提供しています。アルテラが提供するドライバは、 Nios II システム用の HAL システム・ライブラリに統合されます。LCD ドライバは、「Nios II ソフトウェア開発ハンドブック」で説明している とおり標準キャラクタ・モード・デバイスです。したがって、キャラク タをディスプレイに書き込むには、printf() を使用するのが最も簡単 です。 LCD ドライバを利用するには、HAL システム・ライブラリにシステム・ クロック・ドライバが含まれていることが必要です。 LCD へのキャラクタの表示 ドライバは、16 x 2 画面のミニチュア・スケールで VT100 端末に類似し た動作を実装しています。LCD コントローラに書き込まれたキャラクタ は、ドライバで維持される 80 カラム× 2 ロウのバッファに格納されま す。キャラクタが書き込まれと、カーソル位置が更新されます。可視キャ ラクタはカーソル位置を右に移動します。バッファの右に書き込まれた 可視キャラクタは破棄されます。ライン・フィード・キャラクタ(\n) は、カーソルを 1 行下の左端のカラムに移動します。 表示可能なキャラクタがバッファのボトムの下の行に書き込まれると、 バッファは上にスクロールされます。カーソルが下に移動してもロウは すぐにはスクロールしないので、バッファ内の有用な情報を最大限に表 示できます。 バッファ内の可視キャラクタがディスプレイに適合する場合は、すべて のキャラクタが表示されます。バッファの幅がディスプレイよりも広い 場合、ディスプレイは水平方向にスクロールして、すべてのキャラクタ を表示します。行がスクロールするスピードは行によって異なり、バッ ファの各行にあるキャラクタ数によって決まります。 LCD ドライバは、ANSI および VT100 エスケープ・シーケンスの小さな サブセットを認識します。これらのスケープ・シーケンスは、表 8–1 に 示すとおり、カーソル位置の制御、およびディスプレイのクリアに使用 することができます。 Altera Corporation 2006 年 5 月 8–3 Quartus II ハンドブック Volume 5 ソフトウェア・プログラミング・モデル 表 8–1. LCD コントローラでサポートされるエスケープ・シーケンス シーケンス 意味 BS (\b) カーソルを左に 1 キャラクタ分移動します。 CR (\r) カーソルを現在行の開始位置に移動します。 LF (\n) カーソルを行の開始位置に移動し、さらに 1 行下に移動します。 ESC( VT100 コントロール・シーケンスを開始します。 (\x1B) ESC [ ESC [ ESC [ <y> ; <x> K H 指定された y、x 位置にカーソルを移動します。この位置は、1、1 で ある左上隅を基準にしてカウントされます。 現在のカーソル位置から行末までクリアします。 2 J 画面全体をクリアします。 LCD コントローラは出力専用デバイスです。したがって、このデバイス から読み出そうとしても直ぐに復帰し、受信されたキャラクタがないこ とを示します。 システム・ライブラリに対して Reduced device drivers オプションがイ ネーブルされている場合、LCD コントローラ・ドライバはシステム・ラ イブラリに含まれません。他のデバイスに小型ドライバを使用しながら、 LCD コントローラを使用したい場合は、プリプロセッサ・オプションに -DALT_USE_LCD_16207 を追加します。 ソフトウェア・ファイル LCD コントローラには、以下のソフトウェア・ファイルが付属していま す。これらのファイルは、ハードウェアへの低水準インタフェースを定 義し、HAL ドライバを提供します。アプリケーション開発者がこれらの ファイルを変更してはなりません。 ■ altera_avalon_lcd_16207_regs.h −このファイルはコアのレジスタ・ マップを定義し、低水準ハードウェアにアクセスするための記号定 数を提供します。 ■ altera_avalon_lcd_16207、 、altera_avalon_lcd_16207.c −これらのファ イルは、HAL システム・ライブラリ用の LCD コントローラ・デバ イス・ドライバを実装します。 8–4 Quartus II ハンドブック Volume 5 Altera Corporation 2006 年 5 月 Avalon インタフェース対応 Optrex 16207 LCD コントローラ・コア レジスタ・マップ HAL デバイス・ドライバを利用すれば、レジスタに直接アクセスする必 要はなくなります。したがって、アルテラはレジスタ・マップの詳細は 公開していません。詳細な情報が必要な場合、レジスタ・マップは altera_avalon_lcd_16207_regs.h ファイル、レジスタの使用法は Optrex 提供の「Dot Matrix Character LCD Module User's Manual」に記載され ています。 割り込み動作 LCD コントローラは割り込みを生成しません。ただし、LCD ドライバ のテキスト・スクロール機能は、HAL システム・クロック・ドライバに 依存します。このドライバは割り込みをタイミングを図る目的に使用し ます。 Altera Corporation 2006 年 5 月 8–5 Quartus II ハンドブック Volume 5 ソフトウェア・プログラミング・モデル 8–6 Quartus II ハンドブック Volume 5 Altera Corporation 2006 年 5 月
© Copyright 2024 ExpyDoc