七、基于ARM的嵌入式系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)_第1頁
七、基于ARM的嵌入式系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)_第2頁
七、基于ARM的嵌入式系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)_第3頁
七、基于ARM的嵌入式系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)_第4頁
七、基于ARM的嵌入式系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)_第5頁
已閱讀5頁,還剩116頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開發(fā)嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開發(fā)基于基于3232位微處理器與實(shí)時操作系統(tǒng)位微處理器與實(shí)時操作系統(tǒng)基于基于ARMARM的硬件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的硬件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)2009.42009.42本節(jié)提要本節(jié)提要基于基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)的硬件系統(tǒng)體系結(jié)構(gòu)存儲器接口設(shè)計(jì)存儲器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/OI/O接口設(shè)計(jì)接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)其它通訊接口設(shè)計(jì)3ARM920T內(nèi)核結(jié)構(gòu)4S3C2410的內(nèi)部結(jié)構(gòu)5實(shí)驗(yàn)平臺的體系結(jié)構(gòu)2410核心資源總線隔離驅(qū)動168Pin擴(kuò)展槽網(wǎng)卡設(shè)備LCD驅(qū)動音頻電路串口設(shè)備USB設(shè)備PCMCIAIDE/CF卡SD卡接

2、口IO擴(kuò)展電機(jī)等其他資源局部總線擴(kuò)展總線6讀寫總線的時序圖穩(wěn)態(tài)穩(wěn)態(tài)ReadWrite穩(wěn)態(tài)穩(wěn)態(tài)7本節(jié)提要本節(jié)提要基于基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)的硬件系統(tǒng)體系結(jié)構(gòu)存儲器接口設(shè)計(jì)存儲器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/OI/O接口設(shè)計(jì)接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)其它通訊接口設(shè)計(jì)82410的存儲器系統(tǒng)的存儲器系統(tǒng) 可通過軟件選擇大小端可通過軟件選擇大小端 地址空間地址空間:每個每個Bank 128Mbytes (總共總共 1GB)除除 bank0 (16/32-bit) 外,所有的外,所有的Bank都可以通過編程選擇總線寬都可以通過編程選擇總線寬度度= (8/16/32

3、-bit) 共共 8 個個banksl6個個Bank用于控制用于控制 ROM, SRAM, etc.l剩余的兩個剩余的兩個Bank用于控制用于控制 ROM, SRAM, SDRAM, etc . 7個個Bank固定起始地址;固定起始地址; 最后一個最后一個Bank可調(diào)整起始地址;可調(diào)整起始地址; 最后兩個最后兩個Bank大小可編程大小可編程所有所有Bank存儲周期可編程控制;存儲周期可編程控制;9S3C2410的存儲器配置的存儲器配置10Bank6/Bank7地址分布地址分布11Bank0總線寬度配置總線寬度配置12與與2片片8位的位的ROM連接方法連接方法13與與1片片16位的位的ROM連接

4、連接14S3C2410與與2片片8位位FLASH的連接方法的連接方法15與與1片片16M的的SDRAM的連接方法的連接方法16與與2片片16M的的SDRAM的連接方法的連接方法17NAND和NOR性能比較NORNOR和和NANDNAND是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)lNORNOR的讀速度比的讀速度比NANDNAND稍快一些稍快一些lNANDNAND的寫入速度比的寫入速度比NORNOR快很多快很多l(xiāng)NANDNAND的擦除速度遠(yuǎn)比的擦除速度遠(yuǎn)比NORNOR的快的快l大多數(shù)寫入操作需要先進(jìn)行擦除操作大多數(shù)寫入操作需要先進(jìn)行擦除操作lNANDNAND的擦除單元

5、更小,相應(yīng)的擦除電路更少的擦除單元更小,相應(yīng)的擦除電路更少18接口差別lNOR flashNOR flash帶有帶有SRAMSRAM接口,線性尋址,可以很容易地存接口,線性尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)取其內(nèi)部的每一個字節(jié)lNAND flashNAND flash使用復(fù)用接口和控制使用復(fù)用接口和控制IOIO多次尋址存取數(shù)據(jù)多次尋址存取數(shù)據(jù)lNANDNAND讀和寫操作采用讀和寫操作采用512512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理,此類操作易于取代硬盤等類似的塊設(shè)備管理,此類操作易于取代硬盤等類似的塊設(shè)備19容量和成本lNAND flashNAND flash生產(chǎn)

6、過程更為簡單,成本低生產(chǎn)過程更為簡單,成本低l常見的常見的NOR flashNOR flash為為128KB128KB16MB16MB,而,而NANDNANDflashflash通常有通常有8 8128MB128MBlNORNOR主要應(yīng)用在代碼存儲介質(zhì)中,主要應(yīng)用在代碼存儲介質(zhì)中,NANDNAND適合于數(shù)據(jù)存儲適合于數(shù)據(jù)存儲lNANDNAND在在CompactFlashCompactFlash、Secure DigitalSecure Digital、PC CardsPC Cards和和MMCMMC存儲存儲卡市場上所占份額最大卡市場上所占份額最大20本節(jié)提要本節(jié)提要基于基于ARM的硬件系統(tǒng)體系

7、結(jié)構(gòu)的硬件系統(tǒng)體系結(jié)構(gòu)存儲器接口設(shè)計(jì)存儲器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)其它通訊接口設(shè)計(jì)21I/O子系統(tǒng)的層次模型lI/OI/O子系統(tǒng):子系統(tǒng):I/OI/O設(shè)備、相關(guān)的設(shè)備驅(qū)動程序和設(shè)備、相關(guān)的設(shè)備驅(qū)動程序和I/OI/O子系統(tǒng)組成嵌入式子系統(tǒng)組成嵌入式I/OI/O子系統(tǒng)。子系統(tǒng)。lI/OI/O子系統(tǒng)的目標(biāo)是對子系統(tǒng)的目標(biāo)是對RTOSRTOS和應(yīng)用程序員隱藏設(shè)備特定的信息,并且對和應(yīng)用程序員隱藏設(shè)備特定的信息,并且對系統(tǒng)的外圍系統(tǒng)的外圍I/OI/O設(shè)備提供一個統(tǒng)一的訪問方法。設(shè)備提供一個統(tǒng)一的訪問方法。設(shè)備驅(qū)動程序I/O設(shè)備

8、硬件RTOSI/O子系統(tǒng)應(yīng)用程序中斷處理程序22從不同角度看I/O系統(tǒng)l從系統(tǒng)軟件開發(fā)者角度看,從系統(tǒng)軟件開發(fā)者角度看,I/OI/O操作意味著與設(shè)備的通信、操作意味著與設(shè)備的通信、對設(shè)備編程初始化和請示執(zhí)行設(shè)備與系統(tǒng)之間的實(shí)際數(shù)據(jù)對設(shè)備編程初始化和請示執(zhí)行設(shè)備與系統(tǒng)之間的實(shí)際數(shù)據(jù)傳輸以及操作完成后通知請求者。系統(tǒng)軟件工程師必須理傳輸以及操作完成后通知請求者。系統(tǒng)軟件工程師必須理解設(shè)備的物理特性,如寄存器的定義和設(shè)備的訪問方法。解設(shè)備的物理特性,如寄存器的定義和設(shè)備的訪問方法。l從從RTOSRTOS的角度看,的角度看,I/OI/O操作意味著對操作意味著對I/OI/O請求定位正確的設(shè)請求定位正確的

