<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于嵌入式系統開(kāi)發(fā)平臺的設計與實(shí)現

基于嵌入式系統開(kāi)發(fā)平臺的設計與實(shí)現

作者: 時(shí)間:2007-09-10 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要: 本文首先介紹了EVB2107評估板、評估板的開(kāi)發(fā)工具和集成開(kāi)發(fā)環(huán)境,然后對擴展板上各模塊都從原理入手結合該模塊要的功能說(shuō)明其思想和原理,并就各模塊驅動(dòng)程序的編程思想及流程進(jìn)行了論述。
關(guān)鍵詞:EVB2107評估板集成開(kāi)發(fā)環(huán)境網(wǎng)絡(luò )接口控制器

1 前言

是以應用為中心、以計算機為基礎、軟件硬件均可剪裁、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專(zhuān)用計算機系統。近年來(lái),隨著(zhù)計算機、微電子、通信及網(wǎng)絡(luò )技術(shù)的發(fā)展,系統滲透到各個(gè)領(lǐng)域。由于嵌入式系統通常采用微控制器芯片來(lái)構建,但微控制器生產(chǎn)商通常只提供芯片的編譯器和連接器,而不提供完整的;應用開(kāi)發(fā)商往往根據微控制器來(lái)構建自己的應用產(chǎn)品,通常不提供完整的尤其是通用的嵌入式系統;國外第三方公司提供的一般都功能單一、結構簡(jiǎn)單且價(jià)格昂貴。國內的開(kāi)發(fā)平臺一般也只是一個(gè)簡(jiǎn)單的評估板和調試平臺,通常不能支持高檔微控制器。因此為了滿(mǎn)足開(kāi)發(fā)各種應用系統的需求,本文提出了嵌入式系統開(kāi)發(fā)平臺的方法。

在硬件上,嵌入式系統開(kāi)發(fā)平臺以各種微控制器為核心,以嵌入式系統的常用組成部件的并集為基本要素,構建的硬件和調試平臺。作為通用的開(kāi)發(fā)平臺,平臺支持以8位、16位、32位微控制器家族中1~2款具有代表性的微控制器為核心,并且包括網(wǎng)絡(luò )通信、USB高速串行通信、存儲器系統擴展、大屏幕液晶顯示器/觸摸屏控制器等常用部件。在軟件上,嵌入式系統開(kāi)發(fā)平臺以嵌入式微內核實(shí)時(shí)操作系統為核心,提供了各種軟硬件資源的管理程序,豐富的函數庫和調試工具,以及各種功能模塊的標準化應用設計例程,構造了一個(gè)基本的調試和開(kāi)發(fā)平臺。在針對具體的嵌入式系統應用開(kāi)發(fā)時(shí),只需要在此平臺基礎上對軟、硬件進(jìn)行適當剪裁、組裝,就可以完成一個(gè)實(shí)際的嵌入式系統。

2 EVB2107評估板的資源與開(kāi)發(fā)環(huán)境

EVB2107評估板是以32位微控制器MMC2107為核心,擴展了存儲器、OnCE接口、串行接口、電源電路等模塊,組成了一個(gè)板級的基本系統,其邏輯結構如圖1所示。

EVB2107評估板上提供了1MB的SRAM和2MB的FLASH存儲器,極大地擴展了板上存儲器容量??删幊踢壿嬈骷﨏PLD用來(lái)實(shí)現板內的各種控制邏輯電路,可控制評估板上的LED指示燈顯示;采樣跳線(xiàn)開(kāi)關(guān)設置值實(shí)現系統配置;產(chǎn)生存儲器地址、控制信號,實(shí)現MMC2107對評估板上外部存儲器的16位或32位訪(fǎng)問(wèn)。3個(gè)外圍端口引出插座,分別用來(lái)引出SPI、串行通信接口、定時(shí)器接口的信號,引入外部中斷請求信號,引入使用片內QADC進(jìn)行模數轉換的模擬信號。用戶(hù)可以選擇20線(xiàn)的雙排扁平電纜或其它連接線(xiàn)其與擴展板相連。用戶(hù)擴展區(即面包板)提供給用戶(hù)添加自己的器件。2個(gè)RS232串行通信接口和OnCE接口用于調試;12V直流輸入電源轉換成板內各種工作電源(如5V、3.3V),可為擴展板上各模塊供電。

EVB2107評估板通過(guò)EBDI(Embedded Background Debug Interface)與主機相連。主機上選用Metrowerks公司提供的CodeWarrior IDE集成開(kāi)發(fā)環(huán)境和Motorola公司提供的SysDS(MCORE System Development Software),構成了軟件調試環(huán)境。EBDI是EVB2107評估板與CodeWarrior IDE之間的硬件接口,EVB2107評估板上的OnCE接口與EBDI相連,EBDI通過(guò)串行線(xiàn)與主機的串行接口相連。進(jìn)行調試時(shí),CodeWarrior利用EBDI連接通路將程序下載到EVB2107評估板上,再利用CodeWarrior IDE中的Debug功能就可以進(jìn)行代碼的調試了。

