2018科協硬體方向培訓 顯示屏部分

2021-08-18 02:07:59 字數 2766 閱讀 4077

液晶顯示器(lcd)的主要原理是以電流刺激液晶分子產生點,線,面並配合背部燈管構成畫面。

各種型號的液晶通常按照顯示字元的行數或液晶點陣的行,列數來命名。比如:1602的意思是每行顯示16個字元,一共可以顯示兩行:類似的命名還有0801,1601等,這類液晶通常都是字元型液晶,而像12864液晶的意思液晶由128列,64行組成,即共有128*64個點來顯示各種圖形,這類液晶是圖形型液晶

液晶的體積小,功耗低,顯示操作簡單,但是其使用的溫度範圍很窄,通用型液晶正常工作溫度0~+55℃。

本次培訓以1602為例簡單介紹lcd的使用,本次培訓用的1602液晶為5v電壓驅動,帶背光,可顯示兩行,每行16個字元內建含128個字元的ascii字符集字型檔,只有並行介面,無序列介面。

顯示容量:16×2個字元

晶元工作電壓:4.5—5.5v

工作電流:2.0ma(5.0v)

模組最佳工作電壓:5.0v

字元尺寸:2.95×4.35(w×h)mm

1.讀狀態:輸入:rs=l,rw=h,e=h

輸出:d0~d7=狀態字

2.寫指令:輸入:rs=l,rw=l,d0~d7=指令碼,e=高脈衝

輸出:無

3.讀資料:輸入:rs=h,rw=h,e=h

輸出:d0~d7=資料

4.寫資料:輸入:rs=w,rw=l,d0~d7=資料,e=高脈衝

輸出:無

控制器內部ram緩衝區,對應關係如圖所示:

當我們在00~0f,40~4f位址中的任一處寫入顯示資料時,液晶可以顯示出來,當在其他位址寫入資料時,必須通過移屏等指令操作將他們移入可顯示區域,方能正常顯示。

比較細心可以發現在1602的基本操作時介紹,輸出d0~d7=狀態字。

一般d0~d6都指當前位址指標的數值

而d7則是讀寫操作使能,1指禁止,0指允許。

注意:原則上每次對控制器進行讀寫操作之前,都必須進行讀寫檢測,俗稱判忙,確保d7為0。但實際上,由於51微控制器的操作速度慢於液晶控制器的反應速度,因此可以進行簡單短暫延時即可。

一般讀寫操作檢測函式(判忙函式):

bit lcd1602_check_busy(void)
1602的操作時序中寫指令,主要就是選用這些指令碼。

除此之外還有資料指標設定:80h+位址碼(0~27h,40~67h)

還有很多豐富的指令碼。

(1)液晶顯示模式的設定

(2)字元顯示位置的指定

(3)待顯示字元的字模**

因為1602內部cgram自帶128個字元,我們顯示需要的字元只用直接寫入即可。然而要讓lcd1602顯示自定義字元,就得用到cgram指令,設定字型檔cgram位址命令碼是0100 0000. 1602能儲存8個自定義字元的首位址分別是:0x40,0x48,0x50,0x60,0x68,0x70,0x78

以0x40為例,它的儲存空間如圖:

我們一般用5*7點陣,但1602也可以調成5*8點陣顯示模式,意思是用五列八行其餘置0。然後顯示如「上」字:

1602的使用介紹到此,當然1602只是lcd顯示屏中很簡單乙個例子,它最對只能顯示簡單漢字,所以我們經常會有其他用處更廣的lcd屏代替例如12864。希望大家多多學習,本次培訓總結完畢。

XDU1160 科協的數字遊戲I

description 科協裡最近很流行數字遊戲。某人命名了一種不降數,這種數字必須滿足從左到右各位數字成大於等於的關係,如123,446。現在大家決定玩乙個遊戲,指定乙個整數閉區間 a,b 問這個區間內有多少個不降數。input 題目有多組測試資料。每組只含2個數字a,b 1 a,b 2 31 o...

XDOJ1198 科協訓練2 冪運算

description 問題很簡單,輸入x,y,希望你給出x y,如果答案超過10 9就輸出 error 詳見樣例。input 多組資料,以0,0結束。每組資料報含一行,兩個整數 x,y 以空格分開。output 每組資料一行,如果答案大於10 9輸出 error 否則輸出 answer z z代表...

2018刑偵科推理試題

最近很火的刑偵推理題,我也試了一下,答案是bcaca cdaba 如果直接推理很難,還要不斷試錯。既然這樣不如借助計算機暴力出結果 因為只有4 9 262144種情況,可以無腦秒出 具體做法是 首先生成所有可能的答案 遞迴生成解答樹 篩選掉不符合10個題目要求的 剪枝,剪枝順序還可以優化 剩下唯一乙...