一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于在S3C2410處理器平臺上實(shí)現(xiàn)Windows CE.NET的應(yīng)用設(shè)計(jì)

電子設(shè)計(jì) ? 來源:延邊大學(xué)學(xué)報(bào) ? 作者:丁玉芳,李允俊 ? 2020-09-24 10:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目前,嵌入式微處理器種類很多,嵌入式操作系統(tǒng)要支持盡可能多的處理器,這就要完成操作系統(tǒng)針對不同處理器的定制。

本文分析了嵌入式操作系統(tǒng)Windows CE.NET的特點(diǎn),并利用工具Platform Builder 4。2完成了其在以ARM920T為核心的S3C2410處理器上的定制。

1 Windows CE系統(tǒng)和Platform Builder 4.2

Windows CE是微軟推出的一個(gè)32位、多線程、多任務(wù)的嵌入式操作系統(tǒng),是微軟專門為信息設(shè)備、移動(dòng)應(yīng)用、嵌入式應(yīng)用等設(shè)計(jì)的嵌入式模塊型操作系統(tǒng)。用戶可選擇、組合和配置Windows CE.NET的模塊和組件來創(chuàng)建用戶版的操作系統(tǒng)。

基于在S3C2410處理器平臺上實(shí)現(xiàn)Windows CE.NET的應(yīng)用設(shè)計(jì)

Windows CE.NET是WindOWS CE 3.0的后繼產(chǎn)品,其系統(tǒng)組成如圖1所示。Windows CE.NET為快速建立下一代智能移動(dòng)和小內(nèi)存占用的設(shè)備提供了一個(gè)良好的實(shí)時(shí)操作系統(tǒng),它具備完整的操作系統(tǒng)特性集和針對端對端開發(fā)的環(huán)境,并包括了定制設(shè)備所需要的一切,例如,聯(lián)網(wǎng)能力、實(shí)時(shí)性、小內(nèi)存占用、多媒體以及Web瀏覽功能。

Platform Builder 4.2是微軟提供給Windows CE.NET開發(fā)人員進(jìn)行基于Windows CE.NET平臺下嵌入式操作系統(tǒng)定制的集成開發(fā)環(huán)境。它提供了所有進(jìn)行設(shè)計(jì)、創(chuàng)建、編譯、測試和調(diào)試Windows CE。NET操作系統(tǒng)平臺的工具,開發(fā)人員可以通過交互式的環(huán)境來設(shè)計(jì)和定制內(nèi)核、選擇系統(tǒng)特性,然后進(jìn)行編譯和調(diào)試。同時(shí)開發(fā)人員還可以利用Platform Builder來進(jìn)行驅(qū)動(dòng)程序和應(yīng)用程序項(xiàng)目的開發(fā)等。

2 硬件平臺

HHARM9-EDU開發(fā)平臺是由華恒公司開發(fā)的一套用于嵌入式系統(tǒng)教學(xué)的平臺,它由核心板和底板組成。核心板上集成了Samsung S3C2410處理器、16 M 的FLASH 和64 M SDRAM。Samsung的S3C2410處理器是一款高性價(jià)比、低功耗、體積小、高性能、高集成度的微處理器,它采用203 MHz的ARM920T內(nèi)核,集成了16 KB指令緩存和16 KB數(shù)據(jù)緩存,并利用MMU實(shí)現(xiàn)對虛擬內(nèi)存的管理,LCD控制器支持STN屏或FTT屏,支持NAND flash。核心板功能模塊見圖2。

3 Windows CE. NET系統(tǒng)移植

3.1 移植流程

從根本上說,Windows CE.NET的移植過程也就是改寫B(tài)SP的過程。BSP又稱板級支持包,它是一個(gè)包括啟動(dòng)程序、OEM適配層程序(OAL)、標(biāo)準(zhǔn)開發(fā)板(SDB)和相關(guān)硬件設(shè)備的驅(qū)動(dòng)程序的軟件包。BSP是基于Windows CE.NET平臺系統(tǒng)的主要部分。操作系統(tǒng)移植步驟為:

