基于ARM的嵌入式電子相框系統(tǒng)_第1頁
基于ARM的嵌入式電子相框系統(tǒng)_第2頁
基于ARM的嵌入式電子相框系統(tǒng)_第3頁
基于ARM的嵌入式電子相框系統(tǒng)_第4頁
基于ARM的嵌入式電子相框系統(tǒng)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、華南師范大學嵌入式系統(tǒng)課程設計報告 設計題目:基于ARM的嵌入式的電子相框系統(tǒng)專業(yè)班級 電路與系統(tǒng) 學 院 物理與電信工程學院 指導教師 熊愛民 姓 名 學 號 2015年 12 月25日 基于ARM的嵌入式電子相框系統(tǒng)摘要:本設計采用搭載飛思卡爾的MCIMX28x 芯片的Esayarm-i.max283A開發(fā)板作為目標機,使用安裝Windows 7的PC機作為宿主機,并在宿主機Windows平臺上安裝了一個虛擬機軟件,虛擬機里安裝的是Ubuntu作為開發(fā)環(huán)境。并在目標機上移植了u-boot,linux內核,根文件系統(tǒng),構成一個嵌入式linux操作系統(tǒng),該系統(tǒng)的最大特點就是,可以根據(jù)應用需求對

2、軟硬件進行裁剪,滿足應用系統(tǒng)的功能、可靠性、成本、體積等要求,主要用途就是對軟硬件資源的調度與分配。   在搭載了linux嵌入式系統(tǒng)的目標開發(fā)板上,本文設計了一個界面應用程序,該應用程序主要功能為:用戶通過對界面的操作就可對數(shù)碼相框中圖片的瀏覽與管理,以及進行幻燈片播放功能,實現(xiàn)個人圖片的掌上管理。關鍵詞:linux嵌入式系統(tǒng);周立功開發(fā)板;虛擬機環(huán)境;移植。 目 錄1. 61設計內容71.1 設計目的71.2 設計意義71.3電子相框的設計任務和要求82. 周立功開發(fā)板的介紹92.1Esayarm-i.max283A開發(fā)板92.1.1 Freescale 的MCIMX2

3、8x 處理器102.1.2SDRAM存儲系統(tǒng)102.1.3 FLASH 存儲系統(tǒng)112.2基于Esayarm-i.max283A的開發(fā)環(huán)境的搭建122.2.1搭建嵌入式交叉開發(fā)環(huán)境123 Linux 內核143.1 Linux系統(tǒng)簡介143.2 Linux-2.6.29內核移植到Esayarm-i.max283A174 電子相框的功能模塊以及程序框架174.1輸入程序框架解析174.2顯示界面的功能總框架184.3電子相框的主流程圖204.4程序模塊介紹214.4.1頁面規(guī)劃模塊214.4.2調試模塊224.4.3圖片渲染解析模塊224.4.4字符解碼模塊234.4.5顯示模塊245電子相框的

4、相關驅動移植245.1 關于LCD驅動的配置245.2 關于觸摸屏驅動的配置256電子相框的效果演示及功能測試256.1 電子相框性能分析方法簡述256.2 電子相框的效果演示以及功能描述267設計體會268參考文獻271設計內容1.1設計目的1、注重培養(yǎng)綜合運用所學知識、獨立分析和解決實際問題的能力,培養(yǎng)創(chuàng)新意識和創(chuàng)新能力,并獲得科學研究的基礎訓練。2、了解周立功開發(fā)板的硬件環(huán)境和豐富的接口資源,掌握對周立功開發(fā)板進行Linux內核的移植,裁剪,配置和編譯。3、利用周立功開發(fā)板,通過軟硬件設計實現(xiàn)進行一個可以瀏覽與管理圖片功能的電子相框。1.2設計意義嵌入式系統(tǒng)是以應用為中心,以計算機技術為

