原创 Bootloader 的主控函數bootloadermain函數分析

startup.s對底層進行初始化後,調用main()此函數一般位於main.c下面 main函數調用BLCOMMON.c下的BootloaderMain()函數,bootloader的主控權喪失。 學習何老師書的內容摘抄如下:  //目

原创 Windows CE下操作GPIO的方法(以ARM9 S3C2410爲例)

GPIO 是ARM芯片最基本的輸入輸出通道,在ADS下操作就是一個單片機工作,直接讀寫其寄存器。在ARM9平臺上,Windows CE系統將GPIO的實地址(例如2410的GPIO的基地址爲0x56000000)映射到虛擬地址空間(GPI

原创 IClass與電源管理

前段時間爲J9項目上添加電源管理,中間走了一些彎路。之前錯誤的認爲,IClass只是與電源狀態的改變方法有關,也就是說IClass的正確與否只會影響到設備電源狀態的正確與否,而不會造成設備是否可以支持設備電源狀態的轉換。 結果後來整USB

原创 bootloader 開發,最鬱悶前三步

在書市和網上溜達一圈,只發現兩本關於Bootloader的開發資料。一個是電子工業出版社出版的《Windows CE.NET實用開發技術》;另一個是PB的HELP文件。其他大多爲介紹Bootloader相關知識的,最多也就是修改一下官方的

原创 CE6內核啓動過程-新角度

開發人員有必要理解CE系統啓動過程。首先回顧一下系統怎樣建立起來的。微軟工具鏈生成.exe和.dll文件。這些文件都包含了Portable Executable格式,簡稱PE格式。它們的結構都是一樣的:1、  是一種common obje

原创 配置config.bib的注意事項以及錯誤分析

一、編譯出NK,但是但是下載NK後不會啓動。 原因:就是DNW設置地址不對,並不是每個NK下載到0x32000000都能運行的。欲知詳情,請看下面。 先看這個能在0x32000000運行的NK的內存映射表 OEMAddressTable

原创 winCE 註冊表相關討論

 保存到註冊表中 這一章主要講解Windows CE.NET下註冊表相關技術。 1、 對象存儲(object store)  對象存儲是Windows CE默認的數據存儲機制。任何新創建的內核中都默認包含對象存儲器。對象存儲的實質是在RA

原创 Eboot啓動代碼分析

啓動代碼通常都是用處理器相應的彙編代碼寫成,比較晦澀,但是卻包含了很多與平臺相關的信息,對初始化代碼進行分析有利於對平臺的理解。本文將對Eboot的初始化代碼進行分析,主要包含從Reset到進入C的main開始。mov     r0, #

原创 Windows CE Virtual Memory Layout for Debugging

from:http://blogs.msdn.com/sloh/archive/2005/02/25/380475.aspxWindows CE Virtual Memory Layout for DebuggingI want to b

原创 使用KITL的詳細教程

 在幾個以前,我曾經玩過一下子KITL,但是那時候什麼都不懂,根本沒有了解KITL是什麼東西,更別說是工作原理了,這段時間都是在調試一些鍵盤等本機驅動(系統啓動時候就啓動的驅動),這個驅動不能使用驅動調試助手來調試,所以非常鬱悶,每次都要

原创 PB 配置文件解析

這篇文章主要講解PB的配置文件。從用途方面分析,PB包含兩種配置文件。分別是源碼配置文件和鏡像配置文件。下面分別講解這兩種配置文件。 一、源碼配置文件  源碼配置文件用於編譯源碼時使用。這裏的源碼是指Windows CE公開的源碼,如驅動

原创 WinCE文件目錄定製及內存調整

本文介紹了WinCE文件目錄定製及內存調整的操作方法。WinCE的文件目錄結構以及文件的位置都是在DAT文件中定義的。所有的dat文件會在WinCE編譯時合併成initobj.dat文件,WinCE會根據DAT中的描述生成相應目錄。 這個

原创 基於Windows CE的KITL技術

  KITL(Kernel Independent Transport Layer)是基於Windows CE平臺的一種軟件技術,開發商基於它可以很容易地支持各種調試功能。因爲Windows CE的調試是一種遠程調試,所以開發工作站(運行

原创 Kitl是怎樣工作的?

part1. kitl初始化 ------------- Kitl的加載於其他調試服務之前,以提供爲這些調試服務發佈調試信息和接收主機調試命令的的通道。通常kitl在系統HAL初始化工作完成後進行加載,MS建議在OEMInit中啓動kit

原创 Mini2440 Ethernet KITL調試

前幾天把串口的KITL調試完成,就想着之前一直用網絡KITL,而且串口KITL比較慢,所以就想也把2440的網絡kITL架起來。 但是最終還是失敗了,原因很簡單,自己太菜了啊!好多問題知道的人都不屑於告訴你啊。哎...只能暫時擱置,磨刀去