新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于51單片機和FPGA的人機交互系統(tǒng)的設(shè)計

        基于51單片機和FPGA的人機交互系統(tǒng)的設(shè)計

        作者: 時間:2011-11-16 來源:網(wǎng)絡(luò) 收藏

        3.1.1 液晶驅(qū)動模塊的初始化
        的最大特點是具有獨特的硬件初始值設(shè)置功能,顯示驅(qū)動所需的參數(shù)如占空比系數(shù)。驅(qū)動傳輸?shù)淖止?jié)數(shù)/行及字符的字體選擇等均由引腳電平設(shè)置,這 樣的初始化在上電時就已經(jīng)基本設(shè)置完成,軟件操作的重心就可以全部用于顯示畫面的設(shè)計上。因此,初始化時僅需根據(jù)實際情況設(shè)置文本區(qū)域和圖形 區(qū)域的首地址和寬度,以及CGRAM偏置地址、合成方式、光標形狀等即可正常使用。
        液晶驅(qū)動模塊的初始化函數(shù)如下:
        d.JPG
        e.jpg
        3.1.2 英文及漢字的文本顯示
        由于英文及數(shù)字等常用字符的字模已經(jīng)固化在CGROM中,因此進行英文的顯示時,只需指定顯示的地址,再輸入該字符對應(yīng)的標號即可。漢字 的顯示與英文的顯示類似。然而出于其復(fù)雜性,一個漢字需要使用4組點陣才能完整顯示。在初始化后將漢字的4部分字模順序輸入CGRAM中,在使用時僅需計 算好每一部分的顯示地址即可對漢字進行完美顯示。
        對于一串英文字符的輸入,可以利用字符串的特性進行操作。通過檢測‘\0’字符來判斷英文字符串的結(jié)尾,從而避免了在調(diào)用此顯示函數(shù)時人工計算句子長度的 工作。英文字符的ASCII碼值與其在CGROM中對應(yīng)的標號恰相差0x20,因此僅需簡單的減法即可實現(xiàn)標號的轉(zhuǎn)換。此外,在進行英文的連續(xù)顯示時,使 用了的數(shù)據(jù)自動寫指令,從而提高了顯示效率。
        對于一串中文的顯示,則僅需通過循環(huán)調(diào)用單個中文的顯示程序進行實現(xiàn)。注意由于C51語言中字符串無法支持中文,因此必須人工計算中文字串的長度并將其作為函數(shù)傳遞給此顯示函數(shù)。



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 屏山县| 嘉祥县| 邹平县| 会同县| 卢氏县| 泊头市| 永定县| 海南省| 阿尔山市| 荆州市| 丁青县| 特克斯县| 马鞍山市| 明光市| 尉氏县| 霍邱县| 兴化市| 建德市| 呼和浩特市| 合川市| 阳东县| 闽清县| 霍州市| 大方县| 肇庆市| 富裕县| 安塞县| 彭州市| 新乐市| 乐业县| 定远县| 仪陇县| 区。| 胶南市| 玉溪市| 手游| 三门县| 偃师市| 衡阳县| 兴山县| 遂川县|