1)對操作系統(tǒng)進(jìn)行裁減,配置各個(gè)組件并且修改相關(guān)的配置文件;

2)開發(fā)目標(biāo)設(shè)備系統(tǒng)上的設(shè)備驅(qū)動(dòng)程序,建立定制的CE操作系統(tǒng)映像文件;

3)將目標(biāo)文件下載到目標(biāo)設(shè)備上進(jìn)行調(diào)試;

4)定制操作系統(tǒng)內(nèi)核后,導(dǎo)出平臺SDK,供在Embedded Visual C++中開發(fā)上層應(yīng)用軟件。

移植流程見圖3

開發(fā)工具Platform Builder自身就提供了多種目標(biāo)板的BSP。如果用戶的目標(biāo)板和Platform Builder提供的相同,那么只需要重新編譯生成相應(yīng)的系統(tǒng)鏡像下載到目標(biāo)板即可。但是實(shí)際情況更多的可能是處理器相同,而板上的外圍設(shè)備接口不同,這時(shí)候只有修改Platform Builder中相同或相近的處理器的BSP來生成一個(gè)新的BSP,這樣就可以大大減少BSP的研發(fā)周期。

3.2 基于S3C2410板的BSP開發(fā)

BSP的開發(fā)主要包括Bootloader、OAL、本地驅(qū)動(dòng)程序的開發(fā)以及一些文件的配置 。

1)Bootloader就是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段小程序。通過這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。它存放于目標(biāo)平臺的非易失性存儲(chǔ)介質(zhì)中,如ROM 或Flash。本文移植使用的是華恒公司提供的ppcboot。

2)OAL即設(shè)備商適配層中位于Windows CE內(nèi)核和目標(biāo)硬件平臺之間的一個(gè)代碼層。開發(fā)OAL的目的是為了實(shí)現(xiàn)Windows CE.NET內(nèi)核和目標(biāo)硬件之間的通信,包括處理中斷、定時(shí)器等。

3)Device Drivers(驅(qū)動(dòng)程序)是指能夠管理虛擬或者物理設(shè)備、協(xié)議、服務(wù)等的一段軟件模塊,操作系統(tǒng)通過驅(qū)動(dòng)程序直接和硬件打交道。設(shè)備驅(qū)動(dòng)設(shè)計(jì)的具體步驟是通過Platform Builder創(chuàng)建一個(gè)新的平臺,然后根據(jù)硬件平臺的需要插入和移除驅(qū)動(dòng),需要修改的文件有Platform。Bib,Platform。reg及驅(qū)動(dòng)程序源代碼等。下面以LCD驅(qū)動(dòng)程序源碼為例,根據(jù)華恒的參考資料,需要對PB的原有驅(qū)動(dòng)進(jìn)行如下修改:

WORD TempBuffer[241][320]; // 改后buffer的大小

S3C2410DISP::S3C2410DISP(void)

{

RETAILMSG(0,(TEXT(“++S3C2410DISP::S3C2410DISP ”)));

//setup up display mode related constants

m_nScreenWidth=240; //屏幕寬由原來的480改為240

m_nScreenHeight=320; //屏幕高由原來的640改為現(xiàn)在的320

m_colorDepth=16;

m_cbScanLineLength=m_nScreenWidth*2;

m_frameBufferSize=m_nScreenHeight*m_cbScanLineLength;

//memory map register access window ,frame buffer,and program LCD controller InitializeHardware();

寄存器設(shè)置是由D:WINCE420PLATFORMsmdk2410KERNELHALcfw。c中的InitDisplay函數(shù)進(jìn)行設(shè)置。驅(qū)動(dòng)中通過讀注冊表中的相應(yīng)鍵的值來獲得framebuffer的地址。

[HKEY_LOCAL_MACHINEDriverS3C2410CONFIG]

“DisplayDll”=“s3c2410disp。dll”

“LCDVirtualFrameBase”=dword:ac100000

“LCDPhysicalFrameBase”=dword:30100000

4)平臺文件的配置。配置文件包括源代碼配置文件和操作系統(tǒng)鏡像配置文件。源代碼配置文件主要是告訴Build工具需要用到的路徑、C或Visual C++的源文件以及生成什么類型的二進(jìn)制文件等,包括Dirs、Sources、Makefile文件等。操作系統(tǒng)鏡像配置文件則主要用于給Makeimag工具生成操作系統(tǒng)鏡像,包括。bib(二進(jìn)制映像文件)、。reg(注冊表文件)、。dat(文件系統(tǒng)描述文件)、。db(數(shù)據(jù)庫文件)。本文中源代碼配置文件只對配置文件做了相應(yīng)的修改。