3 USB接口模塊

該開(kāi)發(fā)通過(guò)USB接口與外部設備連接,USB系統由主機(Host)、集線(xiàn)器(Hub)、設備(Device)構成。它們之間通過(guò)USB總線(xiàn)相連構成一個(gè)星型拓撲結構。在一個(gè)USB系統中,必須有而且只有一個(gè)主機,主機利用USB主控制器來(lái)操縱主機和USB設備之間的數據傳輸。主控制器像其它I/O設備一樣掛在系統總線(xiàn)(PCI總線(xiàn))下面,附著(zhù)于主控制器的集線(xiàn)器是USB系統的根集線(xiàn)器(Root Hub),各級集線(xiàn)器提供若干個(gè)連接其它設備的下行端口。USB設備在邏輯上分成幾個(gè)層次,分別是設備、配置、接口和端點(diǎn),結構如圖2所示。

每個(gè)USB設備內有一個(gè)或多個(gè)邏輯連接點(diǎn),稱(chēng)為端點(diǎn)(endpoint)。端點(diǎn)是一個(gè)儲存多個(gè)字節的緩沖器,用來(lái)作為數據的緩沖區,設備通過(guò)端點(diǎn)和主機交換數據。每一個(gè)設備端點(diǎn)由一個(gè)端點(diǎn)號碼和數據方向組成,號碼范圍從00h到0Fh,方向如果為輸入(IN),表示流向主機,如果為輸出(OUT),表示流出主機。端點(diǎn)0被用來(lái)傳送配置和控制信息,可以雙向傳輸數據,其它端點(diǎn)均為單向的數據通道,即為接收端點(diǎn)或發(fā)送端點(diǎn)。USB提供有四種數據傳輸方式:控制(Control);同步(isochronous);中斷(interrupt);批量(bulk)。除端點(diǎn)0固定使用控制傳輸外,其它端點(diǎn)可根據實(shí)際傳輸數據的特點(diǎn)配置為其它三種傳輸方式。

對于相同性質(zhì)的一組端點(diǎn)的組合稱(chēng)為接口(interface),如果一個(gè)設備包含不止一個(gè)接口就稱(chēng)之為復合設備(composite device)。對大部分設備,一個(gè)接口就足夠了,但有些設備可以同時(shí)有多個(gè)作用的接口,且多個(gè)接口可同時(shí)使能。同樣,對于相同類(lèi)型的接口組合稱(chēng)為配置(configuration)。每個(gè)配置至少必須支持一個(gè)接口。大部分設備只有一個(gè)配置,但有些設備可支持多個(gè)配置,但在同一時(shí)間只有一個(gè)配置使能,一旦該配置激活,里面的接口和端點(diǎn)就都可以使用。描述符(Descriptor)是一個(gè)數據結構,是主機了解設備的格式化信息。主機在檢測設備的時(shí)候,要求設備傳回描述符以便了解設備并配置該設備,主機要求的首先是設備的設備描述符,然后是配置描述符以及每個(gè)配置的接口描述符,最后是端點(diǎn)描述符,還可能有可選的字符串描述符。

4 人機交互模塊

為給用戶(hù)提供一個(gè)良好的人機交互界面,本開(kāi)發(fā)平臺上設計了一個(gè)由液晶顯示模塊和觸摸屏控制模塊組成的人機交互模塊,如圖3所示。液晶顯示模塊由LCD(液晶顯示)屏、LCD控制器和顯示緩沖存儲器三部分組成,其中LCD屏選用信利公司的MG320240型黑白液晶顯示屏,其上覆蓋有四線(xiàn)電阻式觸摸屏,LCD控制器選用EPSON公司的S1D13305芯片,顯示緩沖存儲器采用兩片62L256構成,共64KB;觸摸屏控制模塊中的觸摸屏控制器采用BB公司的ADS7846,在A(yíng)DS7846和MMC2107之間通過(guò)標準的SPI口相連。

4.1 液晶顯示模塊

S1D13305支持文本(即字符)顯示、圖形顯示以及文、圖相結合的顯示模式;LCD顯示分辨率可達640256像素;LCD驅動(dòng)的占空系數變化范圍為1/2~1/256;內部掩模有一個(gè)具有160字符、57像素點(diǎn)陣的字符發(fā)生器ROM;支持在片外設置一個(gè)具有256字符、最大達816象素點(diǎn)陣的字符發(fā)生器ROM或RAM;片外的顯示RAM(又稱(chēng)顯示緩沖區)可達64KB;光標位置及形狀可編程控制;全部顯示屏面或部分顯示屏面可以在水平或豎直方向上平滑滾動(dòng);可以與6800系列和8080系列微控制器相接口;寬工作電壓范圍(2.7~5.5V);功耗低,在VDD=3.5V時(shí)工作電流為3.5mA,后備電流為0.05μA。