5、基礎,且軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)1。它一般由以下幾部分組成:嵌入式微處理器、外圍硬件設備、嵌入式操作系統(tǒng)。嵌入式系統(tǒng)必須根據(jù)應用需求對軟硬件進行裁剪,滿足應用系統(tǒng)的功能、可靠性、成本、體積等要求。所以,如果能建立相對通用的軟硬件基礎,然后在其上開發(fā)出適應各種需要的系統(tǒng),是一個比較好的發(fā)展模式。 基于ARM的嵌入式系統(tǒng)有諸多優(yōu)點是傳統(tǒng)電子系統(tǒng)無法比擬的,利用嵌入式開發(fā)本設計可以開發(fā)出具有良好的人機交互界面的實時系統(tǒng),同時嵌入式系統(tǒng)最大的優(yōu)點就是軟硬件可裁剪,依據(jù)自己系統(tǒng)的需要可以進行靈活的軟硬件設計開發(fā),而且基于ARM的嵌入式系統(tǒng)開發(fā)成

6、本低,而且系統(tǒng)穩(wěn)定性高,功耗低,體積小,并且能夠應用于多種應用場合2。另外,作為一個消費類電子產品,電子相框的設計必須考慮以下因素:1、用戶接口友好、操作方便。2、系統(tǒng)兼容性強。數(shù)碼相框應能識別和處理當前數(shù)碼相機主要的圖像格式,能訪問主流的外部半導體存儲卡。3、穩(wěn)定可靠。作為數(shù)碼相機的一種附屬產品,電子相框不僅具有傳統(tǒng)相框的特點,而且可以直接從數(shù)碼相機中選擇心儀的照片,定時更新照片。電子相框可以擺放在家居顯眼之處,成為現(xiàn)代家庭一道靚麗的風景線。1.3電子相框的設計任務和要求 本設計的電子相框系統(tǒng),實現(xiàn)了圖片的查看,圖片輪播功能的系統(tǒng)設計,該電子相框系統(tǒng)依靠ARM處理器和嵌入式Linux操作系統(tǒng)

7、作為系統(tǒng)平臺,同時結合界面應用程序,通過對觸摸屏的操作,在LCD屏幕上顯示圖譜按,實現(xiàn)了數(shù)碼相框系統(tǒng)與外界的信息交流,從而在目標板上實現(xiàn)電子相框的基本功能。如圖1.1所示。 圖1.1 電子相框系統(tǒng)1、周立功開發(fā)板的介紹2.1 Esayarm-i.max283A開發(fā)板Esayarm-i.max283A是一款真正低價實用的ARM9開發(fā)板,EasyARM-i.MX283A 采用Freescale 的MCIMX28x 處理器(基于ARM926EJ-S 內核),具有豐富的硬件資源,提供了完善的Linux 軟件支持包、開發(fā)工具和豐富的實用范例,大大降低了Linux 學習門檻和開發(fā)難度3,可以幫助用戶在短期

8、內實現(xiàn)產品功能驗證和開發(fā)。EasyARM -i.MX283A 的基本接口分布如圖2.1 所示。 圖 2.1 EasyARM -i.MX283A開發(fā)板其板載64M SDRAM、128MB SLC NAND FLASH和2M Nor Flash,足夠本系統(tǒng)使用。該開發(fā)板接口十分豐富,含:l 1個主USB接口,1個從USB接口l 1個100M以太網(wǎng)RJ-45口(采用DM9000網(wǎng)卡)l 1個SD/MMC卡存儲接口,3個串行口l 3個串口,COM0為RS232 DB9接口,COM2和COM3為2.0mm間距l(xiāng) 標轉JTAG接口(2.0mm間距)l 1路立體聲音頻輸出接口(標準3.5mm接口),1路麥克

9、風接口l 引出CPU內部全部攝像頭信號引腳。2.1.1 Freescale 的MCIMX28x 處理器MCIMX28x是飛思卡爾公司的一款基于ARM926EJ-S 內核的高性能、低功耗、高集成度的32位微處理器,主頻最高可達454MHz,具有16KB指令Cache和16KB數(shù)據(jù)Cache,主要特征如下:l 1.2V內核供電,1.8V/2.5V/3.3V存儲器供電,3.3V外部I/O供電l LCD控制器(最大支持4K色STN和256K色TFT),提供1通道LCD專用DMAl 4通道DMA,并有外部請求引腳l 3通道UARTl 2通道SPIl 1通道IIC-BUS接口(多主支持)l 兼容SD主接口

