vc707 MicroBlaze LCD 試驗

VC707 開發板上面有一個LCD1602 的顯示屏,可以參考UG885文檔中LCD部分的描述如下:




         關於此款LCD屏幕,可以參考ug230 文檔中的描述。

Block圖中創建MCU的最小系統,這裏FLASH選擇64KB。


添加一個GPIO模塊,設置如下:



設置約束文件

set_property PACKAGE_PIN E19 [get_ports sys_diff_clock_clk_p]
set_property IOSTANDARD LVDS [get_ports sys_diff_clock_clk_p]
set_property PACKAGE_PIN E18 [get_ports sys_diff_clock_clk_n]
set_property IOSTANDARD LVDS [get_ports sys_diff_clock_clk_n]
set_property PACKAGE_PIN AV40 [get_ports reset]
set_property IOSTANDARD LVCMOS18 [get_ports reset]
set_property PACKAGE_PIN AU36 [get_ports rs232_uart_rxd]
set_property IOSTANDARD LVCMOS18 [get_ports rs232_uart_rxd]
set_property PACKAGE_PIN AU33 [get_ports rs232_uart_txd]
set_property IOSTANDARD LVCOM18 [get_ports rs232_uart_txd]
set_property PACKAGE_PIN AT42 [get_ports lcd_7bits_tri_o_6]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_0_6]
set_property PACKAGE_PIN AR38 [get_ports lcd_7bits_tri_o_5]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_o_5]
set_property PACKAGE_PIN AR39 [get_ports lcd_7bits_tri_o_4]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_o_4]
set_property PACKAGE_PIN AN40 [get_ports lcd_7bits_tri_o_3]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_0_3]
set_property PACKAGE_PIN AR42 [get_ports lcd_7bits_tri_o_2]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_0_2]
set_property PACKAGE_PIN AN41 [get_ports lcd_7bits_tri_o_1]
set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_0_1]
set_property PACKAGE_PIN AT40 [get_ports lcd_7bits_tri_o_0]

set_property IOSTANDARD LVCMOS18 [get_ports lcd_7bits_tri_0_0]

驗證無問題後,選擇Generate Bitstream。

軟件部分, 參考vc707_bist 官方實驗中的LCD部分代碼即可。

備註:注意一下外設地址的宏定義部分

#define XPAR_LCD_GPIO_BASEADDR   XPAR_GPIO_0_BASEADDR
//這裏的"XPAR_GPIO_0_BASEADDR"這個名字和Block圖中GPIO模塊的名字有關係

SDK中創建一個helloworld的模板程序,然後調用一下 lcd_simple() 函數,能夠看到屏幕顯示出正確的字符。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章