《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的液晶顯示接口設計
基于FPGA的液晶顯示接口設計
電子元器件應用
張紅娜 胡榮強等
摘要: 基于FPGA的液晶顯示接口設計,在小規模圖形液晶顯示模塊上使用液晶顯示驅動控制器組成液晶顯示驅動和控制系統,是當今低成本,低功耗,高集成化設計的最好選擇,SED1520是當前最常用的一種液晶顯示驅動控制器,這類圖形液晶顯示模塊的規模為32行,
關鍵詞: FPGA 液晶顯示 ACEX1K30
Abstract:
Key words :

   在小規模圖形液晶顯示模塊上使用液晶顯示驅動控制器組成液晶顯示驅動和控制系統,是當今低成本,低功耗,高集成化設計的最好選擇,SED1520是當前最常用的一種液晶顯示驅動控制器,這類圖形液晶顯示模塊的規模為32行,本文用到的液晶模塊CM12232即是內置SED1520的液晶顯示模塊,該模塊的驅動控制系統由兩片SED1520組成。

    FPGA即現場可編程門陣列器件,這是一種超大規模集成電路,具有在電路可重配置的能力(in circuit reconfigurable,ICR)。設計者設計的邏輯可在編譯、適配后變成網絡表下載到FPGA芯片上之后,FPGA即可執行設計的邏輯功能。因此,FPGA在芯片控制、接口邏輯設計等各個方面的應用越來越廣泛。

系統硬件設計

    本方案采用的FPGA為Altera公司的ACEX1K30芯片,它可提供系統的時鐘及讀寫控制,ACEX系列的FPGA由邏輯陣列塊LAB(Logic array block)、嵌入式陣列塊EAB(embedded array block)、快速互聯以及IO單元構成,每個邏輯陣列塊包含8個邏輯單元LE(logic element)和一個局部互聯[1]。每個邏輯單元則由一個4輸入查找表(LUT)、一個可編程觸發器、快速進位鏈、級連鏈組成,多個LAB和多個EAB則可通過快速通道互相連接。EAB是ACEX系列器件在結構設計上的一個重要部件,他是輸入端口和輸出端口都帶有觸發器的一種靈活的RAM塊,其主要功能是實現一些規模不太大的FIFO、ROM、RAM和雙端口RAM等。在本液晶顯示接口電路中,EAB主要用宏功能模塊實現片上ROM。它通過調用FPGA上的EAB資源來實現漢字的顯示和字符的存儲,并根據控制信號產生的地址值從ROM中讀取字符值,然后送LCD顯示器進行顯示。

    由于所用的圖形點陣液晶塊內置有SED1520控制器,所以,其電路特性實際上就是SED1520的電路特性。SED1520的主要特性如下[2]:

    具有液晶顯示行驅動器,具有16路行驅動輸出,并可級聯實現32行驅動。

    具有液晶顯示列驅動器,共有61路列驅動輸出。

    內置時序發生器,其占空比可設置為1/16和1/32兩種。

    內藏顯示存儲器,顯示存儲器內的數據可直接顯示,"1"為顯示,"0"為不顯示。

    接口總線時序可適配8080系列或M6800系列,并可直接與計算機接口。

    操作簡單,有13條控制指令。

    采用CMOS工藝,可在電壓低至2.4-7.0V時正常工作,功耗僅30μW。

    本設計所用的字符液晶模塊CM12232由兩塊SED1520級連驅動,其中一個工作在主工作方式下,另一個工作在從方式下,主工作方式SED1520負責上半屏16行的驅動和左半屏的61列驅動,從工作方式的SED1520則負責下半屏16行的驅動和右半屏的61列驅動,使能信號E1、E2用來區分具體控制的是那一片SED1520,其系統的硬件連接圖如圖1所示。

    由圖1可見,該系統的硬件部分連接十分簡單,其中FPGA部分沒畫出,而液晶與FPGA的接口則可直接以網表的形式給出,將它們直接與FPGA的普通I/O引腳相連即可。

系統的軟件接口實現

    具體實現的重點是如何從存放有字符的ROM塊中讀出數據,并按照液晶的時序正確的寫入,在介紹具體實現方法前,首先要熟悉SED1520的指令。

    SED1520的控制指令表
 

 

 

 

begin

if clk2'event and clk2=`1'then case conv_integer (data)is

when 0|2|4|6|8|10|12|13|138|139|264|265|390|391=>A01<=`0';cs11<=`0';cs21<=`1';

when 1|3|5|7|9|11|75|76|201|202|327|328|453|454=>A01<=`0';cs11<=`1';cs21<=`0';

