freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科-基于linux的嵌入式lcd驅(qū)動(dòng)程序-資料下載頁(yè)

2025-11-27 03:54本頁(yè)面

【導(dǎo)讀】于LCD顯示領(lǐng)域的主流位置。又以其高清晰度、大容量和全彩色的顯示效果,成為液晶甚。至整個(gè)平板顯示技術(shù)領(lǐng)域的主導(dǎo)技術(shù)。嵌入式系統(tǒng)是應(yīng)用于特定功能的專(zhuān)用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)以實(shí)際的應(yīng)用為中心,而且在軟硬件上具有靈活裁剪的特性,并且具有高可靠、體積小、低成本、低功耗等優(yōu)點(diǎn)。度上改變了人們工作、生活和娛樂(lè)的方式。開(kāi)發(fā)主機(jī)基本服務(wù)及程序的安裝、配置與使用????????的手機(jī),電話(huà),PDA,數(shù)碼相機(jī),家用電器,嵌入式系統(tǒng)得到越來(lái)越廣泛的應(yīng)用。簡(jiǎn)單的功能,交互性比較低。逐漸增多,因此,嵌入式系統(tǒng)也具有了更強(qiáng)的交互性。為了更加便利的對(duì)系統(tǒng)進(jìn)行個(gè)性化

  

