《電子技術(shù)應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > uC/GUI在ARM 內(nèi)核S3C44B0X的移植實例
uC/GUI在ARM 內(nèi)核S3C44B0X的移植實例
摘要: uC/GUI在ARM內(nèi)核S3C44B0X的移植實例,uC/GUI是Micrigm公司推出的用于嵌入式系統(tǒng)的圖形用戶接口(graphicsuserinterface,GUI)軟件包,由于uC/GUI完全以ANSI-C編寫,因此它與處理器無關(guān),可以很方便地移植到不同的操作系統(tǒng)和嵌入式微處理器上,并可支持
關(guān)鍵詞: 移植實例 S3C44B0X ARM uC/GUI
Abstract:
Key words :

uC/GUI是Micrigm 公司推出的用于嵌入式系統(tǒng)的圖形用戶接口(graphics user interface,GUI)軟件包,由于uC/GUI完全以ANSI-C編寫,因此它與處理器無關(guān),可以很方便地移植到不同的操作系統(tǒng)和嵌入式微處理器上,并可支持不同尺寸的圖形液晶顯示器。它采用層次化的設計,功能強大,移植方便,被廣泛地應用于嵌入式領(lǐng)域,如PDA、機頂盒以及DVD NCD播放機等。本文詳細介紹了uC/GUI在ARM 內(nèi)核S3C44B0X的移植。實踐證明uC/GUI具有良好的實時性和穩(wěn)定性以及廣泛的應用前景。

1、硬件連接與液晶顯示原理

本設計使用的硬件采用ARM7開發(fā)板,液晶模塊為L78C64,它是7.8in 256色STN型LCD顯示屏,分辨率為640×480。

LCD控制器外部接口信號的定義及其與LCD模塊各信號之間的對應關(guān)系如下:

(1)VFRAME:LCD控制器與LCD驅(qū)動器之間的幀同步信號。該信號負責指出LCD屏新的一幀開始的時間。LCD控制器在一個完整幀顯示完成后立即插入一個VFRAME信號,并開始新一幀的顯示。該信號與LCD模塊的YD信號相對應;

(2)VLINE:LCD控制器和LCD驅(qū)動器之間的線同步脈沖信號。該信號用于將LCD驅(qū)動器水平線(行)移位寄存器的內(nèi)容傳送給LCD屏顯示。LCD控制器在整個水平線(整行)數(shù)據(jù)移入LCD控制器后,插入一個VLINE信號。該信號與LCD模塊的LP信號相對應;

(3)VCLK:LCD控制器和LCD驅(qū)動器之間的像素時鐘信號。由LCD控制器送出的數(shù)據(jù)在VCLK的上升沿處送出,在VCLK的下降沿被LCD驅(qū)動器采樣。該信號與LCD模塊的XCK信號相對應;

(4)VM:LCD驅(qū)動器的AC信號。VM信號被LCD驅(qū)動器用于改變行和列的電壓極性,從而控制像素點的顯示和熄滅。VM信號可以與每個幀同步,也可以與可變數(shù)量的VLINE信號同步;

(5)VD3~0 LCD:像素點的數(shù)據(jù)輸入端口。與LCD模塊的D3~0相對應:

(6)VD7~4 LCD:像素點的數(shù)據(jù)輸入端口。與LCD模塊的D7~4相對應。

液晶顯示原理:寫滿整個屏的數(shù)據(jù)稱為1個“幀”數(shù)據(jù),YD是幀同步信號,該信號啟動LCD屏的新一幀數(shù)據(jù)。兩個YD脈沖之間的時間長度稱為幀周期。根據(jù)LCD模塊的特性,刷新時間為12~14ms,頻率為70~80Hz。每一幀包括480個LP脈沖。LP為行(共480行)數(shù)據(jù)輸入鎖存信號,也就是行同步脈沖信號。該信號啟動LCD屏的新一行數(shù)據(jù)。XCK為行數(shù)據(jù)輸入信號,也就是每1行中像素點數(shù)據(jù)傳輸?shù)臅r鐘信號。每組8位的數(shù)據(jù)在XCK的下降沿被輸入鎖存,因此,每1行包括640×3/8個XCK脈沖信號。D0~D7是8位的顯示數(shù)據(jù)輸入信號。

2、驅(qū)動程序設計

下面分三步完成液晶的初始化。

(1)I/O口的初始化

由于采用S3C44B0X的PC接口和PD接口作為LCD驅(qū)動接口,因此,需要設置PC接口工作在第3功能狀態(tài)和PD接口工作在第2功能狀態(tài)。

(2)相應控制寄存器的設置方法

S3C44B0X包括一個LCD控制器時序發(fā)生器TIMEGEN, 由它來產(chǎn)生VFRAM,VLINE,VCLK和VM 控制時序。這些控制信號由寄存器LCOCON1和LCDCON2進行配置。通過對寄存器種配置項目的設置,TIMEGEN就可以產(chǎn)生適應于各種LCD屏的控制信號了。