10、協(xié)議1.0板和MMC卡2.11兼容版l 2端USB主機/1端口USB設備l 4通道PWM定時器和1通道內部定時器/看門狗定時器l 8通道10bitADC和觸摸屏接口l 具有日歷功能的RTCl 130通用I/O口和24通道外部中斷源l 具有普通、慢速、空閑和掉電模式l 具有PLL片上時鐘發(fā)生器 2.1.2 SDRAM存儲系統(tǒng)Esayarm-i.max283A 使用了兩片外接的32M bytes 總共 64M bytes 的SDRAM 芯片( 型號為:HY57V561620FTP/MT48LC16M16A2),一般稱之為內存,它們并接在一起形成 32-bit 的總線數(shù)據(jù)寬度,這樣可以增加訪問的速度

11、;因為是并接,故它們都使用了 nGCS6 作為片選,它們的物理起始地址為0x30000000,下面是摘自Esayarm-i.max283A 原理圖中的SDRAM 部分原理圖。圖 2.2 SDRAM存儲系統(tǒng)原理圖2.1.3 FLASH 存儲系統(tǒng)Esayarm-i.max283A 具備兩種Flash,一種是 Nor Flash ,型號為 SST39VF1601(AMD29LV160DB與此引腳兼容) ,大小為2Mbyte;另一種是Nand Flash ,型號為K9F1G08,大小為128M( 舊版本為K9F1208 ,大小為64Mbyte) 。S3C2440 支持這兩種Flash啟動系統(tǒng),通過撥動

12、開關 S2,可以選擇從NOR還是從NAND 啟動系統(tǒng)。 Nand Flash 不具有地址線,它有專門的控制接口與CPU 相連,數(shù)據(jù)總線為8-bit ,但這并不意味著Nand Flash 讀寫數(shù)據(jù)會很慢。大部分的優(yōu)盤或者SD卡等都是Nand Flash 制成的設備4。從下面的原理圖可以看出,Nor Flash 采用了A1-A22總共22條地址總線和16條數(shù)據(jù)總線與CPU 連接,地址是從A1開始的,這意味著它每次最小的讀寫單位是2-byte ,因此根據(jù)原理圖,該設計總共可以兼容支持最大8Mbyte的Nor Flash,實際開發(fā)板上只用了A1-A20條地址線,因為與A21、A22 相連的SST39V

13、1601 的相應引腳是懸空的。圖 2.3 Flash存儲系統(tǒng)原理圖2.2基于Esayarm-i.max283A的開發(fā)環(huán)境的搭建2.2.1搭建嵌入式交叉開發(fā)環(huán)境由于嵌入式系統(tǒng)資源匱乏,一般不能像PC 一樣安裝本地編譯器和調試器,不能在本地編寫、編譯和調試自身運行的程序,而需借助其它系統(tǒng)如PC 來完成這些工作,這樣的系統(tǒng)通常被稱為宿主機。 本設計宿主機主要是使用裝有ubuntu的Linux操作系統(tǒng)的PC機,而目標機就是Esayarm-i.max283A開發(fā)板。組成架構如圖2.6所示。 圖2.6 嵌入式開發(fā)交叉環(huán)境構架 所謂的交叉編譯,就是在宿主機平臺上使用某種特定的交叉編譯器,為某種與宿

14、主機不同平臺的目標系統(tǒng)編譯程序,得到的程序在目標系統(tǒng)上運行而非在宿主機本地運行,本設計使用的交叉編譯器為arm-linux-gnueabi-gcc,具體安裝步驟如下: (1)  解壓交叉編譯工具: 運行命令  tar xjvf gcc-4.4.4-glibc-2.11.1-multilib-1.0.tar.bz2(2)  在完成解壓后,如果不指定交叉編譯器的完整路徑,系統(tǒng)無法調用交叉編譯器,如果不清楚交叉編譯器安裝的目錄,可以看rm-linux-gnueabi-*這些文件到底在哪個目錄。具體全路徑引用的方法為:CC=/opt

15、/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-linux-gnueabi/arm-linux-gnueabi-make cross_COMPILE=$CC ARCH=arm uimage2.2.2 安裝SSH服務器 Ssh是Secure shell的縮寫,是建立在應用層和傳輸層的安全協(xié)議,能夠有效防止遠程管理過程中的信息泄露問題,可以遠程進行文件傳輸,本實驗使用的是windows系統(tǒng)上安裝的Ubuntu的虛擬機,這時就可以將其視為遠程系統(tǒng)。(1) 在虛擬機上安裝ssh服務器,具體的方法是在Linux主機輸入下面命令:Sudo apt-get install