S1D13305有三方面的接口:微控制器、顯示存儲器(包括外部的字符發(fā)生器)和LCD模塊。它接受并執行微控制器的命令,來(lái)完成各種顯示控制功能,共13種命令。它把顯示數據(字符代碼或位映射圖形數據)從微控制器接收過(guò)來(lái)并產(chǎn)生寫(xiě)訪(fǎng)問(wèn)存儲器的信號,把顯示數據寫(xiě)入顯示存儲器,然后把顯示數據讀出轉化為顯示象素并生成LCD的各種時(shí)序信號,把顯示象素數據送給LCD顯示。微控制器只需向S1D13305發(fā)命令,在更新顯示內容時(shí)向S1D13305送顯示數據即可,讀/寫(xiě)顯示存儲器以及控制LCD掃描顯示的工作均由S1D13305來(lái)完成。

MMC2107與液晶顯示屏硬件接口的設計方案,如圖3所示。S1D13305可以與8080或6800兩種類(lèi)型的微處理器接口,這里根據MMC2107的接口要求,選擇前者。在設計時(shí),S1D13305的數據線(xiàn)與MMC2107的數據線(xiàn)D[31:24]相連,S1D13305的地址A0與MMC2107的地址線(xiàn)ADDR1相連,用片選3(CS3#)作為S1D13305的片選信號,在程序中,命令端口地址和數據端口地址定義如下:

#define lcd_command (*(INT8U*)(0x81800002)) // 命令端口

#define lcd_data (*(INT8U*)(0x81800000)) // 數據端口

4.2 觸摸屏模塊

ADS7846除了基本的X、Y坐標測量功能外,還可測量系統供電電池電壓、芯片溫度、觸摸壓力和外模擬量。ADS7846的核心是一個(gè)12位的逐次逼近式A/D轉換器。內部的6選1模擬多路開(kāi)關(guān)根據微控制器送來(lái)的控制字,將X+、Y+、Y-、VBAT(電池電壓)、TEMP(溫度)和AUXIN(外模擬量)中的一個(gè)送入A/D轉換器。ADS7846可以對A/D轉換提供2.5V的內參考電壓,也支持從VREF引腳輸入外參考電壓。

ADS7846與微控制器之間通過(guò)標準的SPI接口相連,它與微控制器完成一次通信需要3次SPI傳送。比如進(jìn)行坐標測量,微控制器先按控制字格式傳送一條讀坐標命令,ADS7846收到命令的同時(shí)進(jìn)行相應坐標的測量和A/D轉換,然后微控制器啟動(dòng)2次SPI讀,得到坐標值,第一次讀得前7位數據,第二次讀得后5位數據。ADS7846還設置有觸摸識別電路,當檢測到有觸摸時(shí),該電路輸出一個(gè)低電平信號,稱(chēng)為PENIRQ#(筆中斷),微控制器可以用這個(gè)信號作為ADS7846的中斷請求信號。無(wú)觸摸時(shí),PENIRQ#由外加的上拉電阻輸出為高。筆中斷變低后,MMC2107檢測到這個(gè)信號并發(fā)出啟動(dòng)轉換命令,在轉換期間,MMC2107必須維持筆中斷為低。

5 創(chuàng )新點(diǎn)總結

本文的創(chuàng )新點(diǎn)在于將各種微控制器與嵌入式微內核實(shí)時(shí)操作系統有機結合起來(lái),開(kāi)發(fā) 了一個(gè)嵌入式開(kāi)發(fā)平臺,在此基礎上可以大大縮短了應用系統的開(kāi)發(fā)周期,減少了系統開(kāi)發(fā)成本投入,降低了系統開(kāi)發(fā)風(fēng)險。同時(shí)有能滿(mǎn)足應用系統的功能、可靠性、成本、體積等要求,在未來(lái)的移動(dòng)計算機平臺、信息家電、無(wú)線(xiàn)通信設備和工業(yè)/商業(yè)控制等領(lǐng)域都有十分廣泛的應用前景。

參考文獻:

1 蕭世文編著(zhù). USB2.0硬件設計. 北京:清華大學(xué)出版社,2002
2 王田苗主編. 嵌入式系統設計與實(shí)例開(kāi)發(fā). 北京:清華大學(xué)出版社,2002
3 邵貝貝,劉慧銀編著(zhù). 微控制器原理與開(kāi)發(fā)技術(shù). 北京:清華大學(xué)出版社,1997
4 莫傳孟,馮曉云 嵌入式系統μC/OS-II的雙CAN通信構件,北京,《微機算計信息》,2004.No.3

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>