版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
5CHAPTER基于ARM的硬件系統(tǒng)設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)ARM920T內(nèi)核結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)S3C2410的內(nèi)部結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)平臺(tái)的體系結(jié)構(gòu)2410核心資源總線隔離驅(qū)動(dòng)168Pin擴(kuò)展槽網(wǎng)卡設(shè)備LCD驅(qū)動(dòng)音頻電路串口設(shè)備USB設(shè)備PCMCIAIDE/CF卡SD卡接口IO擴(kuò)展電機(jī)等其他資源局部總線擴(kuò)展總線Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)讀寫總線的時(shí)序圖穩(wěn)態(tài)ReadWrite穩(wěn)態(tài)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)2410的存儲(chǔ)器系統(tǒng)—可通過(guò)軟件選擇大小端—地址空間:每個(gè)Bank128Mbytes(總共1GB)—除bank0(16/32-bit)外,所有的Bank都可以通過(guò)編程選擇總線寬度=(8/16/32-bit)—共8個(gè)banks6個(gè)Bank用于控制ROM,SRAM,etc.剩余的兩個(gè)Bank用于控制ROM,SRAM,SDRAM,etc.—7個(gè)Bank固定起始地址;—最后一個(gè)Bank可調(diào)整起始地址;—最后兩個(gè)Bank大小可編程—所有Bank存儲(chǔ)周期可編程控制;Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)S3C2410的存儲(chǔ)器配置Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)Bank6/Bank7地址分布Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)Bank0總線寬度配置Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)與2片8位的ROM連接方法Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)與1片16位的ROM連接Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)S3C2410與2片8的FLASH的連接方法Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)與1片16M的SDRAM的連接方法Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)與1片16M的SDRAM的連接方法Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)NAND和NOR——性能比較NOR和NAND是現(xiàn)在市場(chǎng)上兩種主要的非易失閃存技術(shù)NOR的讀速度比NAND稍快一些NAND的寫入速度比NOR快很多NAND的擦除速度遠(yuǎn)比NOR的快大多數(shù)寫入操作需要先進(jìn)行擦除操作NAND的擦除單元更小,相應(yīng)的擦除電路更少Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)接口差別NORflash帶有SRAM接口,線性尋址,可以很容易地存取其內(nèi)部的每一個(gè)字節(jié)NANDflash使用復(fù)用接口和控制IO多次尋址存取數(shù)據(jù)NAND讀和寫操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理,此類操作易于取代硬盤等類似的塊設(shè)備Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)容量和成本NANDflash生產(chǎn)過(guò)程更為簡(jiǎn)單,成本低常見的NORflash為128KB~16MB,而NANDflash通常有8~128MBNOR主要應(yīng)用在代碼存儲(chǔ)介質(zhì)中,NAND適合于數(shù)據(jù)存儲(chǔ)NAND在CompactFlash、SecureDigital、PCCards和MMC存儲(chǔ)卡市場(chǎng)上所占份額最大Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)可靠性和耐用性在NAND中每塊的最大擦寫次數(shù)是100萬(wàn)次,而NOR的擦寫次數(shù)是10萬(wàn)次位交換的問(wèn)題NANDflash中更突出,需要ECC糾錯(cuò)NANDflash中壞塊隨機(jī)分布,需要通過(guò)軟件標(biāo)定——產(chǎn)品量產(chǎn)的問(wèn)題Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式系統(tǒng)中應(yīng)用RAM的情況Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O系統(tǒng)設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)I/O子系統(tǒng)的層次模型I/O子系統(tǒng):I/O設(shè)備、相關(guān)的設(shè)備驅(qū)動(dòng)程序和I/O子系統(tǒng)組成嵌入式I/O子系統(tǒng)。I/O子系統(tǒng)的目標(biāo)是對(duì)RTOS和應(yīng)用程序員隱藏設(shè)備特定的信息,并且對(duì)系統(tǒng)的外圍I/O設(shè)備提供一個(gè)統(tǒng)一的訪問(wèn)方法。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)從不同角度看I/O系統(tǒng)從系統(tǒng)軟件開發(fā)者角度看,I/O操作意味著與設(shè)備的通信、對(duì)設(shè)備編程初始化和請(qǐng)示執(zhí)行設(shè)備與系統(tǒng)之間的實(shí)際數(shù)據(jù)傳輸以及操作完成后通知請(qǐng)求者。系統(tǒng)軟件工程師必須理解設(shè)備的物理特性,如寄存器的定義和設(shè)備的訪問(wèn)方法。從RTOS的角度看,I/O操作意味著對(duì)I/O請(qǐng)求定位正確的設(shè)備,對(duì)設(shè)備定位正確的設(shè)備驅(qū)動(dòng)程序,并解決對(duì)設(shè)備驅(qū)動(dòng)程序的請(qǐng)求。有時(shí)要求RTOS保證對(duì)設(shè)備的同步訪問(wèn)。RTOS必須進(jìn)行抽象,對(duì)應(yīng)用程序員隱含設(shè)備的特性。從應(yīng)用程序員角度看,目標(biāo)是找到一個(gè)簡(jiǎn)單、統(tǒng)一和精練的方法與系統(tǒng)中出現(xiàn)的所有類型的設(shè)備通信。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)I/O接口的編址方式—端口映射
1)I/O接口獨(dú)立編址——端口映射方式這種編址方式是將存儲(chǔ)器地址空間和I/O接口地址空間分開設(shè)置,互不影響。設(shè)有專門的輸入指令(IN)和輸出指令(OUT)來(lái)完成I/O操作。主要優(yōu)點(diǎn):內(nèi)存地址空間與I/O接口地址空間分開,互不影響,譯碼電路較簡(jiǎn)單,并設(shè)有專門的I/O指令,所以編程序易于區(qū)分,且執(zhí)行時(shí)間短,快速性好。缺點(diǎn):只用I/O指令訪問(wèn)I/O端口,功能有限且要采用專用I/O周期和專用I/O控制線,使微處理器復(fù)雜化。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)I/O接口的編址方式——內(nèi)存映射
1)2)I/O接口與存儲(chǔ)器統(tǒng)一編址方式——內(nèi)存映射這種編址方式不區(qū)分存儲(chǔ)器地址空間和I/O接口地址空間,把所有的I/O接口的端口都當(dāng)作是存儲(chǔ)器的一個(gè)單元對(duì)待,每個(gè)接口芯片都安排一個(gè)或幾個(gè)與存儲(chǔ)器統(tǒng)一編號(hào)的地址號(hào)。也不設(shè)專門的輸入/輸出指令,所有傳送和訪問(wèn)存儲(chǔ)器的指令都可用來(lái)對(duì)I/O接口操作。主要優(yōu)點(diǎn):訪問(wèn)內(nèi)存的指令都可用于I/O操作,數(shù)據(jù)處理功能強(qiáng);同時(shí)I/O接口可與存儲(chǔ)器部分共用譯碼和控制電路。缺點(diǎn):一是I/O接口要占用存儲(chǔ)器地址空間的一部分;二是因不用專門的I/O指令,程序中較難區(qū)分I/O操作。
Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)DMAI/ODMAI/ODMA允許設(shè)備直接訪問(wèn)內(nèi)存而不用包含處理器,在數(shù)據(jù)傳輸操作開始之前,處理器設(shè)置DMA控制器,在數(shù)據(jù)傳輸期間,讀寫操作均不通過(guò)處理器。DMA傳輸速度取決于I/O設(shè)備的傳輸速度、內(nèi)存設(shè)備的速度和DMA控制器的速度。通過(guò)指定源地址、目的內(nèi)存地址和傳輸?shù)紻MA控制器長(zhǎng)度,處理器建立傳輸操作。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)字符模式設(shè)備與塊模式設(shè)備根據(jù)設(shè)備如何處理與系統(tǒng)之間的數(shù)據(jù)傳輸方法可將設(shè)備分為字符模式設(shè)備和塊模式設(shè)備字符模式設(shè)備:允許非結(jié)構(gòu)的數(shù)據(jù)傳輸。數(shù)據(jù)傳輸?shù)湫偷夭捎么械男问?,每次一個(gè)字節(jié);字符設(shè)備通常是簡(jiǎn)單的設(shè)備,如串口、鍵盤等;當(dāng)系統(tǒng)到設(shè)備的傳輸速率高于設(shè)備的處理速率時(shí),設(shè)備驅(qū)動(dòng)程序開設(shè)緩沖區(qū),緩存這些數(shù)據(jù);塊模式設(shè)備:每次傳輸一個(gè)數(shù)據(jù)塊。采用硬件方式控制數(shù)據(jù)塊的大小,有時(shí)需要采用固定的傳輸協(xié)議,如USB、以太網(wǎng)等設(shè)備Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)建立通用的I/O接口函數(shù)Create()Open()Read()Write()Close()Loctl()Destroy()Driver_Create()Driver_Open()Driver_Read()Driver_Write()Driver_Close()Driver_Loctl()Driver_Destroy()I/O操作設(shè)備驅(qū)動(dòng)程序應(yīng)用設(shè)備Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)I/O接口設(shè)計(jì)
I/O接口電路也簡(jiǎn)稱接口電路。它是主機(jī)和外圍設(shè)備之間交換信息的連接部件(電路)。它在主機(jī)和外圍設(shè)備之間的信息交換中起著橋梁和紐帶作用。設(shè)置接口電路的必要性:a)解決CPU和外圍設(shè)備之間的時(shí)序配合和通信聯(lián)絡(luò)問(wèn)題。b)解決CPU和外圍設(shè)備之間的數(shù)據(jù)格式轉(zhuǎn)換和匹配問(wèn)題。c)解決CPU的負(fù)載能力和外圍設(shè)備端口選擇問(wèn)題。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式開發(fā)板與PC機(jī)的串行通訊嵌入式開發(fā)板和PC機(jī)的通訊電纜可以按照如圖所示的方式連接。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)2410的UARTS3C2410A的UART(UniversalAsynchronousReceiverandTransmitter)提供了三個(gè)獨(dú)立的異步串行I/O口,每一個(gè)都可以工作在中斷模式或DMA模式,即UART可以產(chǎn)生中斷或DMA請(qǐng)求以在CPU和UART之前傳送數(shù)據(jù),使用系統(tǒng)時(shí)鐘,UART最高可以支持230.4Kbps的位傳輸率。如果采用外部帶時(shí)鐘的UART,則UART可以實(shí)現(xiàn)更度速度的傳輸;每個(gè)UART包括2個(gè)16Byte的接收/發(fā)送FIFO。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)UART控制框圖Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)異步串行通訊簡(jiǎn)介在一條傳輸線上完成單向傳輸。將傳輸數(shù)據(jù)的字符一位接一位的傳送。接收方對(duì)于同一條線上的一連串連續(xù)數(shù)學(xué)信號(hào),首先將其分割成位,再按位組成字符。每個(gè)字符需要確定起始位和結(jié)束位,字符與字符間還可能有長(zhǎng)度不定的空閑時(shí)間,因此傳輸效率較低。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)字符串行輸出格式發(fā)送前:線路處于空閑狀態(tài),連續(xù)發(fā)送“1”開始發(fā)送:首先,發(fā)送一位起始位“0”然后,發(fā)送連續(xù)的二進(jìn)制位,數(shù)據(jù)位可以為5、6、7、8隨后,緊跟一位奇偶校驗(yàn)位(可選擇奇/偶/無(wú)校驗(yàn))最后,發(fā)送停止位“1”,可以有1位、1.5位或2位停止位Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)串行通訊硬件規(guī)范及連接方法EIARS-232C
物理特征:DB-25DB-15DB-9信號(hào)連線:保護(hù)地、TXD/RXD、RTS/CTS、DCD、DSR、DTR、R1電平規(guī)定:-5V~-15V之間的電平表示邏輯“1”+5V~+15V之間的電平表示邏輯“0”Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)UART的操作串口初始化發(fā)送數(shù)據(jù)接收數(shù)據(jù)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)鍵盤接口設(shè)計(jì)鍵盤模塊可能用來(lái)輸入數(shù)字型數(shù)據(jù)或者選擇控制設(shè)備的操作模式。鍵盤有兩種方案:一是采用現(xiàn)有的一些芯片實(shí)現(xiàn)鍵盤掃描;再就是用軟件實(shí)現(xiàn)鍵盤掃描。嵌入式控制器的功能很強(qiáng),可能允分利用這一資源。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)一個(gè)瞬時(shí)接觸開關(guān)(按鈕)放置在每一行與線一列的交叉點(diǎn)。矩陣所需的鍵的數(shù)目顯然根據(jù)應(yīng)用程序而不同。每一行由一個(gè)輸出端口的一位驅(qū)動(dòng),而每一列由一個(gè)電阻器上拉且供給輸入端口一位。鍵盤掃描陣列Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)鍵盤掃描過(guò)程就是讓微處理器按有規(guī)律的時(shí)間間隔查看鍵盤矩陣,以確定是否有鍵被按下。每個(gè)鍵被分配一個(gè)稱為掃描碼的唯一標(biāo)識(shí)符。應(yīng)用程序利用該掃描碼,根據(jù)按下的鍵來(lái)判定應(yīng)該采取什么行動(dòng)。
消抖算法:組合鍵處理鍵盤掃描方法Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD接口設(shè)計(jì)LCD顯示模塊液晶顯示是一種被動(dòng)的顯示,它不能發(fā)光,只能使用周圍環(huán)境的光。它顯示圖案或字符只需很小能量。液晶顯示所用的液晶材料是一種兼有液態(tài)和固體雙重性質(zhì)的有機(jī)物,它的棒狀結(jié)構(gòu)在液晶盒內(nèi)一般平行排列,但在電場(chǎng)作用下能改變其排列方向。LCD的背光:EL(場(chǎng)致發(fā)光):2000-3000小時(shí)和LED光源:字符模式,50000小時(shí)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD的顯示方式反射型LCD:底偏光片后面加了一塊反射板,它一般在戶外和光線良好的辦公室使用。透射型LCD:底偏光片是透射偏光片,它需要連續(xù)使用背光源,一般在光線差的環(huán)境使用。透反射型LCD:是處于以上兩者之間,底偏光片能部分反光,一般也帶背光源,光線好的時(shí)候,可關(guān)掉背光源;光線差時(shí),可點(diǎn)亮背光源使用LCD。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)反射型LCD的結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD通常由兩種方式,一種是帶有驅(qū)動(dòng)芯片的LCD模塊,基本上屬于半成品一些新型的嵌入式處理器也可以直接使用芯片上的內(nèi)置LCD控制器來(lái)構(gòu)造顯示模塊,比如:s3c2410可以支持STN的彩色/灰度/單色三種模式和TFT模式,灰度模式下可支持4級(jí)灰度和16級(jí)灰度,彩色模式下最多支持256色,LCD的實(shí)際尺寸可支持到640X480。LCD的驅(qū)動(dòng)方式Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)總線驅(qū)動(dòng)方式一般帶有驅(qū)動(dòng)模塊的LCD顯示屏使用這種驅(qū)動(dòng)方式,由于LCD已經(jīng)帶有驅(qū)動(dòng)硬件電路,因此模塊給出的是總線接口,便于與單片機(jī)的總線進(jìn)行接口。驅(qū)動(dòng)模塊具有八位數(shù)據(jù)總線,外加一些電源接口和控制信號(hào)。而且自帶顯示緩存,只需要將要顯示的內(nèi)容送到顯示緩存中就可以實(shí)現(xiàn)內(nèi)容的顯示。由于只有八條數(shù)據(jù)線,因此常常通過(guò)引腳信號(hào)來(lái)實(shí)現(xiàn)地址與數(shù)據(jù)線復(fù)用,以達(dá)到把相應(yīng)數(shù)據(jù)送到相應(yīng)顯示緩存的目的。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)控制器掃描方式S3C2410X中具有內(nèi)置的LCD控制器,它具有將顯示緩存(在系統(tǒng)存儲(chǔ)器中)中的LCD圖象數(shù)據(jù)傳輸?shù)酵獠縇CD驅(qū)動(dòng)電路的邏輯功能。S3C2410X中內(nèi)置的LCD控制器可支持灰度LCD和彩色LCD。在灰度LCD上,使用基于時(shí)間的抖動(dòng)算法(time-basedditheringalgorithm)和FRC(FrameRateControl)方法,可以支持單色、4級(jí)灰度和16級(jí)灰度模式的灰度LCD。在彩色LCD上,可以支持256級(jí)彩色。對(duì)于不同尺寸的LCD,具有不同數(shù)量的垂直和水平象素、數(shù)據(jù)接口的數(shù)據(jù)寬度、接口時(shí)間及刷新率,而LCD控制器可以進(jìn)行編程控制相應(yīng)的寄存器值,以適應(yīng)不同的LCD顯示板。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式處理器與LCD的連接嵌入式處理器LCD模塊數(shù)據(jù)總線寄存器選擇使能信號(hào)有LCD控制器的嵌入式處理器LCDLCD控制信號(hào)線Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)
從系統(tǒng)結(jié)構(gòu)上來(lái)講,由于顯示器模塊中已經(jīng)有顯示存儲(chǔ)器。顯存中的每一個(gè)單元對(duì)應(yīng)LCD上的一個(gè)點(diǎn),只要顯存中的內(nèi)容改變,顯示結(jié)果便進(jìn)行刷新。于是便存在兩種刷新:1.直接根據(jù)系統(tǒng)要求對(duì)顯存進(jìn)行修改,一種是只需修改相應(yīng)的局部就可以,不需要判斷覆蓋等;另一種就是有覆蓋問(wèn)題,計(jì)算起來(lái)比較復(fù)雜,而且每做一點(diǎn)小的屏幕改變就進(jìn)行刷新,將增加系統(tǒng)負(fù)擔(dān)。2.專門開辟顯示內(nèi)存,在需要刷新時(shí)候由程序進(jìn)行顯示更新。這樣,不但可以減輕總線負(fù)荷,而且也比較合理,在有需要的時(shí)候進(jìn)行統(tǒng)一的顯示更新,界面也可以比較美觀,不致由于無(wú)法預(yù)料的刷新動(dòng)作導(dǎo)致顯示界面閃爍。LCD模塊的顯示控制Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)前后臺(tái)雙重顯示緩存的顯示模塊結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD接口設(shè)計(jì)1、實(shí)現(xiàn)過(guò)程簡(jiǎn)述:就是將要顯示的數(shù)據(jù)放到一個(gè)特定的地址,這個(gè)特定的地址就是framememory(幀存儲(chǔ)器),這塊空間是在系統(tǒng)內(nèi)存中。然后LCD控制器將這些數(shù)據(jù)配合控制信號(hào)送到LCD驅(qū)動(dòng)器完成顯示。有相應(yīng)的寄存器來(lái)設(shè)定這個(gè)地址及其大小。與顯示數(shù)據(jù)相配合完成顯示的控制信號(hào)時(shí)序也是由相應(yīng)的寄存器來(lái)完成的。這些寄存器都在LCD的控制器中。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD控制器框圖Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)主要的寄存器LCD控制寄存器(5個(gè))幀緩沖開始地址寄存器(3個(gè))臨時(shí)調(diào)色板寄存器(TempPaletteRegister)LCD中斷屏蔽寄存器(LCDInterruptMaskRegister)LPC3600控制寄存器(LPC3600ControlRegister)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)LCD控制寄存器的設(shè)置LCD的控制寄存器主要用來(lái)設(shè)置產(chǎn)生符合LCD屏的時(shí)序信號(hào),各個(gè)參數(shù)要參考具體屏的實(shí)際參數(shù),各個(gè)參數(shù)如下圖所示,各個(gè)參數(shù)在控制寄存器中都由相應(yīng)的域設(shè)置,系統(tǒng)中用的是TFT類型的LCD,時(shí)序圖如下:Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)觸摸屏接口設(shè)計(jì)觸摸屏的分類電阻式觸摸屏表面聲波觸摸屏紅外式觸摸屏電容式觸摸屏Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)電阻式觸摸屏電阻技術(shù)觸摸屏是一種對(duì)外界完全隔離的工作環(huán)境,故不怕灰塵、水汽和油污,可以用任何物體來(lái)觸摸,比較適合工業(yè)控制領(lǐng)域及辦公室內(nèi)有限人的使用。分為四線電阻和五線電阻觸摸屏Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)四線電阻觸摸屏原理Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)測(cè)量原理在觸摸點(diǎn)X、Y坐標(biāo)的測(cè)量過(guò)程中,測(cè)量電壓與測(cè)量點(diǎn)的等效電路圖所示,圖中P為測(cè)量點(diǎn)XVYYChap5基于ARM的硬件系統(tǒng)設(shè)計(jì)觸摸屏芯片Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)FM(ADS)7843的特點(diǎn)實(shí)現(xiàn)觸摸屏的驅(qū)動(dòng)選擇控制(X、Y通道)對(duì)于輸入電壓或附加電壓進(jìn)行AD轉(zhuǎn)換同步串行接口最大轉(zhuǎn)換速率125KHz可編程控制8位或者12位轉(zhuǎn)換模式工作電壓2.7V-5.0V兩個(gè)附加的輸入端口Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)FM7843與ARM的連接Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)AD7843的工作時(shí)序同步串口(SIO)向ADS7843發(fā)送控制字轉(zhuǎn)換完成后從ADS7843串口讀出電壓轉(zhuǎn)換值A(chǔ)/D轉(zhuǎn)換時(shí)序(每次轉(zhuǎn)換需要24個(gè)時(shí)鐘周期)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)觸摸屏與LCD的配合FM7843送回控制器的X與Y值僅是對(duì)當(dāng)前觸摸點(diǎn)的電壓值的A/D轉(zhuǎn)換值,它不具有實(shí)用價(jià)值。這個(gè)值的大小不但與觸摸屏的分辨率有關(guān),而且也與觸摸屏與LCD貼合的情況有關(guān)。而且,LCD分辨率與觸摸屏的分辨率一般來(lái)說(shuō)是不一樣,坐標(biāo)也不一樣,因此,如果想得到體現(xiàn)LCD坐標(biāo)的觸摸屏位置,還需要在程序中進(jìn)行轉(zhuǎn)換。轉(zhuǎn)換公式如下:x=(x-TchScr_Xmin)*LCDWIDTH/(TchScr_Xmax-TchScr_Xmin)y=(y-TchScr_Ymin)*LCDHEIGHT/(TchScr_Ymax-TchScr_Ymin)其中,TchScr_Xmax、TchScr_Xmin、TchScr_Ymax和TchScr_Ymin是觸摸屏返回電壓值x、y軸的范圍,LCDWIDTH、LCDHEIGHT是液晶屏的寬度與高度。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)觸摸屏(鍵盤)驅(qū)動(dòng)程序結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)觸摸屏的驅(qū)動(dòng)#defineADS7843_CTRL_START 0x80#defineADS7843_GET_X 0x50#defineADS7843_GET_Y 0x10#defineADS7843_CTRL_12MODE 0x0#defineADS7843_CTRL_8MODE 0x8#defineADS7843_CTRL_SER 0x4#defineADS7843_CTRL_DFR 0x0#defineADS7843_CTRL_DISPWD 0x3 //Disablepowerdown#defineADS7843_CTRL_ENPWD 0x0 //enablepowerdown#defineADS7843_PIN_CS (1<<6) //GPF6#defineADS7843_PIN_PEN (1<<5) //GPG5//#defineADS7843_PIN_BUSY (1<<6)/////////觸摸屏動(dòng)作////////#defineTCHSCR_ACTION_NULL 0 #defineTCHSCR_ACTION_CLICK 1 //觸摸屏單擊#defineTCHSCR_ACTION_DBCLICK 2 //觸摸屏雙擊#defineTCHSCR_ACTION_DOWN 3 //觸摸屏按下#defineTCHSCR_ACTION_UP 4 //觸摸屏抬起#defineTCHSCR_ACTION_MOVE 5 //觸摸屏移動(dòng)#defineTCHSCR_IsPenNotDown() (rPDATG&ADS7843_PIN_PEN)voidTchScr_init(void);voidTchScr_GetScrXY(int*x,int*y);Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)函數(shù)TchScrGetScrXY(int*x,int*y)的結(jié)構(gòu)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)讀取觸摸點(diǎn)坐標(biāo)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口設(shè)計(jì)網(wǎng)絡(luò)接口設(shè)計(jì)I/O接口設(shè)計(jì)人機(jī)交互接口設(shè)計(jì)其它通訊接口設(shè)計(jì)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)以太網(wǎng)接口的基本知識(shí)1、傳輸編碼曼徹斯特編碼差分曼徹斯特編碼Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)以太網(wǎng)協(xié)議以太網(wǎng)MAC層物理傳輸幀(IEEE802.3)PRSDDASATYPEDATAPADFCS56位8位48位48位16位不超過(guò)1500字節(jié)可選32位PR: 同步位,收發(fā)雙方的時(shí)鐘同步,也指明傳輸?shù)乃俾剩?0M、100M)SD: 分隔位,表示下面跟著的是真正的數(shù)據(jù),而不是同步時(shí)鐘DA: 目的地址,以太網(wǎng)的地址為48位地址。如果為都為F,則是廣播地址SA: 源地址,48位,表明該幀的數(shù)據(jù)是哪個(gè)網(wǎng)卡發(fā)的,即發(fā)送端網(wǎng)卡地址
TYPE:類型字段,表明該幀的數(shù)據(jù)是什么類型。如:0800H表示數(shù)據(jù)為IP包,0806H表示數(shù)據(jù)為ARP包,814CH是SNMP包,8137H為IPX/SPX包
DATA:數(shù)據(jù)段,該段數(shù)據(jù)不能超過(guò)1500字節(jié)。PAD:填充位。以太網(wǎng)幀傳輸?shù)臄?shù)據(jù)包最小不能小于60字節(jié),當(dāng)數(shù)據(jù)段不足46字節(jié)時(shí),后面補(bǔ)000000.....(當(dāng)然也可以補(bǔ)其它值)
FCS:32位CRC數(shù)據(jù)校驗(yàn)位。該校驗(yàn)由網(wǎng)卡自動(dòng)完成Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)以太網(wǎng)的數(shù)據(jù)傳輸特點(diǎn)PR,SD,PAD,FCS這幾個(gè)數(shù)據(jù)段是由網(wǎng)卡自動(dòng)產(chǎn)生的;只需要理解DA、SA、TYPE、DATA四個(gè)段的內(nèi)容所有數(shù)據(jù)位的傳輸由低位開始(傳輸?shù)奈涣魇褂寐鼜厮固鼐幋a)以太網(wǎng)的沖突退避算法是由硬件自動(dòng)執(zhí)行的DA+SA+TYPE+DATA+PAD最小為60字節(jié),最大為1514字節(jié)以太網(wǎng)卡可以接收三種地址的數(shù)據(jù),一個(gè)是廣播地位,一個(gè)是多播地址(在嵌入式的環(huán)境中一般不用),一個(gè)是它自已的地址任何兩個(gè)網(wǎng)卡的物理地址都是不一樣的,是世界上唯一的,網(wǎng)卡地址由專門機(jī)構(gòu)分配。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式的以太網(wǎng)方案嵌入式處理器+網(wǎng)卡芯片(RTL8019)對(duì)嵌入式處理器沒有特殊要求,通用性強(qiáng)處理器和網(wǎng)絡(luò)數(shù)據(jù)交換通過(guò)外部總線,速度慢,不適合于100M網(wǎng)絡(luò)帶有以太網(wǎng)絡(luò)接口的嵌入式處理器處理器面向網(wǎng)絡(luò)應(yīng)用處理器和網(wǎng)絡(luò)數(shù)據(jù)交換通過(guò)內(nèi)部總線,速度快Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)RTL8019的原理框圖Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式網(wǎng)絡(luò)接口的特點(diǎn)與常規(guī)的網(wǎng)卡設(shè)計(jì)思路不同的是,在嵌入式系統(tǒng)中,系統(tǒng)的精簡(jiǎn)一直是個(gè)主要的原則。RTL8019AS作為網(wǎng)卡,時(shí)需要一片EEPROM作為配置存儲(chǔ)器,來(lái)確定通訊的端口地址,中斷地址,網(wǎng)卡的物理地址,工作模式,制造廠商等信息;而在嵌入式系統(tǒng)中,可以使用RTL8019AS的默認(rèn)配置和一些管腳作為網(wǎng)卡的初始化方法。這樣可以節(jié)省配置存儲(chǔ)器,減小嵌入式硬件平臺(tái)的體積。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)基于RTL8019的嵌入式以太網(wǎng)設(shè)計(jì)1RTL8019AS的初始化RTL8019支持即插即用模式和非即插即用模式。在嵌入式系統(tǒng)中,網(wǎng)卡的外設(shè)通常是不經(jīng)常插拔的,所以,為了系統(tǒng)的精簡(jiǎn),配置RTL8019為非即插即用模式。有著固定的中斷,有著固定的端口地址,假設(shè)是端口是0x300(這里的端口是相對(duì)于ISA總線來(lái)說(shuō)的端口,對(duì)于ARM的總線,需要重新計(jì)算地址)。這些配置可以通過(guò)RTL8019的外部管腳,在系統(tǒng)上電復(fù)位的時(shí)候,自動(dòng)配置起來(lái)。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)關(guān)于RTL8019的RAMRTL8019含有16K字節(jié)的RAM,地址為0x4000-0x7fff(指的是RTL8019內(nèi)部的存儲(chǔ)地址,是RTL8019工作用的存儲(chǔ)器,可以通過(guò)遠(yuǎn)程DMA訪問(wèn)),每256個(gè)字節(jié)稱為一頁(yè),共有64頁(yè)。頁(yè)的地址就是地址的高8位,頁(yè)地址為0x40--0x7f。這16k的ram的一部分用來(lái)存放接收的數(shù)據(jù)包,一部分用來(lái)存儲(chǔ)待發(fā)送的數(shù)據(jù)包Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)2通過(guò)RTL8019AS發(fā)送數(shù)據(jù)
作為一個(gè)集成的以太網(wǎng)芯片,數(shù)據(jù)的發(fā)送校驗(yàn),總線數(shù)據(jù)包的碰撞檢測(cè)與避免是由芯片自己完成的。只需要配置發(fā)送數(shù)據(jù)的物理層地址的源地址、目的地址、數(shù)據(jù)包類型以及發(fā)送的數(shù)據(jù)就可以了。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)3、通過(guò)RTL8019AS接收數(shù)據(jù)
在RTL8019的初始化程序中已經(jīng)設(shè)置好了接收緩沖區(qū)的位置,并且配置好了中斷的模式。當(dāng)有一個(gè)正確的數(shù)據(jù)包到達(dá)的時(shí)候,RTL8019會(huì)產(chǎn)生一個(gè)中斷信號(hào),在ARM中斷處理程序中,接收數(shù)據(jù)。數(shù)據(jù)的接收比較簡(jiǎn)單,即通過(guò)遠(yuǎn)端DMA把數(shù)據(jù)從RTL8019的RAM空間讀回ARM中處理。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)TCP/IP協(xié)議的層次應(yīng)用層(Application)BSD套接字(BSDSockets)傳輸層(Transport)TCP、UDP網(wǎng)絡(luò)層(Network)IP、ARP、ICMP、IGMP數(shù)據(jù)鏈路層(DataLink)IEEE802.3EthernetMAC物理層(Physical)Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)嵌入式以太網(wǎng)中主要處理的協(xié)議ARP(AddressResolationProtocol)
地址解析協(xié)議ICMP(InternetControlMessagesProtocol)
網(wǎng)絡(luò)控制報(bào)文協(xié)議(用來(lái)與其它主機(jī)交換錯(cuò)誤報(bào)文和其它重要信息,常用的網(wǎng)絡(luò)診斷工具ping和traceroute)IP(InternetProtocol)網(wǎng)際協(xié)議TCP(TransferControlProtocol)
傳輸控制協(xié)議UDP(UserDatagramProtocol)
用戶數(shù)據(jù)包協(xié)議Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)ARP地址解析協(xié)議網(wǎng)絡(luò)層用32bit的IP地址來(lái)標(biāo)識(shí)不同的主機(jī),而鏈路層使用48bit的物理(MAC)地址來(lái)標(biāo)識(shí)不同的以太網(wǎng)接口。只知道目的主機(jī)的IP地址并不能發(fā)送數(shù)據(jù)幀給它,必須知道目的主機(jī)網(wǎng)絡(luò)接口的MAC地址才能發(fā)送數(shù)據(jù)幀。ARP的功能是實(shí)現(xiàn)從IP地址到對(duì)應(yīng)物理地址的轉(zhuǎn)換。
源主機(jī)發(fā)送一份包含目的主機(jī)IP地址的ARP請(qǐng)求數(shù)據(jù)幀給網(wǎng)上的每個(gè)主機(jī),稱作ARP廣播,目的主機(jī)的ARP收到這份廣播報(bào)文后,識(shí)別出這是發(fā)送端在尋問(wèn)它的IP地址,于是發(fā)送一個(gè)包含目的主機(jī)IP地址及對(duì)應(yīng)的MAC地址的ARP回答給源主機(jī)。每臺(tái)主機(jī)上都有一個(gè)ARP高速緩存,存放最近的IP地址到硬件地址之間的映射記錄。通常每一項(xiàng)的生存時(shí)間為20分鐘Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)ICMP網(wǎng)絡(luò)控制報(bào)文協(xié)議IP層的附屬協(xié)議,IP層用它來(lái)與其他主機(jī)或路由器交換錯(cuò)誤報(bào)文和其他重要控制信息。ICMP報(bào)文是在IP數(shù)據(jù)包內(nèi)部被傳輸?shù)摹蓚€(gè)實(shí)用的網(wǎng)絡(luò)診斷工具,Ping和Traceroute(Tracert),都是利用該協(xié)議工作的。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)IP網(wǎng)際協(xié)議IP工作在網(wǎng)絡(luò)層,是TCP/IP協(xié)議族中最為核心的協(xié)議。所有的TCP,UDP,ICMP以及IGMP數(shù)據(jù)都以IP數(shù)據(jù)包格式傳輸。IP數(shù)據(jù)包最長(zhǎng)可達(dá)65535字節(jié),其中報(bào)頭占32bit的數(shù)目。包含各32bit的源IP地址和目的IP地址。在嵌入式應(yīng)用中,簡(jiǎn)化設(shè)計(jì),IP數(shù)據(jù)包長(zhǎng)度等于數(shù)據(jù)鏈路層的數(shù)據(jù)長(zhǎng)度。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)TCP傳輸控制協(xié)議TCP是一個(gè)面向連接的可靠的傳輸層協(xié)議。TCP為兩臺(tái)主機(jī)提供高可靠性的端到端數(shù)據(jù)通信。主要包括:發(fā)送方把應(yīng)用程序交給它的數(shù)據(jù)分成合適的小塊,并添加附加信息(TCP頭),包括順序號(hào),源、目的端口,控制、糾錯(cuò)信息等字段,稱為TCP數(shù)據(jù)包。并將TCP數(shù)據(jù)包交給下面的網(wǎng)絡(luò)層處理。接受方確認(rèn)接收到的TCP數(shù)據(jù)包,重組并將數(shù)據(jù)送往高層。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)UDP協(xié)議UDP是一種無(wú)連接不可靠的傳輸層協(xié)議。把應(yīng)用程序傳來(lái)的數(shù)據(jù)加上UDP頭(包括端口號(hào),段長(zhǎng)等字段),作為UDP數(shù)據(jù)包發(fā)送出去,但是并不保證它們能到達(dá)目的地??煽啃杂蓱?yīng)用層來(lái)提供。就象發(fā)送一封寫有地址的一般信件,卻不保證它能到達(dá)。Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)基于ARM和uCOS-II的TCP/IP協(xié)議向ARM和uC/OS移植一個(gè)TCP/IP協(xié)議棧采用uC/OS自帶的TCP/IP協(xié)議棧Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)BSD套接字(BSDSockets)BSDSockets使用的最廣泛的網(wǎng)絡(luò)程序編程方法,主要用于應(yīng)用程序的編寫,用于網(wǎng)絡(luò)上主機(jī)與主機(jī)之間的相互通信UNIX,Linux,VxWorks均支持BSDSockets,Windows的Winsock基本上是來(lái)自BSDSocketsSocket分為StreamSockets和DataSocketsStreamSockets是可靠性的雙向數(shù)據(jù)傳輸,使用TCP協(xié)議DataSockets是不可靠連接,使用UDP協(xié)議Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)套接字的使用UDP服務(wù)器端和一個(gè)UDP客戶端通信的程序過(guò)程創(chuàng)建一個(gè)Socket
sFd=socket(AF_INET,SOCK_DGRAM,0)把Socket和本機(jī)的IP,UDP口綁定
bind(sFd,(structsockaddr*)&serverAddr, sockAddrSize)循環(huán)等待,接收(recvfrom)或者發(fā)送(sendfrom)信息關(guān)閉Socket,通信終止
close(sFd)
Chap5基于ARM的硬件系統(tǒng)設(shè)計(jì)本節(jié)提要132546基于ARM的硬件系統(tǒng)體系結(jié)構(gòu)存儲(chǔ)器接口
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年委托加工合同經(jīng)典版(三篇)
- 2024年工程審計(jì)工作總結(jié)參考樣本(三篇)
- 2024年學(xué)校教研活動(dòng)總結(jié)標(biāo)準(zhǔn)版本(四篇)
- 生 物2024-2025學(xué)年北師大版生物八年級(jí)上冊(cè)復(fù)習(xí)題(第15-18章)
- 2024年學(xué)校辦公室工作總結(jié)經(jīng)典版(三篇)
- 2024年小學(xué)教師個(gè)人工作總結(jié)范本(三篇)
- 2024年四年級(jí)班主任計(jì)劃范例(四篇)
- 2024年家具制造公司勞動(dòng)合同(四篇)
- 2024年小挖掘機(jī)租賃合同標(biāo)準(zhǔn)范文(二篇)
- 2024年小學(xué)少先隊(duì)輔導(dǎo)員學(xué)期工作計(jì)劃樣本(三篇)
- 溢流面混凝土施工方案選擇及施工方法淺談
- (完整word版)化學(xué)實(shí)驗(yàn)室儀器藥品清單
- 家庭農(nóng)場(chǎng)項(xiàng)目建設(shè)方案3篇
- 醫(yī)院非產(chǎn)科孕情管理和三病檢測(cè)工作方案
- 物品出入庫(kù)明細(xì)表格
- 柔性制造技術(shù)的五個(gè)類型
- 基于stm32的低頻數(shù)字相位測(cè)量?jī)x
- 第四章 造紙化學(xué)
- 湖南某糧食倉(cāng)儲(chǔ)擴(kuò)建項(xiàng)目拱板屋面施工方案(附示意圖)
- 五年級(jí)上冊(cè)數(shù)學(xué)應(yīng)用題精選150道
- 蘇泊爾電磁爐線路圖(上)
評(píng)論
0/150
提交評(píng)論