16、openssh-server (2)測試ssh服務器,在虛擬機里,VMware虛擬網(wǎng)卡設置NAT模式的話,Linux系統(tǒng)網(wǎng)卡設置為動態(tài)IP即可;如果虛擬網(wǎng)卡設置為橋接模式,則需要為Linux設置一個與windows系統(tǒng)同一個網(wǎng)段的靜態(tài)IP地址。 也可以在終端使用ifconfig命令進行設置: sudo ifconfig eth0 IP地址,只有知道了Linux主機的IP地址后才能進行ssh連接,如果不能確定IP地址,可以打開終端,用ifconfig命令進行查看和確認。(3) 在Windows系統(tǒng)下下載并安裝一個ssh secure file transfer client軟件,這時就實現(xiàn)了Wi

17、ndows和虛擬機的Ubuntu進行文件傳輸。3 Linux 內核3.1 Linux系統(tǒng)簡介Linux是最受歡迎的自由電腦操作系統(tǒng)內核。它是一個用C語言寫成,符合POSIX標準的類Unix操作系統(tǒng)。Linux最早是由芬蘭黑客 Linus Torvalds為嘗試在英特爾x86架構上提供自由免費的類Unix操作系統(tǒng)而開發(fā)的。該計劃開始于1991年,在計劃的早期有一些Minix 黑客提供了協(xié)助,而今天全球無數(shù)程序員正在為該計劃無償提供幫助。 技術上說Linux是一個內核?!皟群恕敝傅氖且粋€提供硬件抽象層、磁盤及文件系統(tǒng)控制、多任務等功能的系統(tǒng)軟件。一個內核不是

18、一套完整的操作系統(tǒng)。一套基于Linux內核的完整操作系統(tǒng)叫作Linux操作系統(tǒng),或是GNU/Linux。圖3.1 Linux系統(tǒng)架構由上圖可知Linux系統(tǒng)構架是由用戶空間和內核空間兩部分組成,之所以分為兩部分主要是為了實現(xiàn)系統(tǒng)穩(wěn)定性。內核空間和用戶空間是程序執(zhí)行的兩種不同狀態(tài),通過系統(tǒng)調用和硬件中斷能夠實現(xiàn)從用戶空間到內核空間的轉移。Linux內核的主要模塊(或組件)分以下幾個部分:存儲管理、CPU和進程管理、虛擬文件系統(tǒng)、設備管理和驅動、網(wǎng)絡通信,以及系統(tǒng)的初始化(引導)、系統(tǒng)調用等。具體如圖3.2所示:圖3.2 Linux內核架構l 系統(tǒng)調用接口:SCI層為用戶提供了一套標準的系統(tǒng)調用函

19、數(shù)來訪問Linux內核,搭起了用戶空間到內核空間的橋梁。 l 進程管理:主要是實現(xiàn)了進程的創(chuàng)建,進程的停止,并控制進程間的相互通信,進程管理還包括進程如何共享CPU,即進程的調度。 l l 內存管理:主要是實現(xiàn)多個進程安全有序地共享內存。 l l 網(wǎng)絡協(xié)議棧:主要為Linux系統(tǒng)提供了豐富的網(wǎng)絡協(xié)議。 l 虛擬文件系統(tǒng):VFS隱藏了各種文件系統(tǒng)的細節(jié),為文件操作提供統(tǒng)一的接口,如圖3.3所示。 l 設備驅動:Linux內核中很多代碼都在設備驅動中,它們控制特定的硬件設備。圖3.3 虛擬文件系統(tǒng)提供同一文件接口3.2 Linu

20、x-2.6.29內核移植到Esayarm-i.max283A(1) 首先到下載一套沒有經過移植的linux-2.6.29源代碼,并解壓到相關目錄下,進入目錄linux-2.6.29; (2) 對內核根目錄下的Makefile文件進行相應修改,修改CPU類型為arm,編譯工具改為arm-linux-,ARCH ?= arm,CROSS_COMPILE ?=arm-linux-; (3) 修改時鐘頻率: #vi arch/arm/mach-s3c2440/mach-smd