when 14 to 74=>A01<=`1';cs11<=`0';cs21<=`1';

when 140 to 200=>A01<=`1';cs11<=`0';cs21<=1';

when 266 to 326=>A01<=`1';cs11<=`0';cs21<=`1';

when 392 to 452=>A01<=`1';cs11<=`0';cs21<=`1';

when 77 to 137=>A01<=`1';cs11<=`1';cs21<=`0';

when 203 to 263=>A01<=`1';cs11>=`1';cs21<=`0';

when 329 to 389=>A01<=`1';cs11<=`1';cs21<=`0';

when 455 to 515=>A01<=`1';cs11<=`1';cs21<=`0';

when others=>A01<=`0';cs11<=`1';cs21<=`1';

end case;

end if;

end process3;

a0<=a01;

cs1<=cs11 or csflag;

cs2<=cs21 or csflag;

ad<=data;

end Behavioral;

    其中的關鍵程序為Process3;在該過程中,A01負責該數據寫到液晶數據線上顯示還是寫到液晶的控制寄存器進行控制,A01為0時為寫命令,A01為1時為寫數據。

    程序中,ROM地址的前13個單元均為寫命令,根據SED1520的控制命令字,ROM表中的0、2、4、6、8、10單元依次是E2、A4、A9、A0、C0、AF,主要用于實現對CSI主工作的SED1520復位、退出休閑狀態、設置占空比為1/32、順時針顯示數據RAM中的內容、顯示起始對應顯示存儲器的0行、顯示開這一系列的初始化工作;而1,3,5,7,9,11單元則寫入到CS2(即從工作的SED1520)實現其初始化[4]。第13單元放的是B8(即頁地址設置為0),從14-74單元,A01=1為寫數據,此時片選CS1有效,ROM表中連續放入"武漢理工"4個漢字的上半部分字模(本方案共顯示16個漢字"武漢理工大學自動化學院重點實驗室"分兩行,每行8個字顯示);之后,75、76單元為寫命令,ROM中的數據為B8,00表示設置顯示頁為0頁,該頁的列地址從0開始[5]。從77-137單元地址向CS2(即從動工作方式的SED1520)寫數據即"大學自動"的前半部分字模,接下來的138、139單元為寫命令,ROM中的數據為B9,00即表示頁地址設置為1列,地址為0,140-200單元放入"武漢理工"的下半部分字模,201、202單元為寫命令,ROM中的數據為B9、00表示頁地址設置為1列,地址為0,203-263中為"大學自動"的下半部分字模,之后,8個字的寫入過程與前8個字的寫入過程相同,寫命令單元用于控制要寫的頁。

結束語

    本方案以FPGA為控制核心實現了對字符點陣液晶的控制,該方案硬件電路簡單,軟件程序簡潔,對液晶的控制簡單而且穩定,且可靈活改動,若要改變液晶顯示的漢字,只需改變ROM表中的字模即可,實踐證明,該設計是對液晶應用的一種行之有效的方法。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产乱码一区二区三区四| 七仙女欲春3一级裸片在线播放 | 亚洲天堂福利视频| 紧窄极品名器美妇灌| 国产日本韩国不卡在线视频| a在线观看免费网址大全| 日产码一卡二卡三国产乱码 | 黄瓜视频入口在线播放| 国产超爽人人爽人人做| 一级毛片免费不卡在线| 日本精品一区二区在线播放| 亚洲国产婷婷综合在线精品| 男人使劲躁爽女人动态图| 国产av人人夜夜澡人人爽麻豆| 四虎最新永久免费视频| 外国女性用一对父子精液生子引争议| 中文字幕在线亚洲精品| 日韩电影免费在线观看网| 亚洲成在人线在线播放无码| 粗大的内捧猛烈进出小视频| 国产三级国产经典国产av| 欧美精品综合一区二区三区| 国产香蕉97碰碰视频VA碰碰看| www.天天干| 成人午夜高潮A∨猛片| 久久午夜无码鲁丝片午夜精品| 樱桃视频高清免费观看在线播放 | 国产男靠女免费视频网站| 99久久无码一区人妻| 小泽玛利亚在线观看国产| 久久99精品久久久久久不卡| 日韩精品久久不卡中文字幕| 亚洲人av高清无码| 欧美疯狂性受xxxxx喷水| 人人玩人人添人人澡mp4| 精品无码久久久久久国产| 国产三级在线观看免费| 香焦视频在线观看黄| 国产无套粉嫩白浆| 福利姬在线精品观看| 国产精彩视频在线|