(DE0-CV) DE0拡張キットのLCDモジュールを使う (2)
前
(DE0-CV) DE0拡張キットのLCDモジュールを使う (1)
プロジェクト作成
TerasicのサイトにDE0-CVのQuartusIIプロジェクトを生成してくれるツールがあります。
下記の[CD-ROM]-[DE0-CV CD-ROM]をダウンロードし解凍します。
Terasic - All FPGA Main Boards - DE0-CV Board
解凍したファイルの[Tools]-[SystemBuilder]にある DE0_CV_SystemBuilder.exe を起動します。
GUIで選択した端子が設定されたQuartusIIプロジェクトを作成可能です。
下記は今回使う分だけ端子を設定したところ。これで「Generate」を押すとプロジェクトが作成されます。
GPIO-0 Header を None から GPIO default にしてください。
作成されたプロジェクト。.htmは端子を一覧で見ることができるファイルです。
.qsfはデバイスやピンアサインなどのQuartusIIのプロジェクト設定が書かれたファイルです。
.sdcはクロック制約。凝ったことしないなら特に編集は不要です。
.vがVerilogのソースファイルです。
ただし、今回はVHDLで作ります。拡張子を.vから.vhdに変更します。
プロジェクトを開いてソースファイルを追加
.qsfをダブルクリックするとQuartusIIプロジェクトが開きます。
最初はソースファイルが設定されていないので、ソースを追加します。
Project NavigatorのドロップダウンリストからFilesを選択します。
ディレクトリマークのFilesを右クリックして「Add/Remove Files in Project...」をクリックします。
File name: の右にある「...」をクリックしてソースファイルを選択すると追加されます。
※拡張子は.vから.vhdに変更しています。
OKを押してウィンドウを閉じます。
端子名を変更
GPIOは下図のようなピン配置になっています。
このうち、LCDとしてGPIO_0_D10~GPIO_0_D20までの11本の端子を使用します。
qsfファイルを開きます。qsfファイルにはピンアサインが記載されています。
GPIOは36本ありますが、使うのはGPIO[10]~GPIO[20]までなので、他のGPIOの端子は消してしまいます。
※VisualStudioで編集しているので、QuartusIIの編集画面とは異なります。
GPIO[10]~GPIO[20]を残して、他のGPIOの端子は消しました。
さらに、GPIO[10]~GPIO[17]をLCD_D[0]~LCD_D[7]に、GPIO[18]~GPIO[20]をそれぞれRS,WR,ENにリネームしました。
ソースコード(VHDL)の編集
DE0_CV_SystemBuilder.exe で作成された VerilogファイルをVHDLの記述に置き換えます。
下図のようになりました。
これをベースにしてLCDで文字を表示させる記述を作っていきます。