21、k2440.cs3c24xx_init_clocks(12000000); (4) 修改對Nand的分區(qū)信息。要讓內核知道Nand Flash的分區(qū)信息,設置成跟bootloader一致; (5) 添加DM9000網(wǎng)卡驅動和其他設備驅動; (6) 用MCIMX28x的默認配置文件來進行基礎配置然后使用make menuconfig來詳細配置; (7) 編譯內核。4 電子相框的功能模塊以及程序框架 程序由輸入和界面顯示兩大程序塊構成,輸入進程在程序運行時讀取觸摸屏的數(shù)據(jù),主控線程將得到的事件通過s

22、ocket發(fā)出處理器進行處理。顯示進程主要包括 :放大線程、縮小線程、上一幅圖片線程、下一幅圖片線程、當前圖片線程、主控線程。4.1輸入程序框架解析輸入的功能大體可分為模式輸入和圖片操作輸入,然后輸入進程得到觸摸屏數(shù)據(jù),用socket讀取內存的DMA進行通訊。模式輸入程序是要實現(xiàn)電子相框的智能化,以及能對電子相框系統(tǒng)中圖片進行管理,這是需要對系統(tǒng)中的頭文件以及系統(tǒng)模式的選擇進行操作,簡單來說,就是要把用戶輸入信息告訴系統(tǒng),模式輸入模塊程序定義了這個功能。模式輸入模塊程序之間的調用關系如圖4.1所示。 圖4.1輸入模式程序框架圖4.2顯示界面的功能總框架 本文未使用QT圖形用戶界面應用程序開發(fā)框

23、架,而是直接使用C語言編寫出界面程序。界面功能總框架如圖4.2所示。 圖4.2 功能總框架界面功能說明:(1) 主界面:在程序的一開始LCD顯示界面上,有三種模式給用戶選擇,分別是瀏覽模式,連播模式,設置模式。根據(jù)操作者點擊的模式圖標將會進入對應的模式。(2) 文件瀏覽模式界面:若點擊瀏覽模式,則進入文件瀏覽界面,可以看到開發(fā)板搭載的根文件系統(tǒng)搭載全部目錄,以及系統(tǒng)中的圖片,在文件瀏覽模式中,可以選擇的操作方式有:向上,選擇,上一頁,下一頁。(3) 圖片瀏覽模式界面:點擊圖片就可以進入圖片瀏覽模式,在該模式中可以選擇的操作有:返回,放大,縮小,上一頁,下一頁,連播模式。(4) 設置模式界面,點

24、擊設置圖標,就可以進入設置模式,設置模式主要的功能是選擇某個目錄,以及該目錄中所有支持的格式的圖片。(5) 設置間隔時間:進入模式后,可以通過點擊上下箭頭進行設置連播圖片顯示的時間間隔,即每秒顯示下一張圖片。4.3電子相框的主流程圖 當程序啟動后,輸入進程會調用觸摸屏驅動tslib來操作和讀取觸摸屏,輸入進程會將數(shù)據(jù)送至顯示進程進行顯示,顯示分為圖片顯示和文字顯示,圖片顯示調用libjpeg庫,而文字顯示則會調用freetype庫,它們調用的則由render.c渲染程序實現(xiàn)。具體的實現(xiàn)的主流程如圖4.3所示: 圖4.3電子相框主流程主流程解析:(1) 初始化調試通道:本設計可以通過RS232標

25、準串口連接到Windows系統(tǒng)下的超級終端TERA TERM PRO打印初始化信息。(2) 分配5塊物理內存:為了更好的用戶體驗,就應該加快操作的反應速度,所以本設計事先在內存中準備好了下一步要執(zhí)行的數(shù)據(jù),這5塊內存分別存儲的數(shù)據(jù)為:放大圖片、縮小圖片、下一幅圖片、上一幅圖片、當前圖片。這5塊內存通過DMA與LCD的顯存進行快速傳輸數(shù)據(jù)。所以分配這5塊內存是本設計的有點所在。(3) 輸入設備:本課程設計的輸入設備為電阻觸摸屏,輸入進程通過調用tslib驅動來讀取觸摸屏數(shù)據(jù)。(4) 文字字符庫:界面文字的顯示通過render.c渲染程序調用freetype庫來實現(xiàn),freetype庫是一個完全免