【正文】 } 27 // 獲取可變信息 if (ioctl(fb_con, FBIOGET_VSCREENINFO, amp。vinfo) 0) { } // 調(diào)色板操作 srand(time(0))。 // 配置新的調(diào)色板 fb_MakePalette(amp。new_map)。 // 應(yīng)用一個(gè)新的幀緩沖調(diào)色板 if ( == FB_VISUAL_DIRECTCOLOR || == 8) { } // 配置顏色 switch () { case 8: fb_pixel_size = 1。 break。 case 16: fb_pixel_size = 2。 = 11。 = 5。 = 5。 = 6。 = 0。 = 5。 break。 default: fprintf(stderr, Current color depth is NOT surpported.\n)。 fb_pixel_size = 1。 break。 } 28 // 應(yīng)用一個(gè)新的設(shè)置 if (ioctl(fb_con, FBIOPUT_VSCREENINFO, amp。vinfo) 0) { } // 獲取屏幕信息 if (ioctl(fb_con, FBIOGET_VSCREENINFO, amp。vinfo) 0) { } fb_width = 。 fb_height = 。 fb_bpp = 。 fb_line_size = 。 fb_buffer_size = 。 // 將幀緩沖映射到內(nèi)存空間 frame_base = mmap(NULL, BUFFER_SIZE, PROT_READ|PROT_WRITE, MAP_SHARED, fb_con, 0)。 } 設(shè)備釋放函數(shù) void fb_Release(void) { fb_AssertDevice(fb_con)。 munmap(frame_base, BUFFER_SIZE)。 // 釋放內(nèi)存 if(fb_con) //關(guān)閉幀緩沖設(shè)備 close(fb_con)。 tcsetattr(0, TCSANOW, amp。term)。 return。 } 編譯驅(qū)動(dòng)模塊 Makefile 文件編寫(xiě) ,主要代碼如下: 29 KERNELDIR = /work/ PWD := $(shell pwd) INSTALLDIR = /work/lcd CROSS_COMPILE = armlinux CC = $(CROSS_COMPILE)gcc objm := modules: $(MAKE) C $(KERNELDIR) M=$(PWD) modules modules_install: $(INSTALLDIR) clean: rm rf *.o *~ core .depend .*.cmd *.ko *. .tmp_versions .PHONY: modules modules_install clean 30 六 測(cè)試 測(cè)試程序調(diào)用驅(qū)動(dòng)程序中畫(huà)點(diǎn),線(xiàn),圖形等函數(shù), 打印 點(diǎn),線(xiàn),功能。結(jié)果如下: 圖 61 打印點(diǎn) 圖 62 水平線(xiàn) 31 圖 63 水平線(xiàn)與垂直線(xiàn) 圖 64 矩形框 32 七 遇到的問(wèn)題與解決的方法 在這次畢業(yè)設(shè)計(jì)中,遇到了一些困難。首先,就是對(duì)于硬件知識(shí)的缺乏和具體硬件參數(shù)的不了解,后來(lái)通過(guò)查閱不同的硬件資料和用戶(hù)手冊(cè),以及網(wǎng)上的優(yōu)秀文章,增加對(duì)硬件知識(shí)的了解。其次,就是在具體的代碼實(shí)現(xiàn)過(guò)程中,對(duì)具體的程序?qū)崿F(xiàn)流程并不是十分的詳細(xì),需要參考其他一些資料和其他驅(qū)動(dòng)程序的實(shí)例,特別是對(duì)于幀緩沖設(shè)備的操作部分,了解比較少,實(shí)現(xiàn)起來(lái)比較困難,期間,參考了 S3C2440 上的 LCD 驅(qū)動(dòng)的程序流程和實(shí)現(xiàn)方式。最后就是在論文撰寫(xiě)方面,猶豫是初次寫(xiě)大型的論文,對(duì)于整體的把握不 太清楚,結(jié)構(gòu)不是很?chē)?yán)謹(jǐn),經(jīng)過(guò)多次修改,才使得論文整體更加流暢。 33 八 收獲和體會(huì) 通過(guò)本次畢業(yè)設(shè)計(jì),我學(xué)到了很多以前沒(méi)有接觸過(guò)的知識(shí)。初步掌握了嵌入式 LCD 驅(qū)動(dòng)的設(shè)計(jì)過(guò)程,所設(shè)計(jì)的項(xiàng)目基本完成了需求分析中要求的功能,編寫(xiě)出了一個(gè)可以正常運(yùn)行的驅(qū)動(dòng)程序,達(dá)到了該項(xiàng)目的設(shè)計(jì)目的。 但是由于缺乏實(shí)際開(kāi)發(fā)經(jīng)驗(yàn),該程序還存在一定漏洞和不足之處。軟件中出錯(cuò)處理、優(yōu)化等問(wèn)題做的還不夠完善,希望在后續(xù)學(xué)習(xí)和實(shí)際工作中積累經(jīng)驗(yàn),將該程序加以完善和改進(jìn)。 34 謝 辭 在本次畢業(yè)設(shè)計(jì)的實(shí)施過(guò)程中,得到了河北大學(xué) 數(shù)計(jì)學(xué)院王龍江老師的大力支持和幫助,從最開(kāi)始的選題,開(kāi)題報(bào)告的編寫(xiě),以及整個(gè)畢業(yè)設(shè)計(jì)期間不間斷的指導(dǎo),幫助我把握好整個(gè)設(shè)計(jì)的整體方向和全局架構(gòu)。不僅如此,王老師作為嵌入式領(lǐng)域的高級(jí)工程師,還向我們介紹了一些嵌入式研發(fā)的前景和先進(jìn)技術(shù),讓我們開(kāi)闊思路,將眼光放得更高更遠(yuǎn)。 同時(shí),還要感謝北京中程在線(xiàn)科技有限公司的奚老師,本設(shè)計(jì)中后期工作都是在奚老師的幫助下完成的。此外,還要感謝和我一起學(xué)習(xí)的其他同學(xué),大家在一起學(xué)習(xí)和生活期間,在各個(gè)方面都給予了我很多的幫助,也讓我從這些人身上學(xué)習(xí)到了很多很多。感謝所有幫助和指 導(dǎo)過(guò)我的老師和同學(xué)。 35 參考文獻(xiàn) [1] 博創(chuàng)科技 著, UPTECHPXA270ALINUX 實(shí)驗(yàn)指導(dǎo)書(shū) .北京: 北京博創(chuàng)興業(yè)科技有限公司 , 2021 [2] 蔡春波著, 基于 ARM 的液晶顯示模塊測(cè)試系統(tǒng)硬件設(shè)計(jì) ,成都:電子科技大學(xué), 2021 [3] 楊水清 張劍 施云飛著, ARM 嵌入式 linux系統(tǒng)開(kāi)發(fā)技術(shù)詳解 .北京:電子工業(yè)出版社 , 2021 [4] 宋寶華著, LINUX 設(shè)備驅(qū)動(dòng)開(kāi)發(fā)詳解 .北京:人民郵電出版社 , 2021 [5] Karim yagbmour 著, O39。Reilly taiwan 公司譯 .LINUX 設(shè)備驅(qū)動(dòng)開(kāi)發(fā) .北京:中國(guó)電力出版社 , 2021 [6] 冼進(jìn)著,嵌入式 Linux應(yīng)用開(kāi)發(fā)詳解 .北京:電子工業(yè)出版社 , 2021 [7] 孫俊喜著, LCD 驅(qū)動(dòng)電路、驅(qū)動(dòng)程序設(shè)計(jì)及典型應(yīng)用 .北京:人民郵電出版社 , 2021 [8] 李宏 張家田著,液晶顯示器件應(yīng)用技術(shù) .北京:機(jī)械工業(yè)出版社 , 2021 [9] Nell Matthew Richard Stones 著,陳健 宋健建譯, LINUX程序設(shè)計(jì) .北京:人民郵電出版社 , 2021 [10] (美 )史蒂文斯 拉戈著 ,尤晉元 張亞英譯 .UNIX 環(huán)境高級(jí) 編程 .北京:中國(guó)電力出版社 ,2021 [11] 博創(chuàng)科技 著, PXA270 : 北京博創(chuàng)興業(yè)科技有限公司 , 2021 [12] 博創(chuàng)科技 著, pxa270 開(kāi)發(fā)手冊(cè) .北京: 北京博創(chuàng)興業(yè)科技有限公司 , 2021 36 附 錄 主要代碼清單: ifndef __FB_LCD_C define __FB_LCD_C include include include include include sys/ include include include sys/ include include linux/ include linux/ include sys/ include sys/ include sys/ include include sys/ include sys/ include int current_vt。 struct termios term。 //終端 // Framebuffer device routine int fb_con = 0。 void * frame_base = 0。 /* 幀緩沖基地址 */ // 初始化 // 失敗返回 1, 成功返回 0. int fb_Init(void) { struct fb_fix_screeninfo finfo。 /*不變信息 */ struct fb_var_screeninfo vinfo。 /*可變信息 */ struct termios current。 /*termios 函數(shù)族提供了一個(gè)常規(guī)的終端接口,用于控制非同步通信端口。 */ unsigned short red[256], green[256], blue[256]。 struct fb_cmap new_map = {0, 256, red, green, blue, NULL}。 /* 新的系統(tǒng)調(diào)色板 */ 37 tcgetattr(0, amp。term)。 /*獲取終端相關(guān)參數(shù) */ current = term。 amp。= ~ICANON。 /*.c_flag 本地模式 */ amp。= ~ECHO。 [VMIN] = 1。 /*.c_cc[VMIN]非 canonical模式讀的最小字符 */ [VTIME] = 0。 /*.c_cc[VMIN]非 canonical 模式讀時(shí)的延時(shí),以十分之一秒為單位 */ tcsetattr(0, TCSANOW, amp。current)。 // 打開(kāi)終端 current_vt = open(/dev/tty, O_RDWR)。 ioctl(current_vt, KDSETMODE, KD_GRAPHICS)。 // 打開(kāi)幀緩沖設(shè)備 fb_con = open(/dev/fb0, O_RDWR, 0)。 if (fb_con 0) { printf(Can39。t open /dev/fb0.\n)。 return 1。 } // 獲取不變信息 if (ioctl(fb_con, FBIOGET_FSCREENINFO, amp。finfo) 0) { printf(Can39。t get FSCREENINFO.\n)。 close(fb_con)。 return 1。 } //獲取可變信息 if (ioctl(fb_con, FBIOGET_VSCREENINFO, amp。vinfo) 0) { printf(Can39。t get VSCREENINFO.\n)。 close(fb_con)。 return 1。 } // 調(diào)色板操作 srand(time(0))。 // 配置新的調(diào)色板 fb_MakePalette(amp。new_map)。 // 應(yīng)用一個(gè)新的幀緩沖調(diào)色板 if ( == FB_VISUAL_DIRECTCOLOR || == 8) 38 { if (ioctl(fb_con, FBIOPUTCMAP, amp。new_map) 0) { printf(Error putting Colormap.\n)。 return 1。 } } // 配置幀緩沖設(shè)備顏色 switch () { case 8: fb_pixel_size = 1。 break。 case 16: fb_pixel_size = 2。 = 11。 = 5。 = 5。 = 6。 = 0。 = 5。 break。 default: fprintf(stderr, Current color depth is NOT surpported.\n)。 fb_pixel_size = 1。 break。 } // 應(yīng)用一個(gè) 新的設(shè)置 if (ioctl(fb_con, FBIOPUT_VSCREENINFO, amp。vinfo) 0) { fprintf(stderr, Couldn39。t set ideal mode at FBIOPUT_VSCREENINFO)。 return 1。 } // 獲取屏幕信息 if (ioctl(fb_con, FBIOGET_VSCREENINFO, amp。vinfo) 0) { fprintf(stderr, ioctl FBIOGET_VSCREENINFO)。 return 1。 } fb_width = 。 fb_he
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1