WinCE_OS_Driver_BSP
周齐子
嵌入式开发修行者;android,linux,ARM/RISC-V架构等
展开
-
FAL和nand的访问(坏块管理,逻辑扇区访问)1004214325
Fal主要包括MappingTable, SectorMgr, Compactor 几个模块。MappingTable是映射表,nand驱动加载后扫描nand并在内存建立映射表用来实现logical地址到实际physical地址的转换。 SectorMgr是扇区管理模块, Compactor是垃圾回收模块。地址重映射应该是FAL最主要的功能。 按思维习惯,先了解下为什么?下面2个特性决定了设计FA原创 2009-04-17 10:16:00 · 926 阅读 · 0 评论 -
2440从NANDFlash启动之bootloader运行以前
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://bluefish.blog.51cto.com/214870/67093 一直对2440上电以后怎么从nandflash中启动不是很清楚,闲来无事看了下s3c2440的用户手册,看到下面这样一段话: S3C2440A b转载 2009-10-24 10:25:00 · 454 阅读 · 0 评论 -
只争朝夕,WinCE快速启动有窍门
只争朝夕,WinCE快速启动有窍门上一篇 / 下一篇 2009-06-23 19:28:22 / 个人分类:微软技术 查看( 167 ) / 评论( 2 ) / 评分( 0 / 0 ) 【IT168 专稿】http://tech.it168.com/a2009/0513/276/000000276195.shtml快速启动对于嵌入式消费电子产品是比较重要的要求之一。我这次负责转载 2009-10-24 10:44:00 · 612 阅读 · 0 评论 -
S3c2440A平台HIVE注册表+binfs的实现 || WinCE中的Flash分区和CheckSum点滴 转帖
S3c2440A平台HIVE注册表+binfs的实现 || WinCE中的Flash分区和CheckSum点滴2009-04-24 14:41S3c2440A平台HIVE注册表+binfs的实现 今天总结一些实现的过程和原理。 我的例子是基于samsung S3C2440A+samsung ONENAND+WinCE5.0的,开发平台是p转载 2009-08-27 09:11:00 · 1088 阅读 · 0 评论 -
WinCE 下添加MFC支持包
在WinCe的开发过程中,遇到一些应用软件需要MFC的支持,而在开发初期为了节省Flash空间主要是我们用不到,我们并没有把MFC加到NK中,而MFC其实就是将mfcce400.dll文件添加到/Windows 文件夹中, 方法一: 在Platform Builder中的Catalog中的 core os/Windows CE Devices/Applications a原创 2009-04-17 12:01:00 · 1101 阅读 · 0 评论 -
WINCE的内存配置 (转贴)
WINCE的内存配置 WINCE的内存(包括SDRAM及FLASH)的配置包含两个方面:源代码(包括C和汇编)中的定义,及系统配置文件CONFIG.BIB中的定义。源代码中需要定义内存的物理及虚拟地址,大小,并初始化名为OEMAddressTable的结构数组,以告知系统物理地址与虚拟地址的对应关系,系统根据其设置生成MMU页表。而CONFIG.BIB中一般会将内存定义成不同的段,各段用作不同原创 2009-04-17 10:33:00 · 449 阅读 · 0 评论 -
[转]2410 nboot和Eboot的说明和调用方式
nboot是从NAND flash读image到内存并执行,eboot是从以太网(用tftp)下载image到内存并执行。将nboot.nb0烧到第0块,将eboot.nb0烧到第2块。启动时nboot从flash读出eboot并执行之,如何就可以通过pb把nk.bin下载到目标板上执行了,开发机和目标板可以用交叉线直接连接。 nboot是nand flash bootloade转载 2009-04-17 10:19:00 · 588 阅读 · 0 评论 -
Windows CE驱动程序结构概述(转贴)
Windows CE驱动程序结构概述Windows CE的驱动程序可以从多种角度进行区分。1.从加载以及接口方式来区分可以分为本机设备驱动(Built-In Driver)、可加载驱动(Loadable Driver)以及混合型驱动。(1)本机设备驱动本机设备驱动即Native Device Drivers。这些驱动程序在系统启动时,在GWES的进程空间内被加载,因此它们不是以转载 2009-04-17 09:58:00 · 627 阅读 · 0 评论 -
转帖]实现永久保存注册表数据(转自阿冰blog)
实现永久保存注册表数据(转自阿冰blog) 注册表类型分为基于对象存储的注册表和基于HIVE的注册表,在定制内核的时候只能选择其中一种。从理论上讲这两种注册表都能够实现永久保存注册表数据,但是采用不同的类型会影响CE的启动顺序和启动速度,还会影响内存的使用量。我还是趋向于采用基于HIVE的注册表来实现永久保存注册表数据,这也是一个发展趋势。在讲解之前先简单描述如果CE采用基于HIVE的注册表,那么转载 2009-04-17 11:51:00 · 580 阅读 · 0 评论 -
Platform Builder的映像配置文件
使用Platform Builder构建WinCE操作系统,除了添加/删除Catalog item,还有四种配置文件是用来配置最终生成的系统映像:*.BIB, *.REG, *.DAT, *.DB。四种配置文件都可以使用IF…ENDIF语句和环境变量,配合环境变量,可以使配置文件更加灵活。 BIB文件BIB(binary image builder)文件指示如何构建系统的转载 2009-04-17 10:12:00 · 518 阅读 · 0 评论 -
WINCE下内核模式和用户模式有什么区别[转]
WINCE下内核模式和用户模式有什么区别?摘录自:付林林老师的《WINCE常见问题解答 v0.1》 为了使读者能够详细了解WINCE的地址映射原理还有两种模式,在这里我分几个部分说明: 1、WINCE内核nk.exe的任务是管理操作系统核心功能。按照OEMAddressTable的映射要求,所有物理地址都映射到0x80000000以上,所以对于内核程序nk.e转载 2009-04-17 09:46:00 · 609 阅读 · 0 评论 -
WinCE 应用程序开机自动运行的三种方法
WinCE 应用程序开机自动运行的三种方法关键字: WinCE 自动运行近日在开发过程中遇到WinCE应用程序开机自动运行的问题,在网上找了找,发现大概有以下三种方法:1、 将应用程序和应用程序快捷方式添加到映像里,再将快捷方式添加到StartUp目录下,这样当系统运行后应用程序就能自动运行;2、 直接替换Wince的SHELL,即修改注册表:[HKEY_LOCAL_MACHINE转载 2009-04-17 11:31:00 · 669 阅读 · 0 评论 -
WinCE分析Flash分区原则和块的分配是如何进行的以及CheckSum的原理和应用(转贴)
WinCE中经常用到CheckSum的地方就是对即将烧写进Flash中的image文件进行校验,和烧写完对写入的数据进行完整性检查,一般这里的image有OSimage和UT的bin文件两种。CheckSum是一种用于检查数据文件有没有发生变化的方法,对于一些重要的数据文件为了检查传输过程过程中有没有数据的损坏或丢失,常常会用到CheckSum算法。 CheckSum的原理是把一个文件以二进制的原创 2009-04-17 10:18:00 · 359 阅读 · 0 评论 -
WINCE 下的FAL(flash abstraction layer)(转贴)
今天同事翻出NAND flash 的驱动问我为啥不能编译出DLL,我一看OAK/BLOCK/MSFLASHFMD确实有问题,就顺便来研究下。 我们就以该目录下的FASL Code来做下分析。FASLD目录就是生成LIB,先看以下里面的SOURCE 文件: TARGETNAME=fasld_libTARGETTYPE=LIBRARY WINCEOEM=1WINCETA转载 2009-04-17 10:17:00 · 795 阅读 · 0 评论 -
在WinCE中实现屏幕旋转 Screen Rotation962914325
在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation: 1. 通过修改注册表做Rotation 默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下: [转载 2009-04-17 10:13:00 · 721 阅读 · 0 评论 -
S3c2440A平台HIVE注册表+binfs的实现
我的例子是基于samsung S3C2440A+samsung ONENAND+WinCE5.0的,开发平台是platform builder 5.0,首先我们基于RAM register的image已经可以正常跑起来了,Flash除了放置image外其他的空间为用户提供文件系统,这部分的驱动程序是用三星的PocetStoreII15。先来回味一下底层的东东,我们的Image主要由两部分组成:XI转载 2009-04-17 10:05:00 · 515 阅读 · 0 评论 -
DeviceIoControl的使用说明/CTL_CODE说明/CTL_CODE定义中Method的说明[转]
DeviceIoControl的使用说明应用程序和驱动程序的通信过程是:应用程序使用CreateFile函数打开设备,然后用DeviceIoControl与驱动程序进行通信,包括读和写两种操作。还可以用ReadFile读数据用WriteFile写数据。操作完毕时用CloseHandle关闭设备。我们比较常用的就是用DeviceIoControl对设备进行读写操作。先看看DeviceIoCont原创 2009-04-17 10:02:00 · 5600 阅读 · 2 评论 -
WinCE EBOOT中的BootPart分析 基于WinCE6.0
应该说BootPart算是微软提供的一个用于分区的模块,可以在EBOOT中使用。不过说实话,我很少使用它,知道有些厂商的BSP里面支持这个功能,而且也算是EBOOT的一部分,所以还是介绍一下。先看一下架构,如图: 在EBOOT中,BLCOMMON处于最上层,这个在以前已经介绍过,BootPart模块会被OEM函数来调用,而BootPart模块要操作存储设备需要Flash Driver的支转载 2009-04-17 09:57:00 · 1093 阅读 · 1 评论 -
基于uboot的2440hive注册表实现
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://bluefish.blog.51cto.com/214870/58094 之前看过很多贴子是讲hive注册表的,多少也有所了解。但是真正自己来做的时候却也碰到了不少问题。其实单独hive的实现很简单,毕竟有含量的东西ms都做好了转载 2009-10-24 10:26:00 · 400 阅读 · 0 评论