26、費開源可移植的字體引擎。(5) 圖片渲染模塊:界面采用的顯示格式是BMP,本設計瀏覽的圖片則只支持JPEG格式,JPEG是一種壓縮圖片的格式,顯示進程通過調用libjpeg來實現(xiàn)圖片的顯示。(6) 主界面:在minicom上運行本設計的最終的可執(zhí)行程序,運行后會出現(xiàn)主界面,主界面提供三種模式,分別是:瀏覽模式、連播模式、設置模式。根據(jù)用戶的操作,會分別進入對應的模式。(7) 顯示設備:本課程設計是周立功開發(fā)板自帶的4.3寸LCD顯示屏。4.4程序模塊介紹 本設計采用模塊化的思想,將程序分割成不同的功能模塊,便于程序的編寫,這也是現(xiàn)在最普遍的變成思想,稱為面向對象的編程思想。本設計大體分為的程序

27、塊為:頁面規(guī)劃模塊、調試模塊、圖片渲染模塊、字符解碼模塊、輸入模式模塊、顯示模塊。4.4.1頁面規(guī)劃模塊該模塊是由page_manager.c分別調用各子程序模塊,程序運行后,由page_manager.c調用main_page.c進行主界面的顯示,主界面分別有瀏覽模式、連播模式、設置模式這三種模式,操作者點擊不同的模式,會調用這個目錄下不同的子程序,調用的關系如圖4.4.1所示。 圖4.4.1 頁面規(guī)劃模塊程序4.4.2調試模塊在執(zhí)行程序時,需要用到超級終端TERA TERM PRO進行操作目標板,在對程序進行調試,該minicom超級終端會輸出預先設置好的字符。改目錄下程序模塊之間的調用關

28、系如圖4.4.2所示。 圖4.4.2 調試模塊程序4.4.3圖片渲染解析模塊 圖片渲染模塊的功能是對圖片格式的解析和對圖片大小的草做,圖片格式分為bmp和JPEG,bmp是頁面的格式,jpeg則為瀏覽的圖片支持的格式,這兩種格式的選擇則由picfrm_manager.c完成,圖片的大小則由operation.c來完成。具體的圖片渲染解析模塊則如圖4.4.3所示: 圖4.4.3圖片渲染解析模塊程序4.4.4字符解碼模塊 字符編碼的規(guī)則是:英文字符用ascaii碼表示,中文簡體用gbk表示,中文繁體用big5表示,全世界的字符復雜多樣,為了統(tǒng)一又出現(xiàn)了Unicode碼,但由于Unicode用3個字

29、節(jié)表示每一個字符,這樣造成了資源的浪費,比如英文字符用一個字符即可以表示,所以又出現(xiàn)了UTF-8、UTF-16LE、UTF-16BE等表示方法既克服了資源浪費的問題又具有唯一性的保障。本程序的之間的調用關系如圖4.4.4所示: 圖4.4.4 字符解碼模塊4.4.5顯示模塊 顯示線程從內存中讀取送至LCD的顯存中,輸入線程將數(shù)據(jù)實時更新至內存中。其顯示模塊目錄中的各個程序調用關系如圖4.4.5所示: 5電子相框的相關驅動移植 本設計用到的主要驅動有:LCD顯示驅動以及觸摸屏驅動,下面詳細的解釋相關如何進行配置。5.1 關于LCD驅動的配置(1) 關于LCD的配置文件:在該開發(fā)板提供的LCD配置文

30、件里的添加如下內容:(A) 配置好LCD控制寄存器 (B) 配置LCD類型為TFT(C) 設置LCD的寬度和長度(D) 配置好LCD的分辨率以及bpp參數(shù)(2) 初始化函數(shù)中添加LCD初始化功能: Static void_init smdk2410_init(void) MCIMX28x_fb_set_platdata(&smdk2410_fb_info); (3)配置內核菜單,是的內核支持frame buffer在make menuconfig中選擇:<*>support for frame buffer devices (4)編譯5.2 關于觸摸屏驅動的配置對于觸摸屏驅動的設計,本文采用的是基于Linux本身自帶的輸入子系統(tǒng)方式設計的,由于設計的代碼比較繁雜,所以本文列出其主要的設計方法,主要的設計方法如下:(1) 設置輸入結果input_dev: (A)通過設置struct input_dev的evdev數(shù)組表示能產生key和ABS類事件。(B)設置產生key和ABS類事件里面的觸摸按鍵事件,X/Y絕對位移,絕對位移壓力事件。(2) 硬件操作:(A) ioremap寄存器(B) 設置AD分頻系數(shù)和ADCDLY(C) 注

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論