VFRAM和VLINE脈沖的產(chǎn)生是通過對LCDCON2寄存器的HOZVAL和LINEVAL進行配置來完成的。每個域都與LCD的尺寸和顯示模式有關(guān)。

其中,HOZVAL=(顯示寬度/VD數(shù)據(jù)線位數(shù))-1。

在彩色模式下,顯示寬度=3×每行的像素點數(shù)。

對所選的液晶模塊,HOZVAL=(640×3/8)-1;LINEVAL=(顯示寬度)-1。

對所選的液晶模塊,LlNEVAL=480-1。

VCLK信號的頻率可以通過LCDCON1寄存器的CLKVAL域來確定,即

VCLK=MCLK/(CLKVAL×2)

LCD控制器的最大VCLK頻率為16.5MHz,幾乎支持所有已有的LCD驅(qū)動器。由于上述關(guān)系,CLKVAL的值決定了VCLK的頻率。為了確定CLKVAL的值,應該計算一下LCD控制器向VD端口傳輸數(shù)據(jù)的速率,以便使VCLK的值大于數(shù)據(jù)傳輸?shù)乃俾省?/p>

數(shù)據(jù)傳輸速率的公式為:

數(shù)據(jù)傳輸速率=HS×VS×FR×MV

其中,HS—LCD的行像素值;VS—LCD的列像素值:FR—幀速率;MV—模式值,這里取8位單掃描,彩色。

對于所選用的液晶模塊:HS=640;VS=480;FR=70Hz:MV=3/8。因此,數(shù)據(jù)傳輸速率=640×480×70×3/8=8,064,000Hz。

VCLK值應該大于8MHz而小于16MHz,因此,CLKVAL可以取9~15。

(3)完整的液晶初始化程序

C程序
3.2 uC/GUl移植步驟

在使用uC/GUI時,可以按照以下幾個步驟來進行:

(1)按照需要,定制uC/GUI;

(2)指定硬件設備的地址,編寫接口驅(qū)動代碼;

(3)編譯、鏈接、調(diào)試例子程序;

(4)修改例子程序,并測試增加需要的功能;

(5)編寫自己的應用程序。

3.3 具體實現(xiàn)

(1)首先介紹uC/GUI的目錄結(jié)構(gòu)和基本配置。

uC/GUI主要目錄如下:

GUI/ConvertMono 使用黑白顯示設備時,所要使用的灰度轉(zhuǎn)換函數(shù)

GUI/ConvertColor 使用彩色顯示設備時,使用的色彩轉(zhuǎn)換函數(shù)

GUI/Config 包含了對uC/GUI進行配置的一些文件

GUI/Core uC/GUI核心代碼

GUI/Font uC/GUI與字體相關(guān)的代碼文件

GUI/LCDDriver LCD驅(qū)動代碼文件

GUI/MemDev 內(nèi)存設備支持文件代碼

GUI/Touch 輸入設備支持的文件代碼

GUI/Widget uC/GU1支持的控件代碼,包括編輯框、列表框、按鈕和選擇框等

GUI/WM uC/GUI窗口管理部分代碼

(2)修改uC/GUI,使之適于移植。

在ADS環(huán)境中新建一個工程,將上述gui文件夾下的所有文件加入工程。

將Config文件夾下的3個文件GUIConf.h、

GUITouchConf.h和LCDConf.h加入新工程,如下修改LCDConf.h的內(nèi)容:

C程序
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲你懂的在线视频| 91久久线看在观草草青青| 黄色资源网久久资源365| 亚洲一区二区三区中文字幕| 伊人久久成人| 欧美高清视频在线| 久久综合99re88久久爱| 久久国产精品毛片| 欧美亚洲视频一区二区| 午夜在线精品| 欧美在线啊v一区| 欧美一区二区三区精品| 亚洲欧美三级在线| 亚洲欧美日韩电影| 午夜精品久久久久久久久| 亚洲欧美卡通另类91av| 亚洲欧美在线磁力| 欧美亚洲一区在线| 欧美亚洲在线观看| 欧美制服丝袜| 久久久久久网站| 久久久噜噜噜| 免费亚洲电影| 欧美激情按摩| 欧美日韩免费看| 欧美日韩在线观看一区二区三区| 欧美日韩另类视频| 国产精品www.| 国产日韩免费| 狠狠色狠狠色综合日日五| 樱桃成人精品视频在线播放| 在线播放国产一区中文字幕剧情欧美 | 亚洲制服丝袜在线| 午夜伦欧美伦电影理论片| 欧美在线1区| 亚洲精品一区二区三区av| 一区二区三区导航| 亚洲欧美另类中文字幕| 久久精品视频va| 欧美.www| 国产精品激情| 狠狠88综合久久久久综合网| 亚洲国产成人porn| aa成人免费视频| 午夜日韩福利| 亚洲日本va午夜在线影院| 一本色道久久综合亚洲二区三区| 亚洲愉拍自拍另类高清精品| 久久久久成人精品免费播放动漫| 欧美成人国产| 国产精品久久久久久模特| 国产欧美一区二区三区国产幕精品| 激情欧美一区二区三区在线观看| 91久久嫩草影院一区二区| 亚洲午夜久久久久久久久电影院 | 久久亚洲一区二区| 欧美精品精品一区| 国产精品免费网站在线观看| 国产一区二区三区在线播放免费观看 | 亚洲免费av片| 欧美一区三区三区高中清蜜桃| 麻豆久久婷婷| 国产精品99免视看9| 国产主播一区二区三区| 亚洲欧洲一二三| 欧美亚洲免费| 一本色道久久| 久久精品99国产精品酒店日本| 欧美国产视频在线观看| 国产精品影视天天线| 亚洲欧洲免费视频| 香蕉久久精品日日躁夜夜躁| 一本大道久久a久久精二百| 久久精品国产清高在天天线| 欧美日韩成人网| 一区二区三区在线看| 中文高清一区| 亚洲人www| 午夜免费电影一区在线观看| 欧美激情按摩在线| 国内精品免费午夜毛片| 一区二区精品国产| 亚洲精品欧美专区| 久久久久99| 国产欧美日韩视频在线观看 | 国产精品日日摸夜夜摸av| 亚洲日本aⅴ片在线观看香蕉| 欧美一级成年大片在线观看| 亚洲午夜日本在线观看| 美女国产一区| 国产一区二区三区四区老人| 亚洲色图自拍| 一区二区三区黄色| 欧美xart系列高清| 黄色精品网站| 欧美一级一区| 午夜亚洲一区| 国产精品久久久久一区二区| 日韩视频在线免费| 亚洲精品在线免费观看视频| 可以看av的网站久久看| 国产亚洲永久域名| 亚洲欧美日韩一区二区三区在线观看| 亚洲图片在线| 欧美日韩国产在线观看| 亚洲黄色影片| 亚洲青色在线| 欧美成年人视频网站欧美| 黄色成人av在线| 久久不射电影网| 久久久久国产精品人| 国产欧美日韩在线播放| 亚洲综合色网站| 新狼窝色av性久久久久久| 国产精品久久久久久久久久直播| 9人人澡人人爽人人精品| 在线视频精品| 欧美午夜电影在线| 一区二区高清视频| 亚洲欧美久久久| 国产噜噜噜噜噜久久久久久久久| 亚洲免费在线视频一区 二区| 亚洲欧美怡红院| 国产精品午夜av在线| 亚洲影视九九影院在线观看| 亚洲免费视频网站| 国产精品国产三级国产专区53 | 日韩午夜在线视频| 欧美激情导航| 亚洲免费av观看| 亚洲性人人天天夜夜摸| 国产精品久久久久久久久久妞妞| 亚洲网友自拍| 欧美一区二区三区在线观看视频| 国产三区精品| 亚洲国产精品va在看黑人| 欧美 日韩 国产精品免费观看| 亚洲欧洲精品一区二区三区| 宅男精品视频| 国产精品一区二区三区乱码| 欧美亚洲在线| 欧美成黄导航| 中文精品视频一区二区在线观看| 午夜在线视频一区二区区别| 国产一区二区三区四区五区美女| 亚洲黄色尤物视频| 欧美伦理影院| 亚洲视频网站在线观看| 久久精品道一区二区三区| 亚洲第一中文字幕| 99国内精品久久| 国产精品免费久久久久久| 久久国产手机看片| 欧美精品在线观看播放| 亚洲午夜精品网| 另类av一区二区| 一区二区三区国产在线| 久久狠狠亚洲综合| 亚洲国产天堂久久综合| 亚洲一二三区精品| 国一区二区在线观看| 亚洲精品一区二区三区四区高清| 欧美日韩一区三区| 久久国产乱子精品免费女| 欧美精品一线| 欧美一级夜夜爽| 欧美人成在线视频| 香蕉免费一区二区三区在线观看 | 欧美精品在线看| 午夜亚洲激情| 欧美阿v一级看视频| 亚洲一级黄色片| 欧美a级片一区| 亚洲一区在线免费观看| 99视频超级精品| 午夜一区二区三区在线观看| 国产精品少妇自拍| 亚洲国产精品久久久久秋霞影院 | 亚洲第一页在线| 午夜天堂精品久久久久| 亚洲国产毛片完整版| 亚洲欧美一级二级三级| 在线免费不卡视频| 午夜精品久久| 亚洲人成人一区二区在线观看| 午夜精品国产更新| 亚洲人成7777| 久久久在线视频| 亚洲午夜黄色| 欧美成人在线影院| 性欧美1819sex性高清| 欧美日韩国产电影| 久久精品导航| 国产伦理精品不卡| 在线亚洲一区观看| 精品成人久久| 欧美在线观看一区二区| 一区二区电影免费观看| 欧美a级大片| 久久国产精品毛片|