9、設(shè)備,對設(shè)備定位正確的設(shè)備驅(qū)動程序,并解決對設(shè)備驅(qū)動備,對設(shè)備定位正確的設(shè)備驅(qū)動程序,并解決對設(shè)備驅(qū)動程序的請求。有時要求程序的請求。有時要求RTOSRTOS保證對設(shè)備的同步訪問。保證對設(shè)備的同步訪問。RTOSRTOS必須進(jìn)行抽象,對應(yīng)用程序員隱含設(shè)備的特性。必須進(jìn)行抽象,對應(yīng)用程序員隱含設(shè)備的特性。l從應(yīng)用程序員角度看,從應(yīng)用程序員角度看,目標(biāo)是找到一個簡單、統(tǒng)一和精練目標(biāo)是找到一個簡單、統(tǒng)一和精練的方法與系統(tǒng)中出現(xiàn)的所有類型的設(shè)備通信。的方法與系統(tǒng)中出現(xiàn)的所有類型的設(shè)備通信。 23I/O接口的編址方式端口映射1 1)I/OI/O接口獨(dú)立編址接口獨(dú)立編址端口映端口映射方式射方式l這種編址方式

10、是將存儲器地址這種編址方式是將存儲器地址空間和空間和I/OI/O接口地址空間分開接口地址空間分開設(shè)置,互不影響。設(shè)有專門的設(shè)置,互不影響。設(shè)有專門的輸入指令(輸入指令(ININ)和輸出指令()和輸出指令(OUTOUT)來完成)來完成I/OI/O操作。操作。I/O設(shè)備10X00000XFFFFI/O設(shè)備2I/O地址空間0X0000系統(tǒng)地址空間0XFFFF主要優(yōu)點(diǎn):主要優(yōu)點(diǎn):內(nèi)存地址空間與內(nèi)存地址空間與I/OI/O接口地址空間分開,互不影響,譯碼電接口地址空間分開,互不影響,譯碼電路較簡單,并設(shè)有專門的路較簡單,并設(shè)有專門的I/OI/O指令,所以編程序易于區(qū)分,且執(zhí)行時間指令,所以編程序易于區(qū)分,

11、且執(zhí)行時間短,快速性好。短,快速性好。缺點(diǎn):缺點(diǎn):只用只用I/OI/O指令訪問指令訪問I/OI/O端口,功能有限且要采用專用端口,功能有限且要采用專用I/OI/O周期和專周期和專用用I/OI/O控制線,使微處理器復(fù)雜化??刂凭€,使微處理器復(fù)雜化。24I/O接口的編址方式內(nèi)存映射2 2)I/OI/O接口與存儲器統(tǒng)一編址方式接口與存儲器統(tǒng)一編址方式內(nèi)內(nèi)存映射存映射l這種編址方式不區(qū)分存儲器地址空間和這種編址方式不區(qū)分存儲器地址空間和I/OI/O接口地址空間,把所有的接口地址空間,把所有的I/OI/O接口的接口的端口都當(dāng)作是存儲器的一個單元對待,端口都當(dāng)作是存儲器的一個單元對待,每個接口芯片都安排一

12、個或幾個與存儲每個接口芯片都安排一個或幾個與存儲器統(tǒng)一編號的地址號。也不設(shè)專門的輸器統(tǒng)一編號的地址號。也不設(shè)專門的輸入入/ /輸出指令,所有傳送和訪問存儲器的輸出指令,所有傳送和訪問存儲器的指令都可用來對指令都可用來對I/OI/O接口操作。接口操作。I/O設(shè)備10X00000XFFFFI/O設(shè)備2保留I/O地址空間I/O設(shè)備硬件系統(tǒng)地址空間應(yīng)用使用地址空間應(yīng)用使用地址空間主要優(yōu)點(diǎn):主要優(yōu)點(diǎn):訪問內(nèi)存的指令都可用于訪問內(nèi)存的指令都可用于I/OI/O操作,數(shù)據(jù)處理功能強(qiáng);同時操作,數(shù)據(jù)處理功能強(qiáng);同時I/OI/O接口可與存儲器部分共用譯碼和控制電路。接口可與存儲器部分共用譯碼和控制電路。缺點(diǎn):缺點(diǎn)

13、:一是一是I/OI/O接口要占用存儲器地址空間的一部分;二是因不用專門接口要占用存儲器地址空間的一部分;二是因不用專門的的I/OI/O指令,程序中較難區(qū)分指令,程序中較難區(qū)分I/OI/O操作。操作。 25DMA I/ODMA I/ODMA I/OlDMADMA允許設(shè)備直接訪問內(nèi)存而不用包含處理器,在數(shù)據(jù)傳輸操作開允許設(shè)備直接訪問內(nèi)存而不用包含處理器,在數(shù)據(jù)傳輸操作開始之前,處理器設(shè)置始之前,處理器設(shè)置DMADMA控制器,在數(shù)據(jù)傳輸期間,讀寫操作均不控制器,在數(shù)據(jù)傳輸期間,讀寫操作均不通過處理器。通過處理器。lDMADMA傳輸速度取決于傳輸速度取決于I/OI/O設(shè)備的傳輸速度、內(nèi)存設(shè)備的速度和設(shè)

14、備的傳輸速度、內(nèi)存設(shè)備的速度和DMADMA控控制器的速度。制器的速度。l通過指定源地址、目的內(nèi)存地址和傳輸?shù)酵ㄟ^指定源地址、目的內(nèi)存地址和傳輸?shù)紻MADMA控制器長度,處理器控制器長度,處理器建立傳輸操作。建立傳輸操作。CPUDMA控制器主存儲器I/O設(shè)備26字符模式設(shè)備與塊模式設(shè)備 根據(jù)設(shè)備如何處理與系統(tǒng)之間的數(shù)據(jù)傳輸方法可將設(shè)根據(jù)設(shè)備如何處理與系統(tǒng)之間的數(shù)據(jù)傳輸方法可將設(shè)備分為字符模式設(shè)備和塊模式設(shè)備備分為字符模式設(shè)備和塊模式設(shè)備l字符模式設(shè)備:允許非結(jié)構(gòu)的數(shù)據(jù)傳輸。數(shù)據(jù)傳輸?shù)渥址J皆O(shè)備:允許非結(jié)構(gòu)的數(shù)據(jù)傳輸。數(shù)據(jù)傳輸?shù)湫偷夭捎么械男问?,每次一個字節(jié);字符設(shè)備通常型地采用串行的形式,每

15、次一個字節(jié);字符設(shè)備通常是簡單的設(shè)備,如串口、鍵盤等;當(dāng)系統(tǒng)到設(shè)備的傳是簡單的設(shè)備,如串口、鍵盤等;當(dāng)系統(tǒng)到設(shè)備的傳輸速率高于設(shè)備的處理速率時,設(shè)備驅(qū)動程序開設(shè)緩輸速率高于設(shè)備的處理速率時,設(shè)備驅(qū)動程序開設(shè)緩沖區(qū),緩存這些數(shù)據(jù);沖區(qū),緩存這些數(shù)據(jù);l塊模式設(shè)備:每次傳輸一個數(shù)據(jù)塊。采用硬件方式控塊模式設(shè)備:每次傳輸一個數(shù)據(jù)塊。采用硬件方式控制數(shù)據(jù)塊的大小,有時需要采用固定的傳輸協(xié)議,如制數(shù)據(jù)塊的大小,有時需要采用固定的傳輸協(xié)議,如USBUSB、以太網(wǎng)等設(shè)備、以太網(wǎng)等設(shè)備27建立通用的I/O接口函數(shù)Create()Open()Read()Write()Close()Loctl()Destroy(

16、)Driver_Create()Driver_Open()Driver_Read()Driver_Write()Driver_Close()Driver_Loctl()Driver_Destroy()I/OI/O操作操作設(shè)備驅(qū)動程序設(shè)備驅(qū)動程序應(yīng)應(yīng) 用用設(shè)設(shè) 備備28I/O接口設(shè)計(jì) I/OI/O接口電路也簡稱接口電路。它是主機(jī)和外圍設(shè)備之接口電路也簡稱接口電路。它是主機(jī)和外圍設(shè)備之間交換信息的連接部件(電路)。它在主機(jī)和外圍設(shè)備間交換信息的連接部件(電路)。它在主機(jī)和外圍設(shè)備之間的信息交換中起著橋梁和紐帶作用。設(shè)置接口電路之間的信息交換中起著橋梁和紐帶作用。設(shè)置接口電路的必要性:的必要性:a)

