99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發新帖

圖形液晶顯示器和單片機接口應用技術(轉發)

圖形液晶顯示器和單片機接口應用技術 

廣州市廣播電視大學番禺分校 吳正民   

摘 要:本文介紹常用的兩種液晶顯示器(不帶漢字庫及自帶漢字庫)的顯示基本原理和使用方法,對比了并行方式和串行方式的優缺點,給出了接口電路圖、串行時序圖和相應的源程序。  

關鍵詞:液晶顯示器;串口;并口;時序;存儲器  

1.引言  

      液晶顯示器(LCD)具有顯示信息豐富、功耗低、體積小、重量輕、超薄等許多其他顯示器無法比擬的優點,近幾年來被廣泛用于單片機控制的智能儀器、儀表和低功耗電子產品中。LCD可分為段位式LCD、字符式LCD和點陣式LCD。其中,段位式LCD和字符式LCD只能用于字符和數字的簡單顯示,不能滿足圖形曲線和漢字顯示的要求;而點陣式LCD不僅可以顯示字符、數字,還可以顯示各種圖形、曲線及漢字,并且可以實現屏幕上下左右滾動、動畫、分區開窗口、反轉、閃爍等功能,用途十分廣泛。本文介紹點陣式液晶顯示器HS12232-1、HS12232-9與單片機的接口及編程的方法,同時給出兩種顯示器常用的字符顯示和漢字顯示程序。 

全部回復(5)
正序查看
倒序查看
2014-05-16 10:48

2.不帶漢字庫的HS12232-1下的漢字顯示  

2.1 顯示原理  

      利用PC上的16×16點陣漢字庫,提取后將點陣文件存入ROM,直接利用PC中漢字內碼作為單片機系統的編碼(不再形成新的漢字編碼)。  

2.2 硬件組成  

      首先要采用點陣圖形液晶顯示器。(例如一行為240點,總列數為128點,可以容納16×16點陣的漢字15個[因為240/16=15],128列可以顯示8行[因為128/16=8]),廣州市千喜科技開發有限公司的HS12232-1內置SED1520驅動控制器的點陣為122×32點,每行7個半漢字,共2行。如果要擴展存儲器,全部國標16×16點陣漢字、8×16點陣的ASCII碼點陣數據及漢字語句編碼數據要使用1片512KB的存儲器來存儲,多出部分可以留作數據存儲器。本文只探討液晶顯示器與單片機的接口部分,擴展存儲器部分略。下面給出HS-12232-1與單片機8031的一種接口,如圖1所示(VDD=+5V)。  

2.3 漢字顯示原理  

      國家標準信息交換用漢字字符集GB 2312-80共收錄了漢字、圖形符號等共7445個,其中漢字6763個,按照漢字使用的頻度分為兩級,其中一級漢字3755個,二級漢字3008個。漢字、圖形符號根據其位置將其分為94個“區”,每個區包含94個漢字字符,每個漢字字符又稱為“位”。其中“區”的序號由01區至94區,“位”的序號也由01位至94位。若以橫向表示“位”號,縱向表示“區” 號,則“區”和“位”構成一個二維坐標。給定一個“區”值和“位”值就可以確定一個惟一的漢字或圖形符號。即4位阿拉伯數字就可以惟一地確定一個漢字或符號。如“北”字的區位碼是“1717”,而京字的區位碼是“3009”。前兩位是“區”號,后兩位是“位”號。其中1至15區是各種圖形符號、制表符和一些主要國家的語言字母,16區至87區是漢字,其中16區至55區是一級漢字,56至87區是二級漢字。  

      UCDOS軟件中的文件HZK16和文件ASC16分別為16×16的國際漢字點陣文件和8×16的ASCII碼點陣文件,HZK16中按漢字區位碼從小到大依次存放國標區位碼表中的所有漢字,每個漢字占用32字節,每個區為94個漢字。而asc16文件中按ascii碼從小到大依次存有8×16的ASCII碼點陣,每個ASCII碼占用16字節。  

      PC的文本文件中,漢字是用機內碼的形式存儲的,每個漢字占2字節,其中第一個字節為機內碼的區碼,漢字機內碼的區碼范圍是從0A1H(十六進制)開始,對應區位碼中區碼的第一區;而機內碼的第二個字節為機內碼的位碼,范圍也是從0A1H(十六進制)開始,對應某區中的第一個位碼。就是說將漢字機內碼減去0A0AH就得到該漢字的區位碼。例如漢字“北”的機內碼是十六進制的“B1B1”,其中前兩位“B1”表示機內碼的區碼,后兩位“B1”表示機內碼的位碼。所以“北”的區位碼為0B1B1H-0A0A0H=1111H,將區碼和位碼分別轉換為十進制,得漢字“北”的區位碼為“1717”。即“北”的點陣位于第17區的第17個字的位置,在文件HZK16中的位置為第32×[(17-1)×94+(17-1)]=48640D以后的32個字節為“北”的顯示點陣。用RF-1800編程器讀入二進制文件hzk16j.bin后利用其編輯功能中的緩沖區編輯查找到BE00 H (48640D是十進制,將其轉變為十六進制后得BE00 H)開始的32個字節:04 80 04 80 04 88 04 98 04 A0 7C C0 04 80 04 80 04 80 04 80 04 80 04 80 1C 82 E4 82 44 7E 00 00(以上全為下十六進制),將其寫在16×16點陣方格紙上,即得圖2。由此可以理解其相互邏輯關系。  

      在單片機系統中,連續取32個字節送到LCD的相應位置,就能正確顯示漢字后的圖形符號。從HS-12232-1使用的SED1520的控制原理得知,字模送顯示前要旋轉90°,例如“逢”的區位碼是3778,在HZK16中的位置為第32*[(37-1)*94+(78-1)]=110752D以后的32個字節:04 44 FF FE 05 40 41 F8 33 10 14 E0 01 18 F6 46 1B F8 10 40 13 F8 10 40 17 FC 10 40 28 46 47 FC , 旋轉90°后上16個字節:82 8A 92 B2 02 A7 92 5E 2A AF 2A 5A 4A 83 82 00,下16個字節;00 80 40 3F 04 90 95 95 95 FF 95 95 95 D0 40 00。

