LCD驅動程式的編寫

2022-02-23 05:49:38 字數 1049 閱讀 9630

這兩天我花了很多時間研究液晶螢幕,用的黑金開發板,fpga 晶元是 cyclone iv  ep4ce15f17c8 。主要包括硬體開發:quartus 11sp1下 sopc 新增nios processor ,新增pio引腳。有兩次編譯過程,生成nios 和綜合。

我的電腦是雙核的,1.83主頻,2g 記憶體。完成這兩次編譯加上修改引腳要花掉近半小時。初學嘛,認了。

nios用來模擬時序是我學習的重點。一般液晶螢幕包括一塊玻璃和乙個驅動器,如果你是買的現成的液晶模組,一定要把

驅動器的引腳怎麼配置的找出來,電路圖上一般只畫出了介面,因為驅動器一般用fpc(軟線)連線,可能是另外乙個廠家生產,

配上pcb的又有人加工了,他可能知道軟線是怎麼連線的,但他不說。我就因為這個苦惱啊,比如今天用的具體是什麼型別驅動器

我從液晶模組的pcb 原理圖上沒找出來,提供的demo直接利用通用的,通過讀取deviceid 來判讀是什麼型別。好在我記得以前用

stm32 實驗的時候,得知是5408型別,不是一般的9320。

一般來說,液晶驅動器提供三大類介面,序列、80並行、68並行。並行的最容易編寫驅動程式,但是要用的線很多,我從fpga

的34個擴充套件引腳上用了16+6=22個引腳,紅線黑線一大把,看上去挺壯觀的。我喜歡序列的,五六根線就夠用了,用的方式我取

了個形象的名字「半spi",因為是軟體模擬的,不是標準的所說的上公升沿主裝置發、接著的下降沿供從裝置接收使用。我要做的就是在

時鐘訊號clk上公升沿到來之前,已經將資料線sdi的資料改變了。

幾個小時前我除錯80並行方式的5408驅動器,怎麼初始化都不成功,奇怪的是有一次莫名其妙的好的,讀出了deviceid=5408,

我當時很興奮,趕緊把**改緊湊,可在再執行,讀出來的deviceid=fffe,我這人還真不信邪,不停除錯,不知不覺,乙個多小時了。

哎,放棄吧。突然想起昨天剛申請的cnblogs 部落格,嘗試寫寫部落格吧。就說說我的經驗吧,除錯程式時,一旦成功請儲存副部,有些東西

沒有理由可講,可能就是一時運氣,但是運氣不會難再來,這點對時序模擬不甚熟稔的我來說很重要。

第一次寫部落格,有表達法不合理的包涵哦!

lcd驅動程式

ok6410lcd測試程式 1.在螢幕上分別顯示紅綠藍三個長方形 自定義結構體用來在使用者空間裡管理幀緩衝的資訊 typedef struct fd dev fb dev t 實現緩衝裝置的開啟和關閉操作的介面 int fb open fb dev t fbd,char fbn 獲取lcd的可變引數...

LCD驅動程式移植

對lcd的操作可以像串列埠一樣,通過終端裝置層的封裝 dev tty 裝置 來輸出內容,也可以通過frame buffer dev fb 裝置 直接在視訊記憶體上 繪製 影象。tty 終端裝置 和frame buffer驅動程式的框架 下面根據每層的檔案講解一下上圖 1 顯示驅動程式 2 鍵盤驅動程...

LCD裝置驅動程式

對螢幕進行抓屏 cp dev fb0 myfile.png 幀緩衝裝置的主裝置號29,次裝置號0 31,也就是dev fb0 dev fb31 填充乙個fbinfo結構。用register framebuffer fbinfo 將fbinfo結構註冊到核心,對於fbinfo結構,最基本的是fs op...