17、a)解決解決CPUCPU和外圍設(shè)備之間的時序配合和通信聯(lián)絡(luò)問題。和外圍設(shè)備之間的時序配合和通信聯(lián)絡(luò)問題。b)b)解決解決CPUCPU和外圍設(shè)備之間的數(shù)據(jù)格式轉(zhuǎn)換和匹配問題。和外圍設(shè)備之間的數(shù)據(jù)格式轉(zhuǎn)換和匹配問題。c)c)解決解決CPUCPU的負(fù)載能力和外圍設(shè)備端口選擇問題。的負(fù)載能力和外圍設(shè)備端口選擇問題。29通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口l接口的概念接口的概念lCPU與外部設(shè)備的接口(與外部設(shè)備的接口(I/O適配器)適配器)l接口的功能接口的功能l控制控制 l緩沖緩沖l狀態(tài)狀態(tài) l轉(zhuǎn)換轉(zhuǎn)換l整理整理 l程序中斷程序中斷 30lI/O接口接口l3種寄存器種寄存器l數(shù)據(jù)寄存器、控制寄

18、存器和狀態(tài)寄存器數(shù)據(jù)寄存器、控制寄存器和狀態(tài)寄存器通用設(shè)計(jì)原則(I/O設(shè)備)數(shù)據(jù)寄存器狀態(tài)寄存器控制寄存器I/O接口芯片去I/O設(shè)備去CPU31通用設(shè)計(jì)原則(I/O設(shè)備)lI/O設(shè)備尋址設(shè)備尋址lI/O尋址尋址l定位定位I/O設(shè)備內(nèi)部的寄存器(或一小塊存儲器)設(shè)備內(nèi)部的寄存器(或一小塊存儲器)l與存儲器共享總線與存儲器共享總線l存儲器映像法存儲器映像法l混合編址混合編址CPU存儲器地址總線數(shù)據(jù)總線讀信號寫總線譯碼I/O接口譯碼32通用設(shè)計(jì)原則(I/O設(shè)備)lI/O設(shè)備尋址設(shè)備尋址lI/O隔離法隔離法l獨(dú)立編址獨(dú)立編址l信號線信號線MERQ/IORQl地址空間地址空間CPU存儲器地址總線數(shù)據(jù)總線

19、讀信號寫總線I/O接口MERQ/IORQ33lI/O設(shè)備的數(shù)據(jù)輸入設(shè)備的數(shù)據(jù)輸入/輸出輸出l輸入過程輸入過程lCPU把一個地址值放在地址總線上,這一步將選擇某一輸入設(shè)備把一個地址值放在地址總線上,這一步將選擇某一輸入設(shè)備;lCPU等候輸入設(shè)備的數(shù)據(jù)成為有效;等候輸入設(shè)備的數(shù)據(jù)成為有效; lCPU從數(shù)據(jù)總線讀入數(shù)據(jù),并放在一個相應(yīng)的寄存器中。從數(shù)據(jù)總線讀入數(shù)據(jù),并放在一個相應(yīng)的寄存器中。l輸出過程輸出過程lCPU把一個地址值放在地址總線上,選擇輸出設(shè)備;把一個地址值放在地址總線上,選擇輸出設(shè)備; lCPU把數(shù)據(jù)放在數(shù)據(jù)總線上;把數(shù)據(jù)放在數(shù)據(jù)總線上; l輸出設(shè)備認(rèn)為數(shù)據(jù)有效,從而把數(shù)據(jù)取走。輸出設(shè)

20、備認(rèn)為數(shù)據(jù)有效,從而把數(shù)據(jù)取走。l究竟什么時候數(shù)據(jù)才成為有效? 通用設(shè)計(jì)原則(I/O設(shè)備)34lI/O設(shè)備的定時方式設(shè)備的定時方式l簡單的外圍設(shè)備簡單的外圍設(shè)備l機(jī)械開關(guān)、二極管(無需定時機(jī)制,機(jī)械開關(guān)、二極管(無需定時機(jī)制, CPU只要接收或發(fā)送數(shù)據(jù)就可以了)只要接收或發(fā)送數(shù)據(jù)就可以了)l慢速或中速的外圍設(shè)備慢速或中速的外圍設(shè)備l速度和速度和CPU速度不在一個數(shù)量級,或不規(guī)則時間間隔操作速度不在一個數(shù)量級,或不規(guī)則時間間隔操作( (鍵盤鍵盤) )l異步定時方式異步定時方式l中斷方式中斷方式l查詢方式查詢方式l高速的外圍設(shè)備高速的外圍設(shè)備l以相等的時間間隔操作,采樣同步定時方式以相等的時間間隔

21、操作,采樣同步定時方式 l時鐘脈沖控制時鐘脈沖控制 lDMA通用設(shè)計(jì)原則(I/O設(shè)備)35通用設(shè)計(jì)原則(I/O設(shè)備)lI/O控制方式控制方式l低速設(shè)備低速設(shè)備l程序查詢方式程序查詢方式l程序中斷方式程序中斷方式l高速設(shè)備高速設(shè)備lDMAl通道方式通道方式l外圍處理機(jī)(外圍處理機(jī)(PPU)方式)方式36lI/O接口接口l程序查詢方式程序查詢方式l讀操作流程讀操作流程1. CPU測試測試I/O設(shè)備狀態(tài),等待空閑設(shè)備狀態(tài),等待空閑2 . CPU下達(dá)讀命令,測試狀態(tài)寄存器下達(dá)讀命令,測試狀態(tài)寄存器3 . 把數(shù)據(jù)寄存器中的數(shù)據(jù)讀入到把數(shù)據(jù)寄存器中的數(shù)據(jù)讀入到CPU中中4 . 重復(fù)執(zhí)行以上各步重復(fù)執(zhí)行以上

