《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 使用SPCE061A的ACM12864J液晶顯示模塊應用設計
使用SPCE061A的ACM12864J液晶顯示模塊應用設計
摘要: 介紹了ACM12864J液晶顯示模塊的特性與功能,提出ACM12864J與SPCE061A微控制器的硬件接口設計,以及在此設計基礎之上實現字符顯示、漢字顯示、圖形與曲線顯示的方法與編程技巧。
Abstract:
Key words :

摘要:介紹了ACM12864J液晶顯示模塊的特性與功能,提出ACM12864J與SPCE061A微控制器的硬件接口設計,以及在此設計基礎之上實現字符顯示、漢字顯示、圖形與曲線顯示的方法與編程技巧。

0. 引言
    點陣式平板圖形液晶顯示器在各種便攜式產品中具有非常廣泛的應用。顯示器的核心液晶顯示器控制器品種繁多,各種控制芯片在控制電路邏輯、控制指令、指標參數等方面各有差異。但是對于已經帶有控制電路的平板點陣式圖形液晶顯示器,使用者無需關心其控制核心的集成芯片,控制電路的幾個信號,就可以方便地利用它進行開發。
1. ACM12864J液晶顯示模塊的特性

   ACM12864J是采用聯合電子公司生產的小型液晶顯示模塊,該模塊價格低,數據可讀寫,自帶負壓發生電路,單+5V供電,帶背光,可由各種微控制器器直接控制,數據讀寫操作不受外部時鐘控制,不帶漢字庫,占空比為1/64,外部共有20條引腳來進行外部接口。
ACM12864J采用的數據傳送方式是縱向數據傳送方式,64行共分為0~7頁,每頁8行,逐頁顯。發送數據步驟:先發送第0頁第一列,高位在下,為一個字節;再發送第二列,直到128行結束;然后發送第2頁第一列,依次類推,直到整屏數據發送完為止。。這種數據顯示方式利用字模提取軟件,采用"縱向8點下高位"輸出格式取模,不做任何修改,就能很好的顯示。其寫時序如圖1所示。  
2.ACM12864J液晶顯示模塊應用的硬件設計


   ACM12864J數據為8位并行數據接口,外加數根控制線,若直接與單片機接口,占用口線太多。而SPCE061A內置有SIO接口,通過74HC164進行的串并轉換,可以用來傳送8位并行數據。這樣加上連背光燈控制信號線也不過占用8根I/O口。倘若不進行讀操作,可減至7根控制信號線。SIO的接口共有四種接口方式,即地址為8位、16位、24位和無地址接口,與ACM12864J的接口采用無地址方式傳送,設置好寄存器工作狀態,即可直接傳送數據,SPCE061A的SIO接口最高傳輸率可達5Mb/S。數據的讀寫控制線由單片機的I/O線控制,LCD所需的時序延時由編好的位操作函數直接控制,編程時不須考慮SPCE061A與ACM12864J接口的時間要求,簡化了編程。硬件電路如圖2所示。
3. 軟件程序編制
3.1 SIO初始化及寫數據
    SPCE061A單片機是由臺灣凌陽科技股份有限公司生產的具有SOC系統的微控制器,該控制器內置A/D轉換、SIO口等。SPCE061A的串行外圍設備接口SIO在傳送數據之前,須對SIO口控制寄存器進行初始化。SIO口控制寄存器P_SIO_Ctrl主要設置SIO口通信的工作模式,包括設備地址、傳輸速度、讀寫設置、功能設置等。SIO口數據寄存器P_SIO_Data主要負責讀寫過程中數據的接收與發送。SIO口的啟動控制寄存器P_SIO_Start,又是狀態控制寄存器,根據P_SIO_Start的狀態,判斷數據接收或發送完畢。
SPCE061A不提供位操作指令,對位進行操作時,要不影響其他位的狀態,可采用"讀---改---寫"的辦法,即:先讀出某一位的的值,經邏輯與、邏輯或運算,再回寫到當前字節,即改變了I/O口的狀態。為此,編寫位操作函數Set_IOA_Bit(n,dir,attrib,buffer,data)、Set_IOB_Bit(n,dir,attrib,buffer,data)解決上述問題,該函數的參數定義如下:n-位操作的位數;dir,attrib,buffer-位操作的屬性;data-位操作的數據;。其傳送數據的程序如下:

3.2 ASCII字符的顯示

                               
    最常用的辦法是采用字模提取軟件提取字模,這種方法在資源比較少的條件下是適宜的。缺點是比較麻煩,要來回改動,且不好尋址。一種比較實用的方法是制作好一個ASCII字模表,定義為一個一維數組的形式。程序中若出現數字變量的操作,須把變量轉化為字符顯示時。因此,先判斷顯示的是字符還是數字,若是數字,先應轉化為字符。然后再把ASCII值減去32得到索引值,根據索引值直接查表,查得8*16的點陣字模,送出顯示。在程序中可以用變量直接表示數字并進行運算,顯示時只送變量。對于SPCE061A,內置有32K字的flash ROM,而表格又不大,在數組前加入"const"即可把數組存到內部的flash ROM中。在ACM12864J中,取每個ASCII字模為8*16,每個ASCII字模占16個字節,按ASCII從小到大的順序排列,便于查找。
3.3 漢字的顯示
    漢字在ACM12864J上一般采用兩種取模方式:一種為12*12點陣,可顯示5行漢字,缺點是編程較為困難;一種為16*16點陣,可顯示4行漢字,編程比較簡單。以16*16點陣為例來說,每個漢字占用32個字節,根據LCD顯示的要求,利用字模提取軟件,采用"縱向8點下高位"能滿足要求。
在進行中文菜單設計時,每行可顯示8個漢字,有個"焦點"問題,編程時可設置一個"焦點指針",處于焦點之下的反白顯示,其他的正常顯示。這樣可把每行顯示編成一個函數的形式,控制好焦點,顯示時調用一次顯示行子函數。漢字顯示程序如下(fb=1,反白顯示):

3.4 圖形及動畫的顯示
    圖形及動畫的顯示一般是整屏操作的,字模的選取可以先用windows下的畫筆工具。新建一幅128*64像素的圖片,編完圖片后,保存為黑白圖象。然后在字模軟件中打開,提取出字模來。每幅圖片占用128*8個字節的空間,根據圖片數據存儲的特點,提取的鄰近字模數據相同。若是圖片比較多或者進行動畫顯示,最好進行壓縮保存,節省控制器寶貴的資源,讀取時編寫控制器軟件解壓縮。
3.5 曲線的顯示與繪制
    點是組成曲線的基本單位,畫曲線也就是多次調用點函數進行顯示的。點函數編制思想也就是根據橫坐標X(1<=X<=128),縱坐標Y(1<=Y<=64)來確定某一點,而在畫函數時,X坐標從左往右,正好符合人的習慣。但Y坐標從上到下依次增大,與人相反,故必須校正。以畫兩個周期的正弦函數為例,可包含頭文件"math.h",調用庫函數y=sinf(x),其中x為浮點數弧度顯示,y的值介于-1與1之間。要滿屏顯示,須加1變為正,放大31倍;x坐標為128點,取步進量為0.1弧度,可參考以下程序:


    本文介紹了不帶中文字庫的ACM12864J與SPCE061A的接口技術,提出了技巧性的編程解決辦法。采用ACM12864J液晶顯示模塊,可以顯示字符、中文漢字、圖形與動畫等,提高了系統的可視化界面,在工業儀器儀表中得到了廣泛的應用。凌陽公司生產的SPCE061A具有不僅具有一般控制器的功能,加上其獨具特色的語音處理功能,可以開發出許多智能化的產品。
 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产成人精品综合网站 | 亚洲女人网 | 综合在线视频精品专区 | 美女很黄很黄是免费的·无遮挡网站 | 中文字幕精品一区二区绿巨人 | 久久国产精品1区2区3区网页 | 国产精品a人片在线观看 | 久久er热这里只有精品免费 | 男女性生活网站 | 免费女人18毛片a级毛片视频 | 中文字幕一二区 | 深夜福利国产 | 亚洲欧美日韩一级特黄在线 | 日本一区二区三区高清在线观看 | 亚洲精品专区一区二区三区 | 欧美亚洲日本国产综合网 | 亚洲精品国产一区二区三 | 国产在线精品一区二区三区不卡 | 男人的天堂亚洲 | 99久久久国产精品免费播放器 | 美女视频黄a全部免费专区一 | 欧美一区二区精品 | 国产裸体美女视频全黄 | 国产一级毛片夜一级毛片 | 亚洲视频一区在线观看 | 夜色精品国产一区二区 | 国产精品爱久久久久久久 | 国产精品免费一区二区三区四区 | 97在线视频观看 | 一级毛片子 | 欧美一级v片 | 国产香港特级一级毛片 | 日韩经典在线观看 | 欧美上床视频 | 亚洲特级黄色片 | 欧美一级久久久久久久大片 | 久久网站免费观看 | 亚洲欧美日韩中文字幕在线一区 | 亚洲欧洲一区二区三区久久 | 久草最新视频 | 99精品网|