2.4 ASCII碼的顯示原理  

      ASCII碼的顯示與漢字的顯示基本原理相同,在ASC16文件中不存在機內碼的問題,其顯示點陣直接按ASCII碼從小到大依次排列,不過每個ASCII碼在文本文件中只占1個字節并且小于80 H, 每個ASCII碼為8×16點陣,即在ASCII16文件中,每個ASCII碼的點陣也只占16個字節。

0
回復
2014-05-16 10:49
@傾城winnie
2.不帶漢字庫的HS12232-1下的漢字顯示  2.1顯示原理     利用PC上的16×16點陣漢字庫,提取后將點陣文件存入ROM,直接利用PC中漢字內碼作為單片機系統的編碼(不再形成新的漢字編碼)。  2.2硬件組成     首先要采用點陣圖形液晶顯示器。(例如一行為240點,總列數為128點,可以容納16×16點陣的漢字15個[因為240/16=15],128列可以顯示8行[因為128/16=8]),廣州市千喜科技開發有限公司的HS12232-1內置SED1520驅動控制器的點陣為122×32點,每行7個半漢字,共2行。如果要擴展存儲器,全部國標16×16點陣漢字、8×16點陣的ASCII碼點陣數據及漢字語句編碼數據要使用1片512KB的存儲器來存儲,多出部分可以留作數據存儲器。本文只探討液晶顯示器與單片機的接口部分,擴展存儲器部分略。下面給出HS-12232-1與單片機8031的一種接口,如圖1所示(VDD=+5V)。  2.3漢字顯示原理      國家標準信息交換用漢字字符集GB2312-80共收錄了漢字、圖形符號等共7445個,其中漢字6763個,按照漢字使用的頻度分為兩級,其中一級漢字3755個,二級漢字3008個。漢字、圖形符號根據其位置將其分為94個“區”,每個區包含94個漢字字符,每個漢字字符又稱為“位”。其中“區”的序號由01區至94區,“位”的序號也由01位至94位。若以橫向表示“位”號,縱向表示“區”號,則“區”和“位”構成一個二維坐標。給定一個“區”值和“位”值就可以確定一個惟一的漢字或圖形符號。即4位阿拉伯數字就可以惟一地確定一個漢字或符號。如“北”字的區位碼是“1717”,而京字的區位碼是“3009”。前兩位是“區”號,后兩位是“位”號。其中1至15區是各種圖形符號、制表符和一些主要國家的語言字母,16區至87區是漢字,其中16區至55區是一級漢字,56至87區是二級漢字。     UCDOS軟件中的文件HZK16和文件ASC16分別為16×16的國際漢字點陣文件和8×16的ASCII碼點陣文件,HZK16中按漢字區位碼從小到大依次存放國標區位碼表中的所有漢字,每個漢字占用32字節,每個區為94個漢字。而asc16文件中按ascii碼從小到大依次存有8×16的ASCII碼點陣,每個ASCII碼占用16字節。      PC的文本文件中,漢字是用機內碼的形式存儲的,每個漢字占2字節,其中第一個字節為機內碼的區碼,漢字機內碼的區碼范圍是從0A1H(十六進制)開始,對應區位碼中區碼的第一區;而機內碼的第二個字節為機內碼的位碼,范圍也是從0A1H(十六進制)開始,對應某區中的第一個位碼。就是說將漢字機內碼減去0A0AH就得到該漢字的區位碼。例如漢字“北”的機內碼是十六進制的“B1B1”,其中前兩位“B1”表示機內碼的區碼,后兩位“B1”表示機內碼的位碼。所以“北”的區位碼為0B1B1H-0A0A0H=1111H,將區碼和位碼分別轉換為十進制,得漢字“北”的區位碼為“1717”。即“北”的點陣位于第17區的第17個字的位置,在文件HZK16中的位置為第32×[(17-1)×94+(17-1)]=48640D以后的32個字節為“北”的顯示點陣。用RF-1800編程器讀入二進制文件hzk16j.bin后利用其編輯功能中的緩沖區編輯查找到BE00H(48640D是十進制,將其轉變為十六進制后得BE00H)開始的32個字節:048004800488049804A07CC00480048004800480048004801C82E482447E0000(以上全為下十六進制),將其寫在16×16點陣方格紙上,即得圖2。由此可以理解其相互邏輯關系。     在單片機系統中,連續取32個字節送到LCD的相應位置,就能正確顯示漢字后的圖形符號。從HS-12232-1使用的SED1520的控制原理得知,字模送顯示前要旋轉90°,例如“逢”的區位碼是3778,在HZK16中的位置為第32*[(37-1)*94+(78-1)]=110752D以后的32個字節:0444FFFE054041F8331014E00118F6461BF8104013F8104017FC1040284647FC,旋轉90°后上16個字節:828A92B202A7925E2AAF2A5A4A838200,下16個字節;0080403F0490959595FF959595D04000。2.4ASCII碼的顯示原理     ASCII碼的顯示與漢字的顯示基本原理相同,在ASC16文件中不存在機內碼的問題,其顯示點陣直接按ASCII碼從小到大依次排列,不過每個ASCII碼在文本文件中只占1個字節并且小于80H,每個ASCII碼為8×16點陣,即在ASCII16文件中,每個ASCII碼的點陣也只占16個字節。