22、各步l寫操作流程寫操作流程1 . CPU測試測試I/O設(shè)備狀態(tài),等待空閑設(shè)備狀態(tài),等待空閑2 . 把數(shù)據(jù)傳輸?shù)桨褦?shù)據(jù)傳輸?shù)絀/O接口芯片的數(shù)據(jù)寄接口芯片的數(shù)據(jù)寄存器中存器中3 . CPU下達(dá)寫命令下達(dá)寫命令4 . 重復(fù)執(zhí)行以上各步重復(fù)執(zhí)行以上各步通用設(shè)計(jì)原則(I/O設(shè)備)CPUI/O設(shè)備37通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口l中斷中斷l(xiāng)一種實(shí)現(xiàn)一種實(shí)現(xiàn)CPU和和I/O設(shè)備間異步操作的機(jī)制設(shè)備間異步操作的機(jī)制38通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口l中斷中斷l(xiāng)響應(yīng)時間(現(xiàn)場保存)響應(yīng)時間(現(xiàn)場保存)l中斷優(yōu)先級中斷優(yōu)先級l可屏蔽中斷可屏蔽中斷l(xiāng)不可屏蔽中斷不可屏蔽中斷l(xiāng)中斷向量(地

23、址)中斷向量(地址)l固定固定/不固定不固定39CPUPC 設(shè)備設(shè)備狀態(tài)寄存器數(shù)據(jù)寄存器中斷請求中斷應(yīng)答數(shù)據(jù)/地址通用設(shè)計(jì)原則(I/O設(shè)備)中斷處理40lI/O接口接口lDMAlI/O設(shè)備和存儲器直接進(jìn)行數(shù)據(jù)傳輸設(shè)備和存儲器直接進(jìn)行數(shù)據(jù)傳輸l使用場合使用場合l速度快,適用于數(shù)據(jù)連續(xù)傳輸?shù)母咚僭O(shè)備速度快,適用于數(shù)據(jù)連續(xù)傳輸?shù)母咚僭O(shè)備l基本操作過程基本操作過程l從外圍設(shè)備發(fā)出從外圍設(shè)備發(fā)出DMA請求;請求; lCPU響應(yīng)請求,把響應(yīng)請求,把CPU工作改成工作改成DMA操作方式,操作方式,DMA控制器從控制器從CPU接管總線的控制;接管總線的控制;l由由DMA控制器對內(nèi)存尋址,并執(zhí)行數(shù)據(jù)傳送的操作;

24、控制器對內(nèi)存尋址,并執(zhí)行數(shù)據(jù)傳送的操作; l向向CPU報告報告DMA操作的結(jié)束。操作的結(jié)束。通用設(shè)計(jì)原則(I/O設(shè)備)41通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口lDMA傳輸方式傳輸方式l停止停止CPU訪問內(nèi)存訪問內(nèi)存42通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口lDMA傳輸方式傳輸方式l周期挪用周期挪用43通用設(shè)計(jì)原則(I/O設(shè)備)lI/O接口接口lDMA傳輸方式傳輸方式lDMA與與CPU交替訪問內(nèi)存交替訪問內(nèi)存44嵌入式軟件的開發(fā)過程嵌入式軟件的開發(fā)過程45宿主機(jī)調(diào)試器l宿主機(jī)調(diào)試器通過固定的協(xié)議控制下位機(jī)(協(xié)議轉(zhuǎn)換器)。比如宿主機(jī)調(diào)試器通過固定的協(xié)議控制下位機(jī)(協(xié)議轉(zhuǎn)換器)。比如,SD

25、TSDT中通過中通過AngelAngel協(xié)議或者第三方調(diào)試器所提供的協(xié)議協(xié)議或者第三方調(diào)試器所提供的協(xié)議l宿主機(jī)調(diào)試器只發(fā)送宏觀的命令,比如:宿主機(jī)調(diào)試器只發(fā)送宏觀的命令,比如:程序運(yùn)行、終止。讀內(nèi)存、程序運(yùn)行、終止。讀內(nèi)存、ARMARM寄存器等寄存器等l通訊的介質(zhì)可以是串口、并口、以太網(wǎng)、通訊的介質(zhì)可以是串口、并口、以太網(wǎng)、USBUSB等等46什么是JTAG?lJTAGJTAG是是Joint Test Action GroupJoint Test Action Group的縮寫是的縮寫是IEEE1149.1IEEE1149.1標(biāo)準(zhǔn)標(biāo)準(zhǔn)lJTAGJTAG的建立使得集成電路固定在的建立使得集成電

26、路固定在PCBPCB上,只通過邊界掃描便可以被上,只通過邊界掃描便可以被測試測試l在在ARM7TDMIARM7TDMI處理器中,可以通過處理器中,可以通過JTAGJTAG直接控制直接控制ARMARM的內(nèi)部總線,的內(nèi)部總線,IOIO口等信息,從而達(dá)到調(diào)試的目的口等信息,從而達(dá)到調(diào)試的目的47嵌入式開發(fā)板與PC機(jī)的串行通訊嵌入式開發(fā)板和嵌入式開發(fā)板和PC機(jī)的通訊電纜可以按照如圖所示的方式連接。機(jī)的通訊電纜可以按照如圖所示的方式連接。482410的UARTl S3C2410A S3C2410A 的的UART (Universal Asynchronous Receiver UART (Univers

27、al Asynchronous Receiver and Transmitter) and Transmitter) 提供了三個獨(dú)立的異步串行提供了三個獨(dú)立的異步串行I/OI/O口,每口,每一個都可以工作在中斷模式或一個都可以工作在中斷模式或DMADMA模式,即模式,即UARTUART可以產(chǎn)生中可以產(chǎn)生中斷或斷或DMADMA請求以在請求以在CPUCPU和和UARTUART之前傳送數(shù)據(jù),使用系統(tǒng)時鐘之前傳送數(shù)據(jù),使用系統(tǒng)時鐘,UARTUART最高可以支持最高可以支持230.4K bps 230.4K bps 的位傳輸率。的位傳輸率。l如果采用外部帶時鐘的如果采用外部帶時鐘的UARTUART,則,

28、則UARTUART可以實(shí)現(xiàn)更度速度的可以實(shí)現(xiàn)更度速度的傳輸;傳輸;l每個每個UARTUART包括包括2 2個個16Byte16Byte的接收的接收/ /發(fā)送發(fā)送FIFOFIFO。49UART控制框圖50異步串行通訊簡介l在一條傳輸線上完成單向傳輸。在一條傳輸線上完成單向傳輸。l將傳輸數(shù)據(jù)的字符一位接一位的傳送。將傳輸數(shù)據(jù)的字符一位接一位的傳送。l接收方對于同一條線上的一連串連續(xù)數(shù)學(xué)信號,首先將接收方對于同一條線上的一連串連續(xù)數(shù)學(xué)信號,首先將其分割成位,再按位組成字符。其分割成位,再按位組成字符。l每個字符需要確定起始位和結(jié)束位,字符與字符間還可每個字符需要確定起始位和結(jié)束位,字符與字符間還可能

29、有長度不定的空閑時間,因此傳輸效率較低。能有長度不定的空閑時間,因此傳輸效率較低。51字符串行輸出格式:發(fā)送前:線路處于空閑狀態(tài),連續(xù)發(fā)送發(fā)送前:線路處于空閑狀態(tài),連續(xù)發(fā)送 “1”開始發(fā)送:首先,發(fā)送一位起始位開始發(fā)送:首先,發(fā)送一位起始位 “0” 然后,發(fā)送連續(xù)的二進(jìn)制位,數(shù)據(jù)位可以為然后,發(fā)送連續(xù)的二進(jìn)制位,數(shù)據(jù)位可以為5、6、7、8 隨后,緊跟一位奇偶校驗(yàn)位(可選擇奇隨后,緊跟一位奇偶校驗(yàn)位(可選擇奇/偶偶/無校驗(yàn))無校驗(yàn)) 最后,發(fā)送停止位最后,發(fā)送停止位 “1”,可以有,可以有1位、位、1.5位或位或2位停止位位停止位52串行通訊硬件規(guī)范及連接方法lEIA RS-232C 物理特征:

30、物理特征: DB-25 DB-15 DB-9 信號連線:保護(hù)地、信號連線:保護(hù)地、TXD/RXD、RTS/CTS、DCD、 DSR、DTR、R1 電平規(guī)定:電平規(guī)定:-5V -15V 之間的電平表示邏輯之間的電平表示邏輯 “1” +5V +15V 之間的電平表示邏輯之間的電平表示邏輯 “0”5354UART的操作串口初始化串口初始化發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)接收數(shù)據(jù)接收數(shù)據(jù)55l顯示設(shè)備顯示設(shè)備l單個單個LEDLED顯示器顯示器l一個發(fā)光二極管,亮一個發(fā)光二極管,亮/ /滅代表著一個二進(jìn)制數(shù)滅代表著一個二進(jìn)制數(shù)l典型電流典型電流5 520mA20mAlCPUCPU數(shù)據(jù)線通過驅(qū)動反相數(shù)據(jù)線通過驅(qū)動反相(

31、(或同相或同相) )驅(qū)動器驅(qū)動驅(qū)動器驅(qū)動通用設(shè)計(jì)原則(I/O設(shè)備)I/O端口D7D0VCC與CPU相連56鍵盤接口設(shè)計(jì)l鍵盤模塊可能用來輸入數(shù)字型數(shù)據(jù)或者選擇控制設(shè)備的鍵盤模塊可能用來輸入數(shù)字型數(shù)據(jù)或者選擇控制設(shè)備的操作模式。操作模式。l鍵盤有兩種方案:一是采用現(xiàn)有的一些芯片實(shí)現(xiàn)鍵盤掃鍵盤有兩種方案:一是采用現(xiàn)有的一些芯片實(shí)現(xiàn)鍵盤掃描;再就是用軟件實(shí)現(xiàn)鍵盤掃描。嵌入式控制器的功能描;再就是用軟件實(shí)現(xiàn)鍵盤掃描。嵌入式控制器的功能很強(qiáng),可能允分利用這一資源。很強(qiáng),可能允分利用這一資源。57l兩組信號線:輸出信號線(行線),輸入信號線(列線)。列信號線一般通過電阻與電源正極相兩組信號線:輸出信號線(

32、行線),輸入信號線(列線)。列信號線一般通過電阻與電源正極相連。連。通用設(shè)計(jì)原則(I/O設(shè)備)D0D1D2D3D4 D5 D6 D7RRRRVcc0123456789ABCDEF44陣列的鍵盤鍵盤的行信號線和列信號線均由CPU通過數(shù)據(jù)線加以控制,CPU通過數(shù)據(jù)線向行信號線上輸出全“0”信號,然后通過數(shù)據(jù)線讀取列信號,若鍵盤陣列中無任何鍵按下,則讀到的列信號必然是全“1”信號,否則就是非全“1”信號。若是非全“1”信號時,CPU再在行信號線上輸出“步進(jìn)的0”信號,既逐行輸出“0”信號,來判斷被按下的鍵具體在哪一行上,然后產(chǎn)生對應(yīng)的鍵碼。58一個瞬時接觸開關(guān)一個瞬時接觸開關(guān)(按鈕)放置在每一行與(

33、按鈕)放置在每一行與線一列的交叉點(diǎn)。矩陣所線一列的交叉點(diǎn)。矩陣所需的鍵的數(shù)目顯然根據(jù)應(yīng)需的鍵的數(shù)目顯然根據(jù)應(yīng)用程序而不同。每一行由用程序而不同。每一行由一個輸出端口的一位驅(qū)動一個輸出端口的一位驅(qū)動,而每一列由一個電阻器,而每一列由一個電阻器上拉且供給輸入端口一位上拉且供給輸入端口一位。鍵盤掃描陣列59鍵盤掃描過程就是讓微處理器按有規(guī)律的時間間鍵盤掃描過程就是讓微處理器按有規(guī)律的時間間隔查看鍵盤矩陣,以確定是否有鍵被按下。每個鍵被隔查看鍵盤矩陣,以確定是否有鍵被按下。每個鍵被分配一個稱為掃描碼的唯一標(biāo)識符。應(yīng)用程序利用該分配一個稱為掃描碼的唯一標(biāo)識符。應(yīng)用程序利用該掃描碼,根據(jù)按下的鍵來判定應(yīng)該

34、采取什么行動。掃描碼,根據(jù)按下的鍵來判定應(yīng)該采取什么行動。 l消抖算法:消抖算法:l組合鍵處理組合鍵處理鍵盤掃描方法60本節(jié)提要本節(jié)提要基于基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)的硬件系統(tǒng)體系結(jié)構(gòu)存儲器接口設(shè)計(jì)存儲器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/OI/O接口設(shè)計(jì)接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)其它通訊接口設(shè)計(jì)61LCD接口設(shè)計(jì)LCDLCD顯示模塊顯示模塊液晶顯示是一種被動的顯示,它不能發(fā)光,只能使用周圍環(huán)液晶顯示是一種被動的顯示,它不能發(fā)光,只能使用周圍環(huán)境的光。它顯示圖案或字符只需很小能量。液晶顯示所用的液晶材境的光。它顯示圖案或字符只需很小能量。液晶顯示所用的液晶材料是

35、一種兼有液態(tài)和固體雙重性質(zhì)的有機(jī)物,它的棒狀結(jié)構(gòu)在液晶料是一種兼有液態(tài)和固體雙重性質(zhì)的有機(jī)物,它的棒狀結(jié)構(gòu)在液晶盒內(nèi)一般平行排列,但在電場作用下能改變其排列方向。盒內(nèi)一般平行排列,但在電場作用下能改變其排列方向。LCDLCD的背光:的背光:lELEL(場致發(fā)光):(場致發(fā)光):2000-30002000-3000小時小時l和和LEDLED光源:字符模式,光源:字符模式,5000050000小時小時62LCD的顯示方式l反射型反射型LCDLCD:底偏光片后面加了一塊反射板,它一般在戶外和光線:底偏光片后面加了一塊反射板,它一般在戶外和光線良好的辦公室使用。良好的辦公室使用。l透射型透射型LCDL

36、CD:底偏光片是透射偏光片,它需要連續(xù)使用背光源,一:底偏光片是透射偏光片,它需要連續(xù)使用背光源,一般在光線差的環(huán)境使用。般在光線差的環(huán)境使用。l透反射型透反射型LCDLCD:是處于以上兩者之間,底偏光片能部分反光,一般:是處于以上兩者之間,底偏光片能部分反光,一般也帶背光源,光線好的時候,可關(guān)掉背光源;光線差時,可點(diǎn)亮也帶背光源,光線好的時候,可關(guān)掉背光源;光線差時,可點(diǎn)亮背光源使用背光源使用LCDLCD。63反射型LCD的結(jié)構(gòu)64lLCDLCD通常由兩種方式,一種是帶有驅(qū)動芯片的通常由兩種方式,一種是帶有驅(qū)動芯片的LCDLCD模塊,基本上屬模塊,基本上屬于半成品于半成品l一些新型的嵌入式處

37、理器也可以直接使用芯片上的內(nèi)置一些新型的嵌入式處理器也可以直接使用芯片上的內(nèi)置LCDLCD控制器控制器來構(gòu)造顯示模塊,比如:來構(gòu)造顯示模塊,比如:s3c2410s3c2410可以支持可以支持STNSTN的彩色的彩色/ /灰度灰度/ /單色單色三種模式和三種模式和TFTTFT模式,灰度模式下可支持模式,灰度模式下可支持4 4級灰度和級灰度和1616級灰度,彩級灰度,彩色模式下最多支持色模式下最多支持256256色,色,LCDLCD的實(shí)際尺寸可支持到的實(shí)際尺寸可支持到640X480640X480。LCD的驅(qū)動方式65總線驅(qū)動方式l一般帶有驅(qū)動模塊的一般帶有驅(qū)動模塊的LCDLCD顯示屏使用這種驅(qū)動方

