FC2カウンター FPGAの部屋 AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る8
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る8

”AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る7”で、異なったクロック・ドメイン間のデータの受け渡しの問題を解決できた。もう少し確かめてみることにした。

今度は、以前のキャラクタ・ディスプレイ・コントローラのテストのように、いろいろな文字を表示しながら、色を変えるプログラムをつくってみた。Cソースを下に示す。

// Monitor
// 2011/08/11

#include "xparameters.h"

void write_data(unsigned int address, unsigned int data)
{
    *(volatile *)(XPAR_CHARDISPC_0_BASEADDR) = address;
    *(volatile *)(XPAR_CHARDISPC_0_BASEADDR+4) = data;
}

int read_data(unsigned int address)
{
    *(volatile *)(XPAR_CHARDISPC_0_BASEADDR) = address;
    return(*(volatile *)(XPAR_CHARDISPC_0_BASEADDR+4));
}

int main()
{
    unsigned int addr;
    unsigned int color, char_code, data;

    for(addr=0, color=1, char_code=0x21; addr < 100*75; addr++, color++, char_code++){
        data = (color & 0x7)<<7 | char_code;
        write_data(addr, data);
        if (char_code == 0x7e) // キャラクタの~
            char_code = 0x21// キャラクタの!
        if ((color & 0x7) == 7)
            color = 0;
    }

    return 0;
}


これを実行すると、成功しました。回路は大丈夫そうです。
SP605_AXI_CDC_40_110811.jpg

  1. 2011年08月11日 05:11 |
  2. EDK
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/1874-9150821d
この記事にトラックバックする(FC2ブログユーザー)