基于Nios的GDM12864A顯示模塊控制
隨著(zhù)微電子技術(shù)的迅猛發(fā)展,各種芯片在體積不斷縮小的同時(shí),功能卻越來(lái)越強大。FPGA芯片也從最初只有幾千門(mén),發(fā)展到數百萬(wàn)門(mén)的規模,I/O口由幾十個(gè)發(fā)展至上千個(gè)。在這種資源極其豐富的情況下,FPGA設計者不再滿(mǎn)足于僅僅用其來(lái)設計簡(jiǎn)單的應用系統,而開(kāi)始在一片FPGA上集成一個(gè)完整的電子系統,即SOPC(System On Progratomble Chip)。它通常包括片內存儲器和片內微處理器。Altera公司針對其FPGA芯片推出的Nios系列處理器,就是專(zhuān)為SOPC設計而開(kāi)發(fā)的,它是Altera Excalibur嵌入處理器計劃中第一個(gè)產(chǎn)品,它成為業(yè)界第一款可編程優(yōu)化的可配置處理器。本文闡述在SOPC中利用Nios處理器實(shí)現GDM12864A顯示模塊控制的方法。
本文引用地址:http://dyxdggzs.com/article/169483.htmGDM12864A是帶顯示存儲器的圖形液晶顯示控制器。它的特點(diǎn)是內置64×64 b的顯示存儲器,顯示屏上各像素點(diǎn)的顯示狀態(tài)與顯示存儲器的各位數據一一對應,顯示存儲器的數據直接作為圖形顯示的驅動(dòng)信號。顯示數據為“1”,相應的像素點(diǎn)顯示;顯示數據為“0”,相應的像素點(diǎn)就不顯示。同時(shí)GDM12864A配備了一套顯示存儲器的管理電路和與計算機接口電路,允許計算機直接訪(fǎng)問(wèn)顯示存儲器。其具體參數如下:64×64 b(512 B)的顯示存儲器,其數據直接作為顯示驅動(dòng)信號,8位并行數據接口,64路列驅動(dòng)輸出,低功耗,在顯示期間功耗最大為2 mW,較寬的工作電壓,Vcc=2.7~5.5 V,Vee=0~-10 V。GDM12864A詳細指令如表1所示。
2 Nios軟核
Nios處理器是Altera公司推出的一個(gè)具有32/16 b精簡(jiǎn)指令集的軟核(Soft Core)CPU,它是面向用戶(hù),可以靈活定制的通用RISC嵌入式處理器,它以軟核的形式交付給用戶(hù),并針對Altera公司的FPGA專(zhuān)門(mén)進(jìn)行了優(yōu)化。用戶(hù)可以在A(yíng)ltera公司提供的開(kāi)發(fā)軟件中加載Nios核和相應的外圍接口并定義相應的指令,然后對設計進(jìn)行綜合并下載到FPGA中就可以方便地定制一個(gè)具有特定功能的嵌入式處理器。用戶(hù)可以按照設計的需要選擇添加必要的部件,不會(huì )出現資源浪費的現象。圖1即為一個(gè)已經(jīng)設計完成的基本的Nios系統,它包括了一個(gè)嵌入式系統工作所需要的所有基本端口,其中有ROM和RAM接口,串口,UART,以及系統的時(shí)鐘Clk,另外還有一些外設接口。
3 Nios與顯示模塊的接口電路
利用Nios對GDM12864A進(jìn)行控制可以有兩種方法:一種方法是將該顯示模塊的接口作為Nios的存儲器或I/O設備直接掛接到Nios的Avalon總線(xiàn)上,Nios以訪(fǎng)問(wèn)I/O設備或讀寫(xiě)存儲器的方式對其進(jìn)行控制。另一種方法是將GDM12864A的接口與Nios的并行端口相連接,Nios通過(guò)對其端口的操作來(lái)完成對顯示模塊的控制。這種方式具有時(shí)序簡(jiǎn)單,易實(shí)現的優(yōu)點(diǎn),可以直接利用軟件完成所有的控制操作。本文將采用第二種控制方式,其接口電路如圖2所示。
圖2中DI為寄存器選擇信號,高電平時(shí)選擇數據寄存器,低電平時(shí)選擇指令寄存器;RW是讀寫(xiě)控制信號,RW為高電平時(shí)Nios可以從顯示模塊讀取當前狀態(tài),為低電平時(shí)Nios向顯示模塊寫(xiě)數據或指令;E為使能信號。由于GDM12864A是128×64像素的顯示屏,顯示時(shí)被分成兩個(gè)區域分別顯示,所以在進(jìn)行控制時(shí)需要進(jìn)行顯示區選擇,也就是片選CS1和CS2。DB[7..0]為并行數據接口,發(fā)送指令或讀取狀態(tài)都通過(guò)對它的操作完成。
評論