3.帶漢字庫的HS12232-9下的漢字顯示  

      廣州市千喜科技開發有限公司陣的HS12232-9內置ST7920A驅動控制器,點陣為122×32點,每行7個半漢字,共2行。內部字型ROM 包括8192個16×16點陣的中文字型和126個16×8點陣的字母符號字型,另外還提供一個64×256點的繪圖區域(GDRAM)及240點的ICON RAM,可以和文字畫面混合顯示。內含的CGRAM有4組可編程的1616點陣的造字功能。與單片機的接口有8位并行、4位并行、2/3線串行。它采用低功率電源消耗,電壓范圍2.7~5.5V,功能齊全,漢字、點陣圖形、ASCII碼、曲線同屏顯示;上下左右移動當前顯示屏幕、清屏、光標顯示、閃爍、睡眠、喚醒、關閉顯示功能齊備,適合許多場合應用。上面使用了并行方式,現在研究串行方式。

3.1 串行時序與硬件接口電路  

      HS12232-9與單片機的串行接口時序如圖3所示,即24個時鐘脈沖傳送一個字節。單片機首先發送數據傳輸起始位5個“1”,HS12232-9收到連續的5個“1”,內部傳輸被重置,同時串行傳輸被同步,緊接著RW位用于決定數據的傳輸方向(讀還是寫),RS用來選擇是內部數據寄存器還是指令寄存器,第8位固定為“0”。收到起始位、RW、RS、“0”組成的第一個字節后,一個字節的數據或指令被分成兩個字節來串行傳送或接收。數據或指令的高4位被放在第二個字節串行數據的高4位,低4位補4個“0”,數據或指令的低4位被放在第三個字節串行數據的高4位,低4位補4個“0”,這樣完成一個字節或數據的傳送。HS12232-9內部沒有發送/接收緩沖區,傳送節奏要注意,否則要丟指令或數據。  

      PIC16C5X單片機與HS12232-9接口電路如圖4所示,只占用RA0、RA1兩根I/O口,或者用16f877的RD6、RD7兩根I/O口,RS(CS)引腳是片選,只有一片時固定接高電平使片選始終有效,SID引腳作數據線,SCLK引腳作時鐘線。單片機通過SID數據線在SCLK同步時鐘線配合下完成數據(指令)傳輸的任務。接口電路十分簡單。

