lpc2200系列具有開(kāi)放的外部總線,而lpc2100系列則總線不開(kāi)放,但是可以通過(guò)io口模擬總線接口。在總線接口上可以掛接多種外部設(shè)備,包括:并行sram、并行flash、usb接口、液晶模塊、網(wǎng)絡(luò)接口等設(shè)備,這里僅介紹其中部分常用的外部設(shè)備。
并行sram
——概述
sram為靜態(tài)ram存儲(chǔ)器,具有極高的讀寫(xiě)速度,在嵌入式系統(tǒng)中常用來(lái)作變量/數(shù)據(jù)緩沖,或者將程序復(fù)制到sram上運(yùn)行,以提高系統(tǒng)的性能。注意,sram屬于易失性存儲(chǔ)器,電源掉電后sram中的數(shù)據(jù)將會(huì)丟失,所以不可能直接使用sram引導(dǎo)程序運(yùn)行。
dram為動(dòng)態(tài)ram存儲(chǔ)器,具有存儲(chǔ)容量大和價(jià)格便宜的特點(diǎn)。dram是用mos電路和電容來(lái)作存儲(chǔ)元件,由于電容會(huì)放電,所以需要定時(shí)充電以維持存儲(chǔ)內(nèi)容的正確,例如每隔2ms刷新一次數(shù)據(jù)。
psram(即pseudo-sram)器件是異步sram接口技術(shù)和利用存儲(chǔ)陣列的高密度dram技術(shù)相結(jié)合的產(chǎn)物。實(shí)際上,這些器件實(shí)現(xiàn)了對(duì)主機(jī)系統(tǒng)透明地自刷新技術(shù)。通過(guò)擴(kuò)展包括刷新操作和讀出操作兩部分時(shí)間在內(nèi)的讀出周期的規(guī)定周期時(shí)間,使得透明的刷新成為可能。這種方法同樣也可用于寫(xiě)入周期。
——sram
sram器件種類繁多,這里以is61lv25616al為例。該芯片是美國(guó)issi公司的高速sram器件,采用cmos技術(shù),存儲(chǔ)容量為512k字節(jié),16位數(shù)據(jù)寬度,工作電源3.3v。管腳分布如下圖所示。
sram器件種類繁多,這里以is61lv25616al為例。該芯片是美國(guó)issi公司的高速sram器件,采用cmos技術(shù),存儲(chǔ)容量為512k字節(jié),16位數(shù)據(jù)寬度,工作電源3.3v。管腳分布如下圖所示。
——psram
psram以cellularram的mt45w4ml16pfa 為例。cellularram是一系列psram產(chǎn)品,是一種高速、cmos動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器,適用于低功耗的便攜式產(chǎn)品中。
cellularram技術(shù)有幾個(gè)特點(diǎn):
它向后可兼容標(biāo)準(zhǔn)異步sram器件;
它是帶有sram接口的dram技術(shù);
它的價(jià)格比目前使用的sram器件更低;
器件包含有頁(yè)面模式讀訪問(wèn),可看作是異步讀協(xié)議的帶寬增加的擴(kuò)展特性。
為了能在異步存儲(chǔ)器總線上實(shí)現(xiàn)無(wú)縫操作,cellularram產(chǎn)品集成了一種透明的自刷新機(jī)制。隱藏刷新不需要系統(tǒng)存儲(chǔ)器控制器的額外支持,它對(duì)器件的讀/寫(xiě)性能沒(méi)有明顯影響。
mt45w4ml16pfa是cellularram的一種,是一個(gè)4meg×16位的64mb器件。為了減少功耗,內(nèi)核電壓被降低到1.8v,為了兼容各種不同存儲(chǔ)器總線的接口,i/o電壓為3.0v。
lpc2200在外部存儲(chǔ)器接口bank0上使用mt45w4ml16pfa,所以將lpc2200的cs0與mt45w4ml16pfa的片選引腳連接。存儲(chǔ)器連接使用了16位總線方式。
并行flash
——概述
flash存儲(chǔ)器又稱閃存,是一種可在線多次擦除的非易失性存儲(chǔ)器,即掉電后數(shù)據(jù)不會(huì)丟失。flash存儲(chǔ)器還具有體積小、功耗低、抗振性強(qiáng)等優(yōu)點(diǎn),是嵌入式系統(tǒng)的首選存儲(chǔ)設(shè)備。
flash存儲(chǔ)器主要分為兩種,一種為nor型flash,另一種為nand型flash 。
——nor型與nand型flash的區(qū)別
(1) 接口差別
nor型flash采用的是sram接口,提供有足夠的地址引腳來(lái)尋址,可以很容易地存取其片內(nèi)的每一個(gè)字節(jié);
nand型flash使用復(fù)雜的i/o口來(lái)串行地存取數(shù)據(jù),各個(gè)產(chǎn)品或廠商的方法可能各不相同。通常是采用8個(gè)引腳來(lái)傳送控制、地址和數(shù)據(jù)信息。
(2) 讀寫(xiě)的基本單位
nor型flash操作是以“字”為基本單位;
nand型flash操作是以“頁(yè)面”為基本單位,頁(yè)的大小一般為512字節(jié)。
(3) 性能比較
nor型flash的地址線和數(shù)據(jù)線是分開(kāi)的,傳輸效率很高,程序可以在芯片內(nèi)執(zhí)行。nor型的讀速度比nand型稍快一些;
nand型的寫(xiě)入速度比nor型快很多(由于nand型讀寫(xiě)的基本單位為“頁(yè)面”,所以對(duì)于小量數(shù)據(jù)的寫(xiě)入,總體速度要比nor型慢);
(4) 容量和成本
nand型flash具有極高的單元密度,容量可以做得比較大,加上其生產(chǎn)過(guò)程更為簡(jiǎn)單,價(jià)格也就相應(yīng)地降低了。
nor型flash占據(jù)了容量為1~16mb閃存市場(chǎng)的大部分,而nand型flash只是用在8~128mb的產(chǎn)品當(dāng)中,這也說(shuō)明nor主要應(yīng)用在代碼存儲(chǔ)介質(zhì)中,nand適合于數(shù)據(jù)存儲(chǔ),nand在compactflash、secure digital、pc cards和mmc存儲(chǔ)卡市場(chǎng)上所占份額最大。
(5) 軟件支持
在nor型flash上運(yùn)行代碼不需要任何的軟件支持,而在nand型flash上進(jìn)行同樣操作時(shí),通常需要驅(qū)動(dòng)程序,也就是內(nèi)存技術(shù)驅(qū)動(dòng)程序mtd (memory technology drivers)。nand型和nor型flash在進(jìn)行寫(xiě)入和擦除操作時(shí)都需要mtd(說(shuō)明,mtd已集成在flash芯片內(nèi)部,它是對(duì)flash進(jìn)行操作的接口)。
——nor型flash存儲(chǔ)器
這里以sst39vf160為例,介紹nor型flash存儲(chǔ)器的結(jié)構(gòu)及操作。
sst39vf160是sst公司的cmos多功能flash(mpf)器件,存儲(chǔ)容量為2m字節(jié),16位數(shù)據(jù)寬度(即一個(gè)字為2字節(jié)),工作電壓為2.7~3.6v。sst39vf160由sst特有的高性能superflash技術(shù)制造而成,superflash技術(shù)提供了固定的擦除和編程時(shí)間,與擦除/編程周期數(shù)無(wú)關(guān)。芯片管腳配置如下圖所示。
nor型flash存儲(chǔ)器容量越來(lái)越大,為了方便數(shù)據(jù)管理,將flash劃分為塊(block),每個(gè)塊又分成扇區(qū)(sector)。
sst39vf160的塊大小為32k字,扇區(qū)大小為2k字。
讀操作,可以對(duì)任何地址的任何字節(jié)進(jìn)行,不受限制;
寫(xiě)操作,以字形式進(jìn)行編程。編程前包含字的扇區(qū)必須完全擦除;
擦除操作,以扇區(qū)(2k)、塊(32k)或全片為單位進(jìn)行擦除。 擦除后數(shù)據(jù)變?yōu)?xff。
sst39vf160的存儲(chǔ)器操作由命令來(lái)啟動(dòng)。命令通過(guò)標(biāo)準(zhǔn)微處理器寫(xiě)時(shí)序?qū)懭肫骷e#拉低、ce#保持低電平來(lái)寫(xiě)入命令。地址總線上的地址在we#或ce#的下降沿(無(wú)論哪一個(gè)后產(chǎn)生下降沿)被鎖存。數(shù)據(jù)總線上的數(shù)據(jù)在we#或ce#的上升沿(無(wú)論哪一個(gè)先產(chǎn)生上升沿)被鎖存。存儲(chǔ)器操作命令如下表所示。
——nand型flash存儲(chǔ)器
這里以k9f2808u0c為例,介紹nand型flash存儲(chǔ)器的結(jié)構(gòu)及操作。
k9f2808u0c是samsung公司生產(chǎn)的nand型flash存儲(chǔ)器,存儲(chǔ)容量為16m×8bit,工作電壓為2.7~3.6v。528字節(jié)的頁(yè)編程操作時(shí)間為200μs,16k字節(jié)的塊擦除操作時(shí)間為2ms。頁(yè)面的數(shù)據(jù)以每個(gè)字50ns的速度被讀出。片內(nèi)寫(xiě)控制自動(dòng)實(shí)現(xiàn)所有編程和擦除功能,包括脈沖的周期、內(nèi)部校驗(yàn)和數(shù)據(jù)冗余。
k9f2808u0c的存儲(chǔ)空間分為32k頁(yè),每一頁(yè)有(512+16)字節(jié)。該寄存器被分為兩個(gè)區(qū):數(shù)據(jù)區(qū)和空閑區(qū)。數(shù)據(jù)區(qū)又可分為上、下兩個(gè)區(qū),每個(gè)區(qū)為256字節(jié);空閑區(qū)可以用于存放ecc校驗(yàn)和其它校驗(yàn)信息。
k9f2808u0c芯片的存儲(chǔ)器陣列由16個(gè)單元組成,這16個(gè)單元串聯(lián)到一起形成一個(gè)nand結(jié)構(gòu)。每個(gè)單元位于不同的頁(yè)面。一個(gè)塊由兩個(gè)nand結(jié)構(gòu)的串組成。一個(gè)nand結(jié)構(gòu)包含16個(gè)單元。全部135168個(gè)nand單元位于一個(gè)塊中。
對(duì)k9f2808u0c的操作是通過(guò)將特定的指令數(shù)據(jù)寫(xiě)到芯片指令寄存器中實(shí)現(xiàn),指令與時(shí)序的定義如下表所示。
usb(d12)
usb總線主要用于usb設(shè)備與usb主機(jī)之間的數(shù)據(jù)通信,特別為usb設(shè)備與usb主機(jī)之間大量數(shù)據(jù)的傳輸提供了高速、可靠的傳輸協(xié)議。例如:在嵌入式系統(tǒng)中,可以利用usb設(shè)備與微控制器構(gòu)成usb設(shè)備。usb設(shè)備與pc機(jī)usb主控器相連就可以實(shí)現(xiàn)嵌入式系統(tǒng)與pc機(jī)之間的通信了,也就可以實(shí)現(xiàn)諸如u盤(pán)、移動(dòng)硬盤(pán)、usb接口打印機(jī)等功能。
pdiusbd12是一款性價(jià)比很高的usb器件,完全符合usb1.1版規(guī)范。pdiusbd12管腳排列及內(nèi)部功能框圖如下圖所示。
pdiusbd12的硬件接口和外部存儲(chǔ)器接口類似,可以當(dāng)作一片外部ram芯片來(lái)進(jìn)行訪問(wèn)。
lpc2200微控制器的外部數(shù)據(jù)總線與地址總線是分開(kāi)的,所以pdiusbd12的data0~data7可以直接與lpc2200的數(shù)據(jù)總線的d0~d7直接相連就可以構(gòu)成訪問(wèn)pdiusbd12的數(shù)據(jù)總線了。
lpc2200微控制器訪問(wèn)pdiusbd12的地址總線則必須由片選信號(hào)和地址信號(hào)構(gòu)成。舉個(gè)例子,pdiusbd12的片選引腳cs_n與lpc2200的bank2片選引腳相連,而pdiusbd12的a0則需要與lpc2200的地址線a0相連了。
usb(d12)
——硬件電路設(shè)計(jì)要點(diǎn)
(1)pdiusbd12振蕩電路的電容c1與c2必須分別為68pf和22pf,否則可能會(huì)造成pdiusbd12工作時(shí)鐘不正常。
(2)注意串聯(lián)在d+和d-上的磁珠的型號(hào),如果型號(hào)選擇不當(dāng)會(huì)影響usb總線的穩(wěn)定性。磁珠元件內(nèi)部由電阻與電感組成,所以選型時(shí)必須綜合考慮usb總線頻率與磁珠的阻抗是否匹配。
(3)d+/ d – 線上應(yīng)串接18歐的匹配電阻。
液晶接口
液晶是一種在一定溫度范圍內(nèi)呈現(xiàn)既不同于固態(tài)、液態(tài),又不同于氣態(tài)的特殊物質(zhì)態(tài),它既具有各向異性的晶體所特有的雙折射性,又具有液體的流動(dòng)性。液晶顯示器件(英文的簡(jiǎn)寫(xiě)為lcd)就是利用液晶態(tài)物質(zhì)的液晶分子排列狀態(tài)在電場(chǎng)中改變而調(diào)制外界光的被動(dòng)型顯示器件。
液晶顯示屏是平板顯示器件中的一種,具有低工作電壓、微功耗、無(wú)輻射、體積小等特點(diǎn),被廣泛應(yīng)用于各種各樣嵌入式產(chǎn)品中,如手機(jī)、pda、數(shù)碼相機(jī)等。
——液晶屏分類
按顯示原理分:tn(twist nematic)扭曲向列型、stn(super twist nematic)超扭曲向列型、tft(thin film transistor)薄膜晶體管型等。
按顏色分:?jiǎn)紊痢?級(jí)灰度屏、8級(jí)灰度屏、16級(jí)灰度屏、64級(jí)灰度屏、256級(jí)灰度屏、16色屏、256色偽彩色屏、tft真彩色屏等。
觸摸屏:電阻式觸摸屏(四線電阻式觸摸屏、五線電阻式觸摸屏)、表面聲波觸摸屏、電容式觸摸屏、紅外線觸摸屏等。
——觸摸屏
四線電阻式觸摸屏(簡(jiǎn)稱四線式觸摸屏)包含兩個(gè)透明的阻性層。其中一層在屏幕的左右邊緣各有一條垂直總線,另一層在屏幕的底部和頂部各有一條水平總線。四線式觸摸屏是最常用的觸摸屏之一,所以這里將對(duì)其作重點(diǎn)介紹。
觸摸屏的兩個(gè)金屬導(dǎo)電層分別用來(lái)測(cè)量x軸和y軸方向的坐標(biāo)。用于x坐標(biāo)測(cè)量的導(dǎo)電層從左右兩端引出兩個(gè)電極,記為x+和x-。用于y坐標(biāo)測(cè)量的導(dǎo)電層從上下兩端引出兩個(gè)電極,記為y+和y-。這就是四線電阻式觸摸屏的引線構(gòu)成。
當(dāng)在一對(duì)電極上施加電壓時(shí),在該導(dǎo)電層上就會(huì)形成均勻連續(xù)的電壓分布。若在x方向的電極對(duì)上施加一確定的電壓,而y方向電極對(duì)上不加電壓時(shí),在x平行電壓場(chǎng)中,觸點(diǎn)處的電壓值可以在y+(或y-)電極上反映出來(lái),通過(guò)測(cè)量y+電極對(duì)地的電壓大小,便可得知觸點(diǎn)的x坐標(biāo)值。同理,當(dāng)在y電極對(duì)上加電壓,而x電極對(duì)上不加電壓時(shí),通過(guò)測(cè)量x+(或x-)電極的電壓,便可得知觸點(diǎn)的y坐標(biāo)值。
在使用觸摸屏?xí)r,需要一個(gè)adc轉(zhuǎn)換器將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),通常直接使用觸摸屏控制器完成這一功能,也可以使用微處理器內(nèi)部的adc轉(zhuǎn)換器實(shí)現(xiàn)。觸摸屏控制器的主要功能是在微處理器的控制下向觸摸屏的兩個(gè)方向分時(shí)施加電壓,并將相應(yīng)的電壓信號(hào)傳送給自身a/d轉(zhuǎn)換器,在微處理器spi口提供的同步時(shí)鐘作用下將數(shù)字信號(hào)輸出到微處理器。常見(jiàn)的觸摸屏控制器如:ads7843/7846、mk715等等。
——點(diǎn)陣式液晶模塊
在嵌入式系統(tǒng)應(yīng)用中,如果微控制器本身帶有液晶驅(qū)動(dòng)控制功能,則可以直接對(duì)點(diǎn)陣式液晶顯示屏進(jìn)行連接控制;如果微控制器本身沒(méi)有液晶驅(qū)動(dòng)控制功能,則需要外擴(kuò)液晶驅(qū)動(dòng)板來(lái)連接液晶顯示屏,或者使用點(diǎn)陣式圖形液晶顯示模塊。
由于點(diǎn)陣式液晶顯示屏的引腳較多,生產(chǎn)廠家通常會(huì)將液晶顯示屏和驅(qū)動(dòng)電路裝配在一起,形成液晶模塊,即lcm。液晶模塊在很大程度上方便了用戶的使用,用戶只要將其與微控制器連接,即可進(jìn)行圖形的顯示輸出控制。
這里以smg240128a點(diǎn)陣圖形液晶模塊為例,介紹如何與lpc2000系列微控制器連接使用。
smg240128a點(diǎn)陣圖形液晶模塊的點(diǎn)像素為240×128點(diǎn),黑色字/白色底,stn液晶屏,視角為6:00,內(nèi)嵌控制器為東芝公司的t6963c,外部顯示存儲(chǔ)器為32k字節(jié)。液晶模塊采用8位總線接口與微控制器連接,內(nèi)部集成了負(fù)壓dc-dc電路(lcd驅(qū)動(dòng)電壓),使用時(shí)只需提供單5v電源即可。
t6963c是東芝公司的點(diǎn)陣式圖形液晶控制器,t6963c常用于中規(guī)模的單色點(diǎn)陣圖形液晶的顯示控制器,其最大特點(diǎn)是具有獨(dú)特的硬件初始化值設(shè)置功能,顯示驅(qū)動(dòng)所需的參數(shù)如占空比系數(shù)、驅(qū)動(dòng)傳輸?shù)淖止?jié)數(shù)/行、字符的字體選擇等均由引腳電平設(shè)置。相關(guān)參數(shù)如下:
工作電壓:5.0v
最大驅(qū)動(dòng)液晶點(diǎn)陣:?jiǎn)紊?40×128(單屏)
支持存儲(chǔ)器大?。?4k字節(jié)sram
mcu接口:8位并行數(shù)據(jù)接口
顯示方式:圖形方式、文本方式、圖形文本混合方式
字符發(fā)生器:128種5×8、6×8、7×8、8×8字符(cgrom)
可管理外部2k字節(jié)的cgram(8×8字符)
驅(qū)動(dòng)lcd占空比: 1/16~1/128
低功耗:顯示期間電流典型值3.3ma
網(wǎng)絡(luò)接口
tcp/ip協(xié)議和以太網(wǎng)協(xié)議是使用最廣泛的通訊協(xié)議,如果一個(gè)嵌入式系統(tǒng)沒(méi)有以太網(wǎng)接口,其價(jià)值將大打折扣。
以太網(wǎng)底層協(xié)議的實(shí)現(xiàn)由以太網(wǎng)控制器來(lái)負(fù)責(zé),目前比較常用的10mbps嵌入式以太網(wǎng)控制芯片有rtl8019as、cs8900等,而100mbps的有l(wèi)an91c111等,這里主要介紹rtl8019as和lan91c111。
——rtl8019簡(jiǎn)介
rtl8019as是一種高度集成的以太網(wǎng)控制芯片,能簡(jiǎn)單地實(shí)現(xiàn)plug and play并兼容ne2000、掉電等特性。在全雙工模式下,如果是連接到一個(gè)同樣是全雙工的交換機(jī)或集線器,就可實(shí)現(xiàn)同時(shí)接收和發(fā)送。這個(gè)特性雖然不能把傳輸速率從10mbps提高到20mbps,但是在執(zhí)行以太網(wǎng)csma/cd協(xié)議時(shí),可以避免更多的沖突的發(fā)生。而microsoft's plug and play功能就可以為用戶減輕對(duì)資源配置的煩惱(如irq 、i/o address等)。
器件特性
支持pnp自動(dòng)檢測(cè)模式;
支持ethernet ii 和 ieee802.3 10base5, 10base2, 10baset;
軟件兼容8位或16位的ne2000模式;
支持跳線和非跳線模式;
支持在非跳線模式下的microsoft’s plug and play配置;
支持在全雙工模式下的雙倍信道帶寬;
支持utp、aui 、bnc的自動(dòng)檢測(cè);
在10baset下支持自動(dòng)極性修正;
支持8路中斷請(qǐng)求(irq);
支持16位i/o地址;
內(nèi)建16k sram;
支持四盞可編程診斷l(xiāng)ed。
——rtl8019與lpc2000的硬件電路設(shè)計(jì)
rtl8019as與lpc2200一般通過(guò)外部總線進(jìn)行連接。我們假設(shè)rtl8019as與lpc2200的連接關(guān)系如下表所示。
——rtl8019與lpc2100的硬件電路設(shè)計(jì)
lan91c111芯片內(nèi)部集成了mac控制器、物理層控制器。mac控制器可以把數(shù)據(jù)從fifo中發(fā)送到物理層控制器中,再由物理層控制器發(fā)送到網(wǎng)絡(luò)。而芯片與cpu的接口比較豐富。
——lan91c111與lpc2200的硬件電路設(shè)計(jì)