《電子技術應用》
您所在的位置:首頁 > 顯示光電 > 設計應用 > 基于點陣式液晶字符反白和圖形顯示研究
基于點陣式液晶字符反白和圖形顯示研究
摘要: 本文采用以ST7920為控制器的YMl2864R點陣式液晶顯示模塊(LCD Module,LCM)構成了整個IVC監控系統的人機界面部分。YM12864R點陣式液晶顯示模塊具有靈活的接口方式和簡單的操作指令,構成的全中文人機交互圖形界面既可以顯示8×4行16×16點陣的漢字,也可以顯示圖形。模塊內部設有2MB的中文字型CGROM和64×256點陣的GDRAM繪圖區域;同時,提供4組可編程控制的16×16點陣造字空間。
Abstract:
Key words :

  引  言

  實驗動物獨立通氣籠盒(Individual Ventilated Cages,IVC)(閉環)監控系統,由微控制器實現對籠盒風扇的通氣量、籠盒內部的氨含量等參數采集,并根據這些參數來調整通氣風扇轉速,以調整籠盒的換氣率,從而確保籠盒內部的空氣質量。同時,根據相關參數指標發出警報以提醒更換過濾膜等,實現對小動物生長環境的過程控制。

  在整個監控系統中,人機交互界面部分用于顯示整個實驗動物生長環境過程中的控制歷史數據、實時控制參數和環境溫度參數等。

  本文采用以ST7920為控制器的YMl2864R點陣式液晶顯示模塊(LCD Module,LCM)構成了整個IVC監控系統的人機界面部分。YM12864R點陣式液晶顯示模塊具有靈活的接口方式和簡單的操作指令,構成的全中文人機交互圖形界面既可以顯示8×4行16×16點陣的漢字,也可以顯示圖形。模塊內部設有2MB的中文字型CGROM和64×256點陣的GDRAM繪圖區域;同時,提供4組可編程控制的16×16點陣造字空間。

 

  1 點陣式液晶硬件接口設計

  以ST7920為控制器的YM12864R點陣式液晶顯示模塊和單片機之間的接口方式有并行和串行兩種。本文采用串行接口方式,單片機選用AVR公司的ATmega16。接口電路如圖1所示。其中,PC4控制串行的片選信號(CS),低電平有效;PC5控制串行的數據線(SID);PC6控制串行的時鐘輸入(CLK)。ST7920通過VCC(+5 V)和GND之間串聯一個10 kΩ的電阻來控制背光強度。如果不需要調節對比度,可以直接將VLCD引腳接VCC(+5 V),此時對比度最大。

  2 文本顯示及繪圖顯示

  2.1 文本顯示

  ST7920可以顯示半寬的HCGROM字型、CGRAM字型以及中文CGROM三種字型,通過在DDRAM中寫入的編碼選擇。文本顯示DDRAM提供8個×4行的漢字空間,如下所示:

 

  字型編碼如下:

  ①顯示半寬HCGROM字型。將1字節寫入DDRAM中,范圍為02H~7FH的編碼。

  ②顯示半寬CGRAM字型。將2字節編碼寫入DDRAM中,總共有0000H、0002H、0004H、0006H四種編碼。

  ③顯示中文CGROM字型。將2字節編碼寫入DDRAM中,范圍為A1AOH~FTFFH(GB碼)或A140H~D75FH(BIG5碼)的編碼。

  2.2  繪圖顯示

  繪圖顯示GDRAM提供128×8字節的記憶空間。在更改繪圖RAM時,先連續寫入水平與垂直的坐標值,再寫入2個字節的數據到繪圖RAM中,而地址計數器(AC)會自動加1。在寫入繪圖顯示RAM的期間,繪圖顯示功能必須關閉。整個寫入繪圖RAM的步驟如下:

  ①關閉繪圖顯示功能;

  ②先將水平的位元組坐標(X)寫入繪圖RAM地址,再將垂直的坐標(Y)寫入繪圖RAM地址;

  ③依次將D15~D8和D7~D0寫入RAM中;

  ④打開繪圖顯示功能。

  圖形顯示坐標如圖2所示。其中,水平方向X以字節單位,垂直方向Y以位為單位。



  3 字符反白

  在實現人機交互界面菜單時,字符反白可以表示菜單中不同選項被選中的狀態。液晶顯示模塊YM12864R的使用手冊中提供了對應行的反白指令,但在原理上ST7920控制器的128×64點陣液晶等同于256×32點陣,第3行對應的文本顯示(DDRAM)地址緊接著第1行,第4行對應的文本顯示(DDRAM)地址緊接第2行。因此,用戶對第1行執行反白顯示操作時,第3行必然也反白顯示;對第2行執行反白操作時,第4行也必然反白。可見,使用手冊中自帶的反白指令不能實現任意字符的反白。

  為了解決上述問題,可以將圖形顯示和字符顯示結合起來使用。在ST7920控制器中,文本顯示的DDRAM和圖形顯示的GDRAM是相互獨立的,而最后顯示到液晶上的結果則是,文本顯示DDRAM中數據和圖形顯示GDRAM中數據的異或結果。

  如果要在液晶顯示模塊的某個點上呈現反白顯示,那么就在該點繪圖并且顯示文本;如果要取消反白,只需用全“0”擦掉該點的繪圖。這樣,就可以實現YM12864R的任意字符的反白。

 

  字符反白程序流程如圖3所示。其中,base_x表示繪圖起始的行地址;Y_Pos表示繪圖起始的列地址;第1行至第4行的起始地址分別是(0x80,0x80),(0xS0,0xg0),(0x88,0xS0)和(0x88,0x90)。

  反白就是在需要反白的區域進行繪圖,即在這個區域寫進0xff。清除一個區域的反白,就是對需要清除反白的區域清除繪圖,即在這個區域寫進0x00。

  在整個繪圖的過程中,橫向地址指針是自動進行加1運算的,所以只需要確定這一行的首地址橫坐標;而縱坐標的地址不進行自動加1運算,需要在程序中修正,每次修正是以像素為基本單位的。

  字符反白顯示實例如圖4所示。

 

  4 任意位置顯示任意大小圖形

  在實現人機交互界面時,圖文結合是常見的一種方式。本文嘗試一種任意位置顯示任意大小圖形(橫向尺寸以字節為基本單位,縱向尺寸以位為基本單位)的方法,為人機交互界面的圖形結合設計提供了捷徑。

  4.1 任意位置顯示任意大小圖形程序

  任意位置顯示任意大小圖形程序流程如圖5所示。其中,x1和y1表示所畫圖的起始點相對于液晶屏幕左上角起始點(0xS0,0x80)的距離(橫向x1以字節為基本單位,縱向y1以位為基本單位);x表示所畫圖的起始橫坐標地址;y表示所畫圖的起始縱坐標地址;Write_command()函數用于向液晶中寫命令;templ表示圖形的縱向尺寸(以像素為單位)。

 

  繪圖時,如果所畫的圖形只涉及上半屏(或下半屏),那么在寫地址時可以不考慮地址跨越上下半屏的調整,只需要在所畫圖形的初始處寫好行地址和列地址:

  Write_command(y+templ);

  Write_command(x);

  在繪圖過程中,橫坐標地址指針會在寫數據的過程中自動加1,因此只需要寫出這一行的首地址;但縱坐標地址指針不會自動加1,需要在程序中修正。

  4.2  任意位置顯示任意大小圖形實例

  任意位置顯示任意大小圖形實例如圖6(a)~(c) 所示。

 

  結  語

  ST7920因內置字庫而被廣泛應用,其圖形顯示的關鍵點是熟練掌握圖形顯示坐標。在筆者所參與的獨立通氣籠盒監控系統設計過程中,利用以ST7920為控制器的液晶顯示模塊構建良好的人機交互界面,以曲線和直方圖的方式顯示實時溫度。系統可由用戶設定開啟密碼,可以查看相關歷史數據、實現實驗動物生長環境及生長過程的控制,以及回溯歷史數據、實時控制參數和環境溫度等參數。該設計對優化控制實驗動物生長環境、穩定實驗動物生活習性、動物形態十分有益。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品区一区二区三| 狠狠网亚洲精品| 久久一区二区三区av| 午夜免费久久久久| 亚洲已满18点击进入久久| 亚洲伦伦在线| 亚洲欧洲综合另类| 亚洲欧洲在线看| 亚洲精品国久久99热| 亚洲黄色影院| 亚洲国产精品久久久久| 亚洲国产精品成人| 亚洲高清在线观看一区| 久久精品一区二区三区中文字幕 | 亚洲国产天堂久久综合| 亚洲第一黄色| 亚洲国产精品ⅴa在线观看| 亚洲二区在线| 亚洲三级电影全部在线观看高清| 亚洲激情第一页| 亚洲精品日韩久久| 亚洲麻豆国产自偷在线| aa级大片欧美三级| 亚洲午夜在线观看| 小辣椒精品导航| 久久精品国产在热久久 | 亚洲欧美日韩成人高清在线一区| 亚洲综合色视频| 欧美在线啊v一区| 久久久久久久国产| 欧美freesex交免费视频| 欧美国产日韩xxxxx| 欧美日韩精品免费观看视频| 国产精品videosex极品| 国产精品天天看| 狠狠色狠狠色综合日日tαg| 在线观看欧美日韩国产| 亚洲精品一级| 亚洲欧美日韩国产中文在线| 久久精品视频va| 一区二区三区高清在线观看| 亚洲欧美激情视频| 久久久久在线观看| 欧美激情综合五月色丁香| 欧美色图首页| 国模一区二区三区| 亚洲美女av黄| 欧美亚洲视频一区二区| 亚洲日本一区二区三区| 亚洲性线免费观看视频成熟| 欧美中在线观看| 欧美激情一二三区| 国产精品视频yy9099| 一区国产精品| 中文国产亚洲喷潮| 久久精品二区| 亚洲视频二区| 久久免费视频观看| 欧美日韩大片| 国产有码在线一区二区视频| 亚洲精品日韩久久| 欧美一区二区三区四区在线观看| 亚洲精品网址在线观看| 欧美一区二区三区另类| 欧美黑人在线观看| 国产精品尤物| 亚洲人成网站影音先锋播放| 午夜精品福利视频| 一区二区日韩欧美| 久久婷婷亚洲| 国产精品剧情在线亚洲| 亚洲电影欧美电影有声小说| 亚洲视频一区| 亚洲乱亚洲高清| 久久久噜噜噜久久人人看| 欧美性色综合| 亚洲国产精品悠悠久久琪琪| 午夜激情综合网| 一区二区三区四区精品| 久久人人爽国产| 国产精品网站在线播放| 亚洲巨乳在线| 亚洲国产一区二区三区高清| 欧美在线你懂的| 国产精品h在线观看| 亚洲国产一区在线观看| 欧美影院视频| 欧美一区二区黄| 国产精品vip| 亚洲毛片一区| 亚洲精品久久久久久久久久久| 久久精品二区三区| 国产精品美女主播| 洋洋av久久久久久久一区| 亚洲日本久久| 免费观看在线综合色| 国产夜色精品一区二区av| 亚洲视频精选在线| 日韩一区二区电影网| 开心色5月久久精品| 国产综合欧美| 欧美一区三区三区高中清蜜桃| 亚洲欧美日产图| 欧美丝袜第一区| 亚洲精品一区二区三区99| 亚洲欧洲综合另类在线| 久久综合综合久久综合| 国产一区二区中文字幕免费看| 午夜在线视频观看日韩17c| 亚洲一区观看| 欧美日韩在线观看一区二区三区 | 麻豆国产精品va在线观看不卡| 国产日韩成人精品| 亚洲欧美日韩国产精品| 午夜精品亚洲一区二区三区嫩草| 欧美色另类天堂2015| 艳妇臀荡乳欲伦亚洲一区| 99视频在线观看一区三区| 欧美激情综合亚洲一二区| 亚洲国产cao| 亚洲日本一区二区| 欧美精品在线观看播放| 亚洲精品久久嫩草网站秘色| 亚洲裸体俱乐部裸体舞表演av| 欧美顶级少妇做爰| 亚洲片在线资源| 一区二区欧美日韩视频| 欧美日韩在线播放三区| 宅男噜噜噜66国产日韩在线观看| 亚洲一区二区三区久久| 国产精品国产三级国产专区53 | 欧美成人69av| 最新热久久免费视频| 亚洲久久一区| 欧美久久一区| 一本久久a久久免费精品不卡| 亚洲永久免费观看| 国产精品一区一区| 欧美在线你懂的| 免费成人在线观看视频| 亚洲欧洲日夜超级视频| 亚洲视频一二| 国产欧美一区二区色老头 | 免费在线欧美视频| 亚洲精品乱码久久久久久按摩观| 一区二区三区日韩精品视频| 国产精品magnet| 性欧美大战久久久久久久久| 久久亚洲精品一区| 亚洲国产婷婷香蕉久久久久久99| 一区二区三欧美| 国产精品永久免费观看| 亚洲成色最大综合在线| 欧美高清视频在线观看| 99v久久综合狠狠综合久久| 午夜久久美女| 影音欧美亚洲| 亚洲一级在线观看| 国产综合视频| 夜夜嗨av一区二区三区中文字幕 | 国产日韩高清一区二区三区在线| 亚洲成色精品| 欧美日韩中文字幕在线| 午夜一区二区三视频在线观看 | 欧美日韩国产在线观看| 亚洲欧美三级伦理| 欧美大片免费观看| 中文在线不卡| 美女福利精品视频| 中文国产成人精品久久一| 久久综合给合久久狠狠狠97色69| 亚洲裸体在线观看| 久久精品一区二区三区四区 | 亚洲综合大片69999| 精品999成人| 亚洲永久免费| 在线精品一区二区| 亚洲欧美国产va在线影院| 在线观看日韩| 午夜精品福利一区二区蜜股av| 伊人狠狠色j香婷婷综合| 亚洲一区二区精品在线观看| 国内免费精品永久在线视频| 亚洲深爱激情| 亚洲国产精品成人久久综合一区| 亚洲欧美日韩精品久久亚洲区| 亚洲国产成人tv| 久久国产欧美日韩精品| 日韩亚洲视频在线| 猫咪成人在线观看| 午夜国产精品视频| 欧美日韩一区二区三| 久久精品国产久精国产思思| 欧美午夜免费电影| 亚洲人成在线观看网站高清| 国产欧美日韩精品专区| 正在播放亚洲| 亚洲国产精品久久久久久女王| 久久国产欧美精品| 亚洲视频在线观看网站|