38、式,由顯示屏使用這種驅(qū)動方式,由于于LCDLCD已經(jīng)帶有驅(qū)動硬件電路,因此模塊給出的是總線已經(jīng)帶有驅(qū)動硬件電路,因此模塊給出的是總線接口,便于與單片機(jī)的總線進(jìn)行接口。接口,便于與單片機(jī)的總線進(jìn)行接口。l驅(qū)動模塊具有八位數(shù)據(jù)總線,外加一些電源接口和控制驅(qū)動模塊具有八位數(shù)據(jù)總線,外加一些電源接口和控制信號。而且自帶顯示緩存,只需要將要顯示的內(nèi)容送到信號。而且自帶顯示緩存,只需要將要顯示的內(nèi)容送到顯示緩存中就可以實(shí)現(xiàn)內(nèi)容的顯示。由于只有八條數(shù)據(jù)顯示緩存中就可以實(shí)現(xiàn)內(nèi)容的顯示。由于只有八條數(shù)據(jù)線,因此常常通過引腳信號來實(shí)現(xiàn)地址與數(shù)據(jù)線復(fù)用,線,因此常常通過引腳信號來實(shí)現(xiàn)地址與數(shù)據(jù)線復(fù)用,以達(dá)到把相應(yīng)數(shù)

39、據(jù)送到相應(yīng)顯示緩存的目的。以達(dá)到把相應(yīng)數(shù)據(jù)送到相應(yīng)顯示緩存的目的。66控制器掃描方式lS3C2410XS3C2410X中具有內(nèi)置的中具有內(nèi)置的LCDLCD控制器,它具有將顯示緩存控制器,它具有將顯示緩存(在系統(tǒng)存儲器中)中的(在系統(tǒng)存儲器中)中的LCDLCD圖象數(shù)據(jù)傳輸?shù)酵獠繄D象數(shù)據(jù)傳輸?shù)酵獠縇CDLCD驅(qū)驅(qū)動電路的邏輯功能。動電路的邏輯功能。lS3C2410XS3C2410X中內(nèi)置的中內(nèi)置的LCDLCD控制器可支持灰度控制器可支持灰度LCDLCD和彩色和彩色LCDLCD。在灰度。在灰度LCDLCD上,使用基于時間的抖動算法(上,使用基于時間的抖動算法(time-time-based dith

40、ering algorithmbased dithering algorithm)和)和FRC (Frame Rate FRC (Frame Rate Control)Control)方法,可以支持單色、方法,可以支持單色、4 4級灰度和級灰度和1616級灰度模級灰度模式的灰度式的灰度LCDLCD。 在彩色在彩色LCDLCD上,可以支持上,可以支持256256級彩色。對級彩色。對于不同尺寸的于不同尺寸的LCDLCD,具有不同數(shù)量的垂直和水平象素、,具有不同數(shù)量的垂直和水平象素、數(shù)據(jù)接口的數(shù)據(jù)寬度、接口時間及刷新率,而數(shù)據(jù)接口的數(shù)據(jù)寬度、接口時間及刷新率,而LCDLCD控制控制器可以進(jìn)行編程控制

41、相應(yīng)的寄存器值,以適應(yīng)不同的器可以進(jìn)行編程控制相應(yīng)的寄存器值,以適應(yīng)不同的LCDLCD顯示板。顯示板。67嵌入式處理器與LCD的連接嵌入嵌入式處式處理器理器LCD模塊模塊數(shù)據(jù)數(shù)據(jù)總線總線寄存器選擇寄存器選擇使能信號使能信號有有LCD控制控制器的嵌入式器的嵌入式處理器處理器LCDLCD控制信控制信號線號線68 從系統(tǒng)結(jié)構(gòu)上來講,由于顯示器模塊中已經(jīng)有顯示存從系統(tǒng)結(jié)構(gòu)上來講,由于顯示器模塊中已經(jīng)有顯示存儲器。顯存中的每一個單元對應(yīng)儲器。顯存中的每一個單元對應(yīng)LCDLCD上的一個點(diǎn),只上的一個點(diǎn),只要顯存中的內(nèi)容改變,顯示結(jié)果便進(jìn)行刷新。于是便要顯存中的內(nèi)容改變,顯示結(jié)果便進(jìn)行刷新。于是便存在兩種刷

42、新:存在兩種刷新:1 1直接根據(jù)系統(tǒng)要求對顯存進(jìn)行修改,一種是只需修改相應(yīng)的局直接根據(jù)系統(tǒng)要求對顯存進(jìn)行修改,一種是只需修改相應(yīng)的局部就可以,不需要判斷覆蓋等;另一種就是有覆蓋問題,計(jì)算起部就可以,不需要判斷覆蓋等;另一種就是有覆蓋問題,計(jì)算起來比較復(fù)雜,而且每做一點(diǎn)小的屏幕改變就進(jìn)行刷新,將增加系來比較復(fù)雜,而且每做一點(diǎn)小的屏幕改變就進(jìn)行刷新,將增加系統(tǒng)負(fù)擔(dān)。統(tǒng)負(fù)擔(dān)。2 2 專門開辟顯示內(nèi)存,在需要刷新時候由程序進(jìn)行顯示更新。這專門開辟顯示內(nèi)存,在需要刷新時候由程序進(jìn)行顯示更新。這樣,不但可以減輕總線負(fù)荷,而且也比較合理,在有需要的時候樣,不但可以減輕總線負(fù)荷,而且也比較合理,在有需要的時候

43、進(jìn)行統(tǒng)一的顯示更新,界面也可以比較美觀,不致由于無法預(yù)料進(jìn)行統(tǒng)一的顯示更新,界面也可以比較美觀,不致由于無法預(yù)料的刷新動作導(dǎo)致顯示界面閃爍。的刷新動作導(dǎo)致顯示界面閃爍。LCD模塊的顯示控制69前后臺雙重顯示緩存的顯示模塊結(jié)構(gòu) 70集成了LCD控制器的嵌入式處理器體系結(jié)構(gòu) 71LCD接口設(shè)計(jì)1 1、實(shí)現(xiàn)過程簡述:、實(shí)現(xiàn)過程簡述: 就是將要顯示的數(shù)據(jù)放到一個特定的地址,這個特定的就是將要顯示的數(shù)據(jù)放到一個特定的地址,這個特定的地址就是地址就是frame memoryframe memory(幀存儲器),這塊空間是在系(幀存儲器),這塊空間是在系統(tǒng)內(nèi)存中。統(tǒng)內(nèi)存中。 然后然后LCDLCD控制器將這些

44、數(shù)據(jù)配合控制信號送到控制器將這些數(shù)據(jù)配合控制信號送到LCDLCD驅(qū)動驅(qū)動器完成顯示。器完成顯示。 有相應(yīng)的寄存器來設(shè)定這個地址及其大小。與顯示數(shù)據(jù)有相應(yīng)的寄存器來設(shè)定這個地址及其大小。與顯示數(shù)據(jù)相配合完成顯示的控制信號時序也是由相應(yīng)的寄存器來相配合完成顯示的控制信號時序也是由相應(yīng)的寄存器來完成的。這些寄存器都在完成的。這些寄存器都在LCDLCD的控制器中。的控制器中。72LCD控制器框圖REGBANK REGBANK 是是LCDLCD控制器的寄存器組,用來對控制器的寄存器組,用來對LCDLCD控制器的各項(xiàng)參數(shù)進(jìn)行設(shè)控制器的各項(xiàng)參數(shù)進(jìn)行設(shè)置。而置。而 LCDCDMA LCDCDMA 則是則是LC