利用上述生成的BSP,通過Platform Builder創(chuàng)建一個(gè)新的平臺,本文直接選擇Mobile Handheld平臺,接下來根據(jù)需要進(jìn)行選擇。最后在WINCE42OPUBLICplatformRelDirSAMSUNG_SMDK2410_ARMV4Release下得到NK。bin,對其進(jìn)行壓縮之后燒寫到Flash中。同時(shí)導(dǎo)出平臺的SDK,供在EVC上開發(fā)應(yīng)用程序。

3.3 在目標(biāo)設(shè)備上操作系統(tǒng)鏡像的調(diào)試

開發(fā)板和PC機(jī)可以通過串行餅行端口以太網(wǎng)和JTAG/BDM 來進(jìn)行操作系統(tǒng)映像的下載。本文中,開發(fā)板同PC機(jī)接網(wǎng)線、串口線,設(shè)定超級終端,最后系統(tǒng)在開發(fā)板上運(yùn)行。

4 結(jié)束語

本文簡單介紹了Windows CE.NET在HHARM9-EDU 的移植過程,對于其他處理器平臺,同樣具有參考價(jià)值。Windows CE .NET在不同硬件平臺上的移植主要是根據(jù)對應(yīng)的硬件修改BSP的過程,驅(qū)動(dòng)程序的設(shè)計(jì)是構(gòu)建BSP的關(guān)鍵之一,在沒有新的外設(shè)情況下,驅(qū)動(dòng)的設(shè)計(jì)可以在PB提供的源碼基礎(chǔ)上進(jìn)行修改。對于有新的硬件設(shè)備情況下就要對其進(jìn)行重新編寫。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235330
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3614

    瀏覽量

    91432
  • 多媒體
    +關(guān)注

    關(guān)注

    0

    文章

    512

    瀏覽量

    37757
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    S3C2410處理器與Nand flash 的問題

    一個(gè)64M Nand flash存儲(chǔ)S3C2410處理器的Nand flash相應(yīng)接口連接,請問這個(gè)64M存儲(chǔ)空間是否屬于8個(gè)bank中的一個(gè)bank?因?yàn)橛行险fbank 0到bank 7
    發(fā)表于 11-20 21:41

    S3C2410處理器

    S3C2410處理器通過GPD端口連接LED1-4四個(gè)燈,試著畫出其電路連接圖,并變成實(shí)現(xiàn)其逐一點(diǎn)亮功能。
    發(fā)表于 11-23 21:50

    基于Windows CE的流驅(qū)動(dòng)程序如何去實(shí)現(xiàn)?

    S3C2410是什么?Windows CE.net 下的驅(qū)動(dòng)程序是怎樣的?基于Windows CE的流驅(qū)動(dòng)程序如何去
    發(fā)表于 04-26 06:21

    Windows CE.Net下基于流驅(qū)動(dòng)的AD驅(qū)動(dòng)設(shè)計(jì)與實(shí)現(xiàn)

    驅(qū)動(dòng)程序是連接操作系統(tǒng)和硬件的橋梁。文中作者主要討論Windows CE.Net 操作系統(tǒng)下,如何設(shè)計(jì)實(shí)現(xiàn)S3C2410芯片具有AD接口的
    發(fā)表于 08-25 09:18 ?19次下載

    Windows CE.NET平臺流接口USB驅(qū)動(dòng)的設(shè)計(jì)

    介紹了USB 系統(tǒng)的軟件結(jié)構(gòu)的基礎(chǔ)上,詳細(xì)介紹了如何在Windows CE.NET 平臺上進(jìn)行流接口的USB 驅(qū)動(dòng)程序的開發(fā)。
    發(fā)表于 09-01 10:43 ?38次下載

    Windows CE.NET平臺流接口USB驅(qū)動(dòng)的設(shè)計(jì)

    介紹了USB 系統(tǒng)的軟件結(jié)構(gòu)的基礎(chǔ)上,詳細(xì)介紹了如何在Windows CE.NET 平臺上進(jìn)行流接口的USB 驅(qū)動(dòng)程序的開發(fā)。
    發(fā)表于 09-01 11:32 ?3次下載

    S3C2410處理器 Bootloader(Vivi)源代碼

    S3C2410處理器 Bootloader(Vivi)源代碼分析 這邊的2410開發(fā)板提供的光盤上已附交叉編譯工具:arm-linux-gcc-2.95.3(源碼為cross-2.
    發(fā)表于 02-09 15:39 ?22次下載

    Windows CE.NETS3C2410處理器上的移植

      本文分析了嵌入式操作系統(tǒng)Windows CENET的特點(diǎn),并利用工具Platform Builder 4。2完成了其以ARM920T為核心的
    發(fā)表于 08-27 14:41 ?748次閱讀
    <b class='flag-5'>Windows</b> <b class='flag-5'>CE.NET</b><b class='flag-5'>在</b><b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>上的移植

    S3C2410處理器特性

    S3C2410處理器是Samsung公司基于ARM公司的ARM920T處理器核,采用0.18um制造工藝的32位微控制
    發(fā)表于 10-10 11:52 ?6002次閱讀

    Windows CE.net的串口通訊類設(shè)計(jì)

    主要介紹了 基于 W indow s CE. netS3C2410的串口通訊類設(shè)計(jì)思想。重點(diǎn)闡 述了 W indows CE.
    發(fā)表于 03-14 15:50 ?2次下載

    Win CE.NET下Boot Loader的設(shè)計(jì)與實(shí)現(xiàn)

    本文針對三星S3C2410平臺介紹Windows CE Net下Boot Loader的開發(fā)。描述系統(tǒng)引導(dǎo)程序Boot Loader的設(shè)計(jì),
    發(fā)表于 04-18 09:47 ?0次下載

    基于S3C2410Windows CEnet的智能移動(dòng)終端設(shè)計(jì)

    本文介紹 S3C2410處理器的性能以及 Windows CE. net 作為嵌入式操作系統(tǒng)的開發(fā)流程 。闡述基于
    發(fā)表于 04-18 10:46 ?0次下載

    基于Windows CEnet的串行通訊設(shè)計(jì)與實(shí)現(xiàn)

    主要介紹了自行開發(fā)設(shè)計(jì)的基于Windows CE.netS3C2410的串行通訊設(shè)計(jì)思想。重點(diǎn)闡述了Windows CE.net下的串行通
    發(fā)表于 04-18 11:28 ?5次下載

    基于S3C2410處理器Windows CE 5.0操作系統(tǒng)實(shí)現(xiàn)BSP移植

    ,是一種硬實(shí)時(shí)嵌入式操作系統(tǒng),它可以多種處理器架構(gòu)(如x86、MIPS、ARM和 SH4)上運(yùn)行,Windows CE支持ARM體系結(jié)構(gòu),這是基于
    發(fā)表于 03-06 10:10 ?1238次閱讀
    基于<b class='flag-5'>S3C2410</b><b class='flag-5'>處理器</b>對<b class='flag-5'>Windows</b> <b class='flag-5'>CE</b> 5.0操作系統(tǒng)<b class='flag-5'>實(shí)現(xiàn)</b>BSP移植

    AN-738: Windows CE.NET下使用AD7877觸摸屏控制和Intel PXA250處理器

    AN-738: Windows CE.NET下使用AD7877觸摸屏控制和Intel PXA250處理器
    發(fā)表于 03-21 12:26 ?8次下載
    AN-738: <b class='flag-5'>在</b><b class='flag-5'>Windows</b> <b class='flag-5'>CE.NET</b>下使用AD7877觸摸屏控制<b class='flag-5'>器</b>和Intel PXA250<b class='flag-5'>處理器</b>