0
回復
2014-05-16 10:50
@傾城winnie
3.帶漢字庫的HS12232-9下的漢字顯示      廣州市千喜科技開發有限公司陣的HS12232-9內置ST7920A驅動控制器,點陣為122×32點,每行7個半漢字,共2行。內部字型ROM包括8192個16×16點陣的中文字型和126個16×8點陣的字母符號字型,另外還提供一個64×256點的繪圖區域(GDRAM)及240點的ICONRAM,可以和文字畫面混合顯示。內含的CGRAM有4組可編程的1616點陣的造字功能。與單片機的接口有8位并行、4位并行、2/3線串行。它采用低功率電源消耗,電壓范圍2.7~5.5V,功能齊全,漢字、點陣圖形、ASCII碼、曲線同屏顯示;上下左右移動當前顯示屏幕、清屏、光標顯示、閃爍、睡眠、喚醒、關閉顯示功能齊備,適合許多場合應用。上面使用了并行方式,現在研究串行方式。3.1串行時序與硬件接口電路     HS12232-9與單片機的串行接口時序如圖3所示,即24個時鐘脈沖傳送一個字節。單片機首先發送數據傳輸起始位5個“1”,HS12232-9收到連續的5個“1”,內部傳輸被重置,同時串行傳輸被同步,緊接著RW位用于決定數據的傳輸方向(讀還是寫),RS用來選擇是內部數據寄存器還是指令寄存器,第8位固定為“0”。收到起始位、RW、RS、“0”組成的第一個字節后,一個字節的數據或指令被分成兩個字節來串行傳送或接收。數據或指令的高4位被放在第二個字節串行數據的高4位,低4位補4個“0”,數據或指令的低4位被放在第三個字節串行數據的高4位,低4位補4個“0”,這樣完成一個字節或數據的傳送。HS12232-9內部沒有發送/接收緩沖區,傳送節奏要注意,否則要丟指令或數據。     PIC16C5X單片機與HS12232-9接口電路如圖4所示,只占用RA0、RA1兩根I/O口,或者用16f877的RD6、RD7兩根I/O口,RS(CS)引腳是片選,只有一片時固定接高電平使片選始終有效,SID引腳作數據線,SCLK引腳作時鐘線。單片機通過SID數據線在SCLK同步時鐘線配合下完成數據(指令)傳輸的任務。接口電路十分簡單。

4.結束語  

      利用自帶字庫的中文液晶圖形點陣模塊串口接口方式的優勢比并口明顯,節省I/O了口,不占用ROM,接口電路簡單,解決了顯示漢字字符數量有限的瓶頸問題和小體積非總線結構單片機的漢字顯示問題。筆者相信今后其使用率將逐步提高,對照本文的串并口兩種方式,希望對廣大同行在使用液晶圖形點陣模塊時有所啟發和幫助。

0
回復
2014-05-16 19:59
@傾城winnie
4.結束語     利用自帶字庫的中文液晶圖形點陣模塊串口接口方式的優勢比并口明顯,節省I/O了口,不占用ROM,接口電路簡單,解決了顯示漢字字符數量有限的瓶頸問題和小體積非總線結構單片機的漢字顯示問題。筆者相信今后其使用率將逐步提高,對照本文的串并口兩種方式,希望對廣大同行在使用液晶圖形點陣模塊時有所啟發和幫助。

最好是有詳細的資料就好了!

0
回復
2014-05-19 13:48
學習學習
0
回復
主站蜘蛛池模板: 久久爱涩涩www | 日韩欧美资源 | 欧美在线看片a免费观看 | 亚洲三级黄色片 | 日韩视频一区二区三区在线观看 | 92精品国产自产在线观看481页 | 国产精品国产三级国AV | 国产精品无码翘臀在线看 | 91区国产 | 天码AV无码一区二区三区四区 | 国产麻豆一区二区三区在线观看 | 亚洲V国产V天堂A无码二区 | 欧美视频在线观看 | 久久久久亚洲AV无码网站 | 性久久久久久久久久久 | 午夜A片免费 | 日韩精品一区二区三区免费观看 | 狠狠干狠狠搞 | 国产黑丝美女av | 亚洲色图狠狠爱 | 欧美亚成人 | 久久不见久久见中文字幕免费 | 亚洲国产一级毛片 | 国产精品久久久爽爽爽麻豆色哟哟 | 日韩人妻无码AV一区二区三区 | 国产一区二区免费在线观看 | 在线观看免费视频一区 | 久久精品国产成人精品 | 性高潮久久久久 | 国内外精品激情刺激在线 | 在线视频免费观看www | 精品久久久久久久久久香蕉 | 亚洲成AV人片天堂网久久 | www.狠狠 | 国产女教师一爽a片 | 欧美亚洲另类在线观看 | 国产精品国产三级国产普通话三级 | 亚州av不卡中文 | 国产日韩中文字幕在线 | 色老头av亚洲一区二区男男 | 99热这里只有精品最新地址获取 |