45、DLCD控制器專用的控制器專用的DMADMA信道,負(fù)責(zé)將視頻資料從系統(tǒng)信道,負(fù)責(zé)將視頻資料從系統(tǒng)總線(總線(System BusSystem Bus)上取來,通過)上取來,通過 VIDPRCS VIDPRCS 從從VD23:0VD23:0發(fā)送給發(fā)送給LCDLCD屏。同時屏。同時 TIMEGEN TIMEGEN 和和 LPC3600 LPC3600 負(fù)責(zé)產(chǎn)生負(fù)責(zé)產(chǎn)生 LCDLCD屏所需要的控制時序,例如屏所需要的控制時序,例如VSYNCVSYNC、HSYNCHSYNC、VCLKVCLK、VDENVDEN,然后從,然后從 VIDEO MUX VIDEO MUX 送給送給LCDLCD屏。屏。73主要

46、的寄存器lLCDLCD控制寄存器(控制寄存器(5 5個)個)l幀緩沖開始地址寄存器(幀緩沖開始地址寄存器(3 3個)個)l臨時調(diào)色板寄存器(臨時調(diào)色板寄存器(Temp Palette RegisterTemp Palette Register)lLCDLCD中斷屏蔽寄存器(中斷屏蔽寄存器(LCD Interrupt LCD Interrupt Mask Register Mask Register)lLPC3600LPC3600控制寄存器(控制寄存器(LPC3600 Control Register LPC3600 Control Register )74LCD圖形顯示方式lLCDLCD顯示模

47、塊由顯示模塊由S3C2410S3C2410的的LCDLCD控制器和控制器和64K64K色彩色色彩色LCDLCD顯顯示器組成。示器組成。l其顯示方式以直接操作顯示緩沖區(qū)的內(nèi)容進(jìn)行,其顯示方式以直接操作顯示緩沖區(qū)的內(nèi)容進(jìn)行,LCDLCD控控制器會通過制器會通過DMADMA從顯示緩沖區(qū)中獲取數(shù)據(jù),不需要從顯示緩沖區(qū)中獲取數(shù)據(jù),不需要CPUCPU干預(yù)。干預(yù)。l本系統(tǒng)采用的本系統(tǒng)采用的LCDLCD分辨率為分辨率為640X480640X480,工作在,工作在64k64k色彩色色彩色顯示模式,在該模式下,顯示緩沖區(qū)中的顯示模式,在該模式下,顯示緩沖區(qū)中的2 2個字節(jié)數(shù)據(jù)代個字節(jié)數(shù)據(jù)代表表LCDLCD上的一個

48、點(diǎn)的顏色信息,因此,所需要的顯示緩上的一個點(diǎn)的顏色信息,因此,所需要的顯示緩沖區(qū)大小為沖區(qū)大小為640X480X2640X480X2字節(jié)。字節(jié)。75LCD控制器初始化l初始化初始化LCDLCD端口,由于端口,由于LCDLCD控制端口與控制端口與CPUCPU的的GPIOGPIO端口端口是復(fù)用的,因此必須設(shè)置相應(yīng)寄存器為是復(fù)用的,因此必須設(shè)置相應(yīng)寄存器為LCDLCD驅(qū)動控制端驅(qū)動控制端口口l申請顯示緩沖區(qū),大小為申請顯示緩沖區(qū),大小為640X480X2640X480X2字節(jié)字節(jié)l初始化初始化LCDLCD控制寄存器,包括設(shè)置控制寄存器,包括設(shè)置LCDLCD分辨率,掃描頻率分辨率,掃描頻率,顯示緩沖區(qū)

49、等。,顯示緩沖區(qū)等。76觸摸屏接口設(shè)計(jì)觸摸屏的分類觸摸屏的分類l電阻式觸摸屏電阻式觸摸屏 l表面聲波觸摸屏表面聲波觸摸屏 l紅外式觸摸屏紅外式觸摸屏 l電容式觸摸屏電容式觸摸屏77電阻式觸摸屏l電阻技術(shù)觸摸屏是一種對外界完全隔離的工作電阻技術(shù)觸摸屏是一種對外界完全隔離的工作環(huán)境,故不怕灰塵、水汽和油污,可以用任何環(huán)境,故不怕灰塵、水汽和油污,可以用任何物體來觸摸,比較適合工業(yè)控制領(lǐng)域及辦公室物體來觸摸,比較適合工業(yè)控制領(lǐng)域及辦公室內(nèi)有限人的使用。內(nèi)有限人的使用。l分為四線電阻和五線電阻觸摸屏分為四線電阻和五線電阻觸摸屏78四線電阻觸摸屏原理79測量原理l在觸摸點(diǎn)在觸摸點(diǎn)X X、Y Y坐標(biāo)的測量

50、過程中,測量電壓與測量點(diǎn)的等效電路圖所坐標(biāo)的測量過程中,測量電壓與測量點(diǎn)的等效電路圖所示,圖中示,圖中P P為測量點(diǎn)為測量點(diǎn) XVYY80觸摸屏芯片81FM(ADS)7843的特點(diǎn)l實(shí)現(xiàn)觸摸屏的驅(qū)動選擇控制(實(shí)現(xiàn)觸摸屏的驅(qū)動選擇控制(X X、Y Y通道)通道)l對于輸入電壓或附加電壓進(jìn)行對于輸入電壓或附加電壓進(jìn)行ADAD轉(zhuǎn)換轉(zhuǎn)換l同步串行接口同步串行接口l最大轉(zhuǎn)換速率最大轉(zhuǎn)換速率125KHz125KHzl可編程控制可編程控制8 8位或者位或者1212位轉(zhuǎn)換模式位轉(zhuǎn)換模式l工作電壓工作電壓2.7V-5.0V2.7V-5.0Vl兩個附加的輸入端口兩個附加的輸入端口82FM7843與ARM的連接83

51、AD7843的工作時序l同步串口(同步串口(SIOSIO)向)向ADS7843ADS7843發(fā)送控制字發(fā)送控制字l轉(zhuǎn)換完成后從轉(zhuǎn)換完成后從ADS7843ADS7843串口讀出電壓轉(zhuǎn)換值串口讀出電壓轉(zhuǎn)換值 A/DA/D轉(zhuǎn)換時序(每次轉(zhuǎn)換需要轉(zhuǎn)換時序(每次轉(zhuǎn)換需要2424個時鐘周期)個時鐘周期)84觸摸屏與LCD的配合lFM 7843FM 7843送回控制器的送回控制器的X X與與Y Y值僅是對當(dāng)前觸摸點(diǎn)的電壓值的值僅是對當(dāng)前觸摸點(diǎn)的電壓值的A/DA/D轉(zhuǎn)轉(zhuǎn)換值,它不具有實(shí)用價值。這個值的大小不但與觸摸屏的分辨率換值,它不具有實(shí)用價值。這個值的大小不但與觸摸屏的分辨率有關(guān),而且也與觸摸屏與有關(guān),而

52、且也與觸摸屏與LCDLCD貼合的情況有關(guān)。而且,貼合的情況有關(guān)。而且,LCDLCD分辨率分辨率與觸摸屏的分辨率一般來說是不一樣,坐標(biāo)也不一樣,因此,如與觸摸屏的分辨率一般來說是不一樣,坐標(biāo)也不一樣,因此,如果想得到體現(xiàn)果想得到體現(xiàn)LCDLCD坐標(biāo)的觸摸屏位置,還需要在程序中進(jìn)行轉(zhuǎn)換。坐標(biāo)的觸摸屏位置,還需要在程序中進(jìn)行轉(zhuǎn)換。轉(zhuǎn)換公式如下轉(zhuǎn)換公式如下: : lx=(x-TchScr_Xmin)x=(x-TchScr_Xmin)* *LCDWIDTH/(TchScr_Xmax-TchScr_Xmin)LCDWIDTH/(TchScr_Xmax-TchScr_Xmin)ly=(y-TchScr_Ym

53、in)y=(y-TchScr_Ymin)* *LCDHEIGHT/(TchScr_Ymax-TchScr_Ymin)LCDHEIGHT/(TchScr_Ymax-TchScr_Ymin)l其中,其中,TchScr_XmaxTchScr_Xmax、TchScr_XminTchScr_Xmin、TchScr_YmaxTchScr_Ymax和和TchScr_YminTchScr_Ymin是觸摸屏返回電壓值是觸摸屏返回電壓值x x、y y軸的范圍,軸的范圍,LCDWIDTHLCDWIDTH、LCDHEIGHTLCDHEIGHT是液晶是液晶屏的寬度與高度。屏的寬度與高度。85觸摸屏(鍵盤)驅(qū)動程序結(jié)構(gòu)8

54、6觸摸屏的驅(qū)動#define ADS7843_CTRL_START0 x80#define ADS7843_GET_X0 x50#define ADS7843_GET_Y0 x10#define ADS7843_CTRL_12MODE0 x0#define ADS7843_CTRL_8MODE0 x8#define ADS7843_CTRL_SER0 x4#define ADS7843_CTRL_DFR0 x0#define ADS7843_CTRL_DISPWD0 x3/ Disable power down#define ADS7843_CTRL_ENPWD0 x0/ enable pow

55、er down#define ADS7843_PIN_CS(16)/GPF6#define ADS7843_PIN_PEN (15)/GPG5/#define ADS7843_PIN_BUSY(16)/觸摸屏動作觸摸屏動作/#define TCHSCR_ACTION_NULL0#define TCHSCR_ACTION_CLICK1/觸摸屏單擊觸摸屏單擊#define TCHSCR_ACTION_DBCLICK2/觸摸屏雙擊觸摸屏雙擊#define TCHSCR_ACTION_DOWN3/觸摸屏按下觸摸屏按下#define TCHSCR_ACTION_UP4/觸摸屏抬起觸摸屏抬起#define

56、 TCHSCR_ACTION_MOVE5/觸摸屏移動觸摸屏移動#define TCHSCR_IsPenNotDown()(rPDATG&ADS7843_PIN_PEN)void TchScr_init(void);void TchScr_GetScrXY(int *x, int *y);87函數(shù)TchScrGetScrXY(int *x, int *y)的結(jié)構(gòu)88讀取觸摸點(diǎn)坐標(biāo)89本節(jié)提要本節(jié)提要基于基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)的硬件系統(tǒng)體系結(jié)構(gòu)存儲器接口設(shè)計(jì)存儲器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/OI/O接口設(shè)計(jì)接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)其它通訊接口設(shè)

57、計(jì)90以太網(wǎng)接口的基本知識 1、傳輸編碼、傳輸編碼l曼徹斯特編碼曼徹斯特編碼l差分曼徹斯特編碼差分曼徹斯特編碼91以太網(wǎng)協(xié)議 l以太網(wǎng)MAC層物理傳輸幀 (IEEE802.3 )PRSDDASATYPEDATAPADFCS56位位8位位48位位48位位16位位不超過不超過1500字節(jié)字節(jié)可選可選32位位PRPR:同步位,收發(fā)雙方的時鐘同步,也指明傳輸?shù)乃俾剩ㄍ轿?,收發(fā)雙方的時鐘同步,也指明傳輸?shù)乃俾剩?0M10M、100M100M)SDSD:分隔位分隔位, ,表示下面跟著的是真正的數(shù)據(jù)表示下面跟著的是真正的數(shù)據(jù), ,而不是同步時鐘而不是同步時鐘DADA:目目的地址的地址, ,以太網(wǎng)的地址為以

