12 2010 档案
【转】使用PB编写dll文件
摘要:在Windows CE中,所有的驱动程序都以dll形式存在。Dll文件可以用EVC来开发,也可以使用PB来开发,使用PB开发驱动程序,可以跟NK同时进行编译,要比EVC来的方便一点。这篇文章就只要介绍用PB来进行dll库开发的方法。 使用PB来开发,首先应该在你的工作平台下面建立一个目录,用来存放源文件,同时要修改dir文件,使得编译的时候能够进到源文件所在的目录。 编写dll的方法这里就不说了,反正就是写一堆的函数,这里主要解释一下使用PB编译,需要增加的文件。 第一个文件是sources文件,这里给出了一个sources文件的例子: TARGETNAME=led 使用TARGE
阅读全文
【转】WINCE60下修改了PUBLIC下的源代码的快速编译方法
摘要:WINCE60下修改了PUBLIC下的源代码的快速编译方法因为WINCE的组件都是分成一个个LIB/DLL的形式存在,所以只要把单个LIB/DLL编译更新然后再重新连接NK就可以起到快速编译NK的方法。不过由于NK里面的各个组件都是DLL的形式,这些DLL依存一些对应的LIB文件,所以要更新DLL就得先更新那些LIB的内容先,而WINCE60下的PUBLIC下的组件一般是以LIB文件的形式存在,所以要快速编译PUBLIC下的源代码就先编译这些LIB文件,更新完这些LIB文件再更新依赖这些LIB文件的DLL,也只有把DLL也更好了,最后对PUBLIC(LIB形式)的修改才能最后反应到NK里面去。
阅读全文
【转】wince蓝牙驱动(2)
摘要:之前没有摸过蓝牙,这回的项目里面有蓝牙模块.而我目前对蓝牙只知道的有:1.我们的设计里蓝牙模块是连接在串口上的.2.蓝牙不是蓝色的牙齿.呵呵,,我不得不提前开始接触一下蓝牙协议栈.粗看起来还挺复杂庞大的.单蓝牙组织公布的规范1.1多达1084页.先看张图(不知道如何贴图,图片是msdn里面蓝牙协议栈的结构图,可以访问http://msdn2.microsoft.com/en-us/library/ms890956.aspx)东西很多,先分类吧!从底向上看,蓝牙的协议和规范可以分这些大类:一:最底层.就是上图蓝色部分.其中有射频规范,基带规范和链路管理层(LinkManagerProtocol)
阅读全文
【转】wince 蓝牙驱动(1)
摘要:下面是WinCE中蓝牙协议栈的架构图:可以看到,HCI传输层以上的协议层全部由WinCE实现了,所以蓝牙模块只需要实现了基带层和链路管理层,并提供HCI传输接口给WinCE就可以了。WinCE支持使用USB、UART、SDIO等接口的蓝牙模块。 开发板上使用的是CSR-BC4-EXT-C2-PA蓝牙模块,模块接在串口0上。使用CSR的BCSP传输协议。以下是配置方法: 1 添加Bluetooth Stack with Universal Loadable Driver 2 注册表配置 [HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\Transp
阅读全文
【转】如何编译wince platform builder里面的driver
摘要:Cloning the Microsoft Public Common CodeSummary: Shows you how to make changes to the public source that ships with Microsoft Windows CE .NET 4.2. (9 printed pages)This month we were going to write about building headless device images for Microsoft® Windows® CE.NET, building on last month's article
阅读全文
【转】WINCE SOURCES文件详析
摘要:1、SOURCES文件的结构:首先我们来看一个SOURCES文件,如下所示,SOURCES主要包括了一些用户的宏定义,这些宏会被MAKEFILE和NMAKE使用,来编译项目的源代码。!if "$(BSP_NOHSMMC_CH0)"=="1" ##如果SMDK6410.BAT中SET BSP_NOHSMMC_CH0=1那么这个项目将不被编译。SKIPBUILD=1!endifSYNCHRONIZE_DRAIN=1 RELEASETYPE=PLATFORM##生成文件存放的位置TARGETDEFNAME=s3c6410_hsmmcDEFFILE=$(TARGETDEFNAME).def##指定DL
阅读全文
触摸屏校准。
摘要:先得到校准数据。获得方法:通过运行校屏程序校屏得到,从PB的tools-》remote registry edit-》移动设备的注册表-》HK_LOCAL_MACHINE-》HARDWARE-DEVICEMAP-TOUCH中复制到即platform.reg中[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]下的calibration=“”。
阅读全文
【转】如何使用HIVE-based Registry
摘要:CE的HIVE注册表可以使用户操作的相关设置以注册表的形式保存到DOM等存储设备中.加了HIVE的相关组件后,可以通过手动或自动方式保存信息到存储设备里.l手动存储方式是执行一个软件后,把用户设置的相关信息回写到HIVE注册表里面l自动存储方式是在Platform.reg中把RegistryFlags设置成1,当用户启动系统后,设置相关信息就会自动的保存到HIVE Registry里面.在CE5.0 CE6.0下的具体操作如下所示一.在CE6.0下实现方法1.添加组件: lCatalog-Core OS-CEBASE-FileSystem and Data Store-File Sys
阅读全文
【转】WinCE启动失败的原因与解决办法分析
摘要:WinCE启动失败的原因与解决办法分析http://developer.51cto.com 2009-07-31 09:14 潘少红 IT168 我要评论(0) 本文通过对一次真实嵌入式项目的分析,总结了WinCE启动失败的几大原因及解决方案。本文通过一个真实的嵌入式项目进行说明。文中的嵌入式系统用的是ARM处理器+WinCE平台,项目的目的是要把WinCE平台从旧版本移植到WinCE6.0平台上。但结果是这个WinCE系统在启动的时候经常会出现失败,而且每次失败的原因都莫明其妙和不尽相同。这使到我们开发团队每个人在启动WinCE系统时都心惊肉跳,非常担心系统又再一次出现让人意想不到的失败。这
阅读全文
【转】wince下如何加载驱动
摘要:1、设备管理器: 设备管理器是Windows CE.Net设备管理的核心机构,它主要负责跟踪、维护系统的设备信息并对设备资源进行调配。(在%WINCEROOT%\PRIVATE\WINCEOS\COREOS \DEVICE\LIB里可以看到Windows CE设备管理器的代码) 设备管理器在Windows CE中主要表现为Device.exe的文件,Device.exe在系统启动的时候通过注册表里面的HKEY_LOCAL_MACHINE\Init\"Launch20"=“Device.exe"加载(Windows CE启动时分别执行[HKEY_LOCAL_MACHINE\init]键下所有子键
阅读全文
【转】Windows CE内核启动分析
摘要:移植或者创建一个BSP,也许需要先熟悉Windows CE的内核启动过程. 目录 基于ARM的Windows CE内核启动分析1 1.startup.s2 2.KernelStart2 2.1 ARMInit()3 2.1.1 OALIntrInit3 2.1.2 OALTimerInit4 2.1.2.1 Variable Tick Scheduler4 2.2 KernelInit()4 2.3 FirstSchedule5 1.startup.s 内核入口点startup.S,内核从这里启动.因为内核经过bootloader加载,内核运行时候,已经由bootloader完成了硬件的基本初
阅读全文
【转】友善之臂2440中WinCE BSP中串口打印信息的实现介绍
摘要:不管在WinCE5.0还是在WinCE6.0中,我们在调试驱动或者应用的时候都会用到打印函数。在驱动里面,我们可能会用DEBUGMSG(..),RETAILMSG(..),还有NKDbgPrintfW(..)。在我们使用这些打印函数调试我们的程序之前,我们需要实现串口打印功能。在WinCE的BSP中,如果想调用DEBUGMSG(..)或者RETAILMSG(..)来从串口打印信息,必须在我们的BSP中的OAL层找到debug.c,在这个文件里面实现下面的4个函数:void OEMInitDebugSerial(void) : 初始化用于打印信息的串口int OEMReadDebugByte (
阅读全文
【转】wince中BIB文件的详细介绍
摘要:在WinCE中使用的一个重要的文件就是BIB文件,全称Binary Image Builder File。在WinCE的编译过程中会用到BIB文件,应该是在最后的Makeimg阶段。所有的BIB文件会被合并成CE.bib文件,然后Romimage.exe会根据BIB文件中的描述来决定哪些文件最终被包含到WinCE image中。当然,BIB文件还决定了WinCE设备内存的分配,其中定义了WinCE image占用哪块内存,Framebuffer占用哪块内存等。在BIB文件中分为4大项:MEMORY项,CONFIG项,MODULES项和FILES项。下面分别作个解释:MEMORY:定义了内存分配
阅读全文
【转】扩大WinCE可用物理内存
摘要:WinCE系统内核的源代码中默认使用28M的内存。如果在Build Option中选中Run-Time Image Can be Larger than 32 MB (IMGRAM64=1)项,那么定制WinCE的时候Platform Builder会使用64M的内存来编译。对于大于64M内存系统的定制需要做些修改。对于x86架构的GEODE处理器(注意此处是对于Geode处理,如果是CEPC则不需要改源代码,CEPC的内存修改方法),要支持大于64M的内存必须修改源码。首先在WinCE安装目录找到%_WINCEROOT%\Public\Common\Oak\Csp\x86\Inc\Pc.h文
阅读全文
【转】wince内存配置的一些体会
摘要:注:以下分析是基于S3C2450的DRAMC控制器.1、CPU的BANK0到BANK5可以用于SROM(包括Norflash)、SRAM或其它外设的片选(片选信号nRCS),BANK6用于SDRAM、DDR内存(片选信号nSCS)。如果访问到不同BANK的地址范围DRAMC控制器则会激活对应的片选信号。关于此bank的最大访问是64MBytes目前不是很明白。找到一篇说明:http://blog.csdn.net/gooogleman/archive/2009/05/18/4197170.aspx2、DRAMC控制器支持32位的SDRAM和16位的DDR,地址空间达到128MByte,这是由D
阅读全文
【转】wince内存配置
摘要:wince内存配置WINCE的内存(包括SDRAM及FLASH)的配置包含两个方面:源代码(包括C和汇编)中的定义,及系统配置文件CONFIG.BIB中的定义。源代码中需要定义内存的物理及虚拟地址,大小,并初始化名为OEMAddressTable的结构数组,以告知系统物理地址与虚拟地址的对应关系,系统根据其设置生成MMU页表。而CONFIG.BIB中一般会将内存定义成不同的段,各段用作不同的用途。CONFIG.BIB文件CONFIG.BIB文件分两个部分,我们且称之为段,MEMORY段和CONFIG段。MEMORY段定义内存的分片方法,CONFIG段定义系统其它的一些属性。以下是一个CONFI
阅读全文
【转】关于CONFIG.BIB的一个问题
摘要:一个菜鸟问题,关于CONFIG.BIB的IF IMGFLASH !IF BSP_EP931X_COPY_FLASH_TO_RAM !;**********************************************************************;; Boot from RAM;;**********************************************************************MEMORYRESERVED 80000000 00008000 RESERVEDDRV_GLB 80008000 00001000 RESERVED
阅读全文
【转】Platform Builder 5下WinCE 5.0目录结构
摘要:Platform Builder 5下WinCE 5.0目录结构Platform Builder 5已经自带WinCE 5.0,安装过程会指定WinCE 5.0的安装路径,默认为X:\WINCE500,WINCE500即为WinCE 5.0的根目录。根目录下主要有以下几个目录:PUBLIC, PLATFORM, PRIVATE, PBWorkspaces, OTHERS, SDK。PUBLIC目录 PUBLIC目录包含构建系统所需要的工具、部分组件的源码、驱动程序、链接库等。以下是部分重要目录的说明,大部分目录看名字就知道是什么组件了。 ├─PUBLIC │ ├─COMMON 存放平台无关的通
阅读全文
【转】Windows CE USB摄像头驱动编写
摘要:【转】Windows CE USB摄像头驱动编写 非常感谢下面两位高人作者: Douglas Boling译: MoonLordWinCE下被询问次数最多的驱动是USB摄像头驱动,其原由并不难理解。首先,没个人都喜欢看视频。插上摄像头并用它来捕获视频或静态图像,然后在本地欣赏或者将其发布到网络上,这是一件非常酷的事情。其次,有大量Wince下的驱动程序被公开,所以诚实的说,还是有很多种类的驱动有待开发。最后,虽然有WinCE有现成的1394端口摄像头驱动可以获得,但是更多的系统对USB的支持要多于对1394端口的支持。考虑到这些因素是写一个USB摄像头驱动的时候了。工作的目标确立后,接下来就要
阅读全文
|