58、太網(wǎng)的地址為4848位地址。如果為都為位地址。如果為都為F,F,則是廣播地址則是廣播地址SASA:源地址源地址,48,48位位, ,表明該幀的數(shù)據(jù)是哪個網(wǎng)卡發(fā)的表明該幀的數(shù)據(jù)是哪個網(wǎng)卡發(fā)的, ,即發(fā)送端網(wǎng)卡地址即發(fā)送端網(wǎng)卡地址TYPETYPE:類型字段,表明該幀的數(shù)據(jù)是什么類型。如:類型字段,表明該幀的數(shù)據(jù)是什么類型。如:0800H 0800H 表示數(shù)據(jù)為表示數(shù)據(jù)為IPIP 包,包,0806H0806H表示數(shù)據(jù)為表示數(shù)據(jù)為ARPARP包,包,814CH814CH是是SNMPSNMP包,包,8137H8137H為為IPX/SPXIPX/SPX包包 DATADATA:數(shù)據(jù)段,該段數(shù)據(jù)不能超過:數(shù)據(jù)

59、段,該段數(shù)據(jù)不能超過15001500字節(jié)。字節(jié)。PADPAD: 填充位。以太網(wǎng)幀傳輸?shù)臄?shù)據(jù)包最小不能小于填充位。以太網(wǎng)幀傳輸?shù)臄?shù)據(jù)包最小不能小于6060字節(jié)字節(jié), , 當(dāng)數(shù)據(jù)段不當(dāng)數(shù)據(jù)段不 足足4646字節(jié)時,后面補(bǔ)字節(jié)時,后面補(bǔ)000000.(000000.(當(dāng)然也可以補(bǔ)其它值當(dāng)然也可以補(bǔ)其它值) )FCS: 32FCS: 32位位CRCCRC數(shù)據(jù)校驗(yàn)位。該校驗(yàn)由網(wǎng)卡自動完成數(shù)據(jù)校驗(yàn)位。該校驗(yàn)由網(wǎng)卡自動完成92以太網(wǎng)的數(shù)據(jù)傳輸特點(diǎn)lPR,SD,PAD,FCSPR,SD,PAD,FCS這幾個數(shù)據(jù)段是由網(wǎng)卡自動產(chǎn)生的;只需要理解這幾個數(shù)據(jù)段是由網(wǎng)卡自動產(chǎn)生的;只需要理解DA、SA、TYPE、DA

60、TA四個段的內(nèi)容四個段的內(nèi)容l所有數(shù)據(jù)位的傳輸由低位開始所有數(shù)據(jù)位的傳輸由低位開始( (傳輸?shù)奈涣魇褂寐鼜厮固鼐幋a傳輸?shù)奈涣魇褂寐鼜厮固鼐幋a) ) l以太網(wǎng)的沖突退避算法是由硬件自動執(zhí)行的以太網(wǎng)的沖突退避算法是由硬件自動執(zhí)行的lDA+SA+TYPE+DATA+PADDA+SA+TYPE+DATA+PAD最小為最小為6060字節(jié)字節(jié), ,最大為最大為15141514字節(jié)字節(jié)l以太網(wǎng)卡可以接收三種地址的數(shù)據(jù),一個是廣播地位,一個是多以太網(wǎng)卡可以接收三種地址的數(shù)據(jù),一個是廣播地位,一個是多播地址播地址( (在嵌入式的環(huán)境中一般不用在嵌入式的環(huán)境中一般不用) ),一個是它自已的地址,一個是它自已的地址l任何兩

溫馨提示

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

評論

0/150

提交評論