
Windows CE
文章平均质量分 69
文斌
个人成长咨询顾问,北京航空航天大学软件工程硕士,信息系统项目管理师。
22年软件研发和管理经验。曾任数码视讯战略研究院架构师,百度架构师,百度技术委员会委员、最佳导师。
5年合伙人创业,经历了完整的企业生命周期。
展开
-
WinCE实验教程之一嵌入式系统简介
作者:文斌主页:文斌程序网 http://www.wenbinweb.com 嵌入式这个词现在变得越来越流行,然而关于它的很多概念可能还有一大部分人不是很明确,在本文中,我们不追求具体的概念是否准确,而是要对其有一个准确的理解。 嵌入式系统是不同于常见计算机系统的一种计算机系统,它不以独立设备的物理形态出现,即它没有一个统一的外观,它的部件根据主体设备以及应用的需要原创 2004-12-20 15:54:00 · 4656 阅读 · 1 评论 -
WinCE 5.0边做边学(6)
在学习驱动程序之前,我们还有很多东西要了解。想来想去,可能最重要的还是中断了,所以,这次我们花点时间来了解一下在Windows CE中的中断机制。 凡是学过计算机原理的人都知道中断是什么东西,所以这些基本知识我们就不再详述了,我们下面就先看一下CE对中断的整体处理流程,以方便从全局上有个整体的认识原创 2007-12-08 11:06:00 · 3176 阅读 · 0 评论 -
WinCE 5.0边做边学(8)
在上次的边做边学中,我们了解到了内置的设备驱动程序的架构,因为各种不同类别的内置驱动程序要实现不同的接口,因此在实现起来就非常有针对性,也不利于演示。这次我们继续了解另一种驱动程序——流接口驱动程序的特点及其实现方法。 流接口驱动程序是在应用程序层采用标准的文件操作APIS来调用设备的,最常见的就是串口,我们可以使用Cr原创 2007-12-08 11:12:00 · 2872 阅读 · 5 评论 -
USB设备驱动程序导读(1)
随着USB设备的不断增加,我们这些开发人员也就多了对USB设备进行驱动程序开发的工作。但是对于很多初学者来说,存在以下三个困难: 一是对WinCE的驱动程序结构了解得太少,没办法得心应手的专注于驱动程序的开发工作; 二是对WinCE自带的USB驱动程序的例子没有弄懂,看到一大堆文件夹结构和源程序原创 2008-01-08 21:56:00 · 7235 阅读 · 0 评论 -
USB设备驱动程序导读(2)
接下来,我们就来分析一下CE中的样例程序,我用的是4.2版本的,所以下面的内容是4.2版本中的程序。这里的程序是通过文件夹的形式组织在一起的,所以我们还是像以前学习CE的时候那样,先来了解与此相关的文件夹结构,如下图。 在USB文件夹下,分成了CLASS,CLIENTS,COMMON,HCD,INC,USBD原创 2008-01-08 21:58:00 · 3932 阅读 · 0 评论 -
USB设备驱动程序导读(3)
“广告无限,时间有限”,别看广告了,快回来吧。(发现自己是广告天才,不过耳熟的很,好像游戏上面都有类似的话) 此前,我们共同了解了USB驱动在CE中的位置结构,也了解了样例驱动程序的文件夹结构,接下来,我们就要了解一下USBD为我们提供了哪些接口来实现设备访问以及驱动程序管理的功能。找到USBDI.H,不要告原创 2008-01-08 22:00:00 · 4564 阅读 · 0 评论 -
USB设备驱动程序导读(4)
在上次了解了所有USBD接口函数以后,我们已经有了很多基础知识了,回顾USB样例的文件夹结构,我们还能记得USB/CLASS/COMMON这个文件夹下是存放所公共部分的源程序,它是微软专门抽象出来的能为大多数USB设备驱动程序服务的一些结构体以及函数的封装,我们这次再来概略的了解一下这里面的源程序。 这里面包原创 2008-01-08 22:01:00 · 4324 阅读 · 0 评论 -
USB设备驱动程序导读(5)
正如所料,接下来我们就进入到DRIVERS/USB/CLASS/STORAGE/CLASS文件夹下,接触USB设备驱动程序。 我们先来了解两个头文件,分别是STORAGE/INC/usbmsc.h和STORAGE/CLASS/usbmscp.h,其中前者是USB存储设备公用的头文件,后者是需要按照自己的设原创 2008-01-08 22:03:00 · 4199 阅读 · 1 评论 -
USB设备驱动程序导读(6)
在继续向下看,我们发现了USBDeviceAttach()函数,这可是最重要的地方了,当有USB设备插入插口以后,操作系统是如何识别它的呢,如何将其做为一个文件夹加以访问的呢?我们就来解开这里的谜团。 为了我们方便说明,我将此程序简化如下: 后面的程序将以此行号进行说明。原创 2008-01-08 22:04:00 · 3552 阅读 · 0 评论 -
USB设备驱动程序导读(7)
我们来看程序的第4行,这里有一个判断语句,它是在判断插入的设备是否是USBMSC_INTERFACE_CLASS类型的,这个常量是在usbmsc.h文件中定义的,也就是说如果设备不是USB存储设备,那么就结束这个函数,也就是此驱动只能处理USB存储设备。 当发现设备符合此驱动程序的要求后,就通过函数Parse原创 2008-01-08 22:06:00 · 4066 阅读 · 0 评论 -
USB设备驱动程序导读(8)
带着上次留下的疑问,我们继续来学习操作系统如何通过USBDISK读写USB设备的。我们先看USB/CLASS/STORAGE/DISK/SCSI2/usbdisk6.def文件。在这个文件中可以看到,该DLL一共导出了14个函数,其中两个是上次内容当中被设备驱动程序调用的UsbDiskAttach和UsbDiskDetac原创 2008-01-08 22:08:00 · 4371 阅读 · 0 评论 -
WinCE 5.0边做边学(7)
上次写过关于CE的中断处理机制以后,一直有人要求能以实际的程序体现出来,但是出于各种因素,一直未能成文。在此表示歉意,此次我们就一起来分析驱动程序中的一种,然后顺便看一下中断在驱动程序中的体现,对WIN32底层的内核对象不熟的话,可要先补一补这方面的知识哦。 还是先从驱动程序说起。CE的驱动程序架构与桌面WINDOWS原创 2007-12-08 11:09:00 · 2484 阅读 · 0 评论 -
最简单的选择CE和XPE的方法
为了有助于选择最适合的WINDOWS嵌入式操作系统,可以在CPU架构,实时支持,基于WIN32的应用程序和操作系统RAM配置四个方面加以考虑. CPU架构:XPE只支持X86架构,CE支持X86,ARM,MIPS,SHX架构;原创 2007-12-08 11:19:00 · 2614 阅读 · 0 评论 -
在WinCE中创建自己的快捷方式
快捷方式或称(.lnk)文件是可以提供到其他文件链接的很小的文件,你可以使用.lnk文件指向位于Windows文件夹中的文件。 如果你不使用.lnk文件,你只能通过文件系统文件(.dat)在ROM之外制作Windows文件夹下的文件的完全复本。 以下步骤列出了如何创建一个桌面快捷方式。当你创建了原创 2007-12-08 11:17:00 · 3778 阅读 · 1 评论 -
WinCE 5.0边做边学(1)
作者: 文斌主页: 文斌程序网 http://www.wenbinweb.com 从微软公司寄来了我定购的免费光盘,让我很兴奋,里面我要了一份WINCE5的评估版,还要了一份Windows XP Embedded的评估版, 于是马上着手准备测试环境,开始我了对新版WinCE的学习之旅。 既然都是新学,我就想到要把我的学习过程记录下来,这样就可以让更多还没有使用WINCE5的朋友先睹为快原创 2005-01-13 12:45:00 · 4411 阅读 · 4 评论 -
WinCE 5.0边做边学(2)
作者: 文斌主页: 文斌程序网 http://www.wenbinweb.com 继续我们的边做边学,上次我们第一次用PlatformBuilder这个环境做了一个Internet Appliance的平台,我们也在模拟器上看到了这个平台的运行结果,这次,我们在此基础上做些修改,以实现我自己的需求。 现在假设我们的目标系统不再需要MediaPlayer以及多媒体如MP3,WMA,MP原创 2005-01-13 12:51:00 · 3827 阅读 · 3 评论 -
WinCE 5.0边做边学(4)
作者: 文斌主页: 文斌程序网 http://www.wenbinweb.com 经过以前的学习,我们已经掌握了生成CE的过程及编译的几个阶段,这次我们再来了解一下Platform Builder中为我们提供的组件包的管理方式以及如何管理自己的组件。 在Platform Builder(以下简称PB)中的右侧有一个"Catalog"窗口,其中列出了所有可供使用的组件,我们可以看到其内原创 2005-01-13 12:58:00 · 4601 阅读 · 2 评论 -
WinCE 5.0边做边学(3)
作者: 文斌主页: 文斌程序网 http://www.wenbinweb.com 经过前两次的边做边学,我们已经创建并可以自由修改自己的平台了,这次我平来补充一点理论知识,以便加深对CE生成过程的了解。在此之前,需要说明的是CE的目录结构是很庞大而复杂的,在以后的工作中很多事情会取决于你对目录结构的了解程度,在此,CE5的文件夹结构未发生大的改变,因此想了解此部分内容的朋友可直接参阅本人的《W原创 2005-01-13 12:55:00 · 3355 阅读 · 0 评论 -
WinCE实验教程之四引导
好了,以上我们已经生成了自己的系统,也明了了PB的文件夹结构,这一次我们一起来看一下如何把我们自己的系统在目标设备上运行起来,此处我们的目标设备是X86结构的,因此我们就以这种设备为例,当然如果你没有自己的硬件平台,也可以用另一台PC机来代替。按以前学过的内容,我们还是用Hello这个系统,但是要重新做一个了,因为上一次我们做的那个是在模拟器上用的,这次我们要做一个用在设备上的,我们可以在向导中选原创 2005-12-15 16:25:00 · 3800 阅读 · 0 评论 -
WinCE实验教程之二集成开发环境
作者:文斌来源:文斌程序网 http://www.wenbinweb.com 为了定制CE操作系统,微软公司为我们提供了Platform Builder(简称PB,但与Power Builder的数据库开发工具截然不同)的集成开发环境,下面我们就来认识一下这个开发环境并利用它生成一个CE操作系统。 先来说说PB的购买。PB是商业软件,用户需要向微软在中国的各代理机构联系原创 2005-12-18 11:11:00 · 5083 阅读 · 1 评论 -
WinCE实验教程之五高级调试
作者:文斌来源:文斌程序网 http://www.wenbinweb.com 回顾一下我们以前学过的内容,我们学习了嵌入式系统的基本概念,学习了如何定制一个操作系统,还学习了如何引导一个CE操作系统。这次我们来学习CE系统的高级调试技术,主要是利用PB的集成开发环境来调试操作系统的内核和设备驱动程序。 PB集成开发环境强大的调试功能为我们提供了可以深入调试系统程序的途原创 2005-12-18 11:25:00 · 5274 阅读 · 0 评论 -
WinCE实验教程之三文件夹结构
作者:文斌来源:文斌程序网 http://www.wenbinweb.com 这里所述的文件夹结构,不是WinCE系统的文件夹结构,而是集成开发环境Platform Builder的文件夹结构,该文件夹结构十分复杂,共有3万多个文件,2400多个子文件夹,如果不清楚的话在以后的开发过程当中将会带来很大的麻烦,也时甚至会发生找不到文件的现象。对于这个文件夹结构,我们可以大体上分成两个部原创 2005-12-18 11:19:00 · 3973 阅读 · 1 评论 -
WinCE 5.0边做边学(5)
对于实时系统,如何调试是一个很难解决的问题,包括对系统内核的调试,对驱动程序的调试,对应用程序的调试等。对于应用程序,通常各集成开发环境都提供了常规的单步跟踪等调试手段。而对于另两个的调试,Platform Builder除了为我们提供了常规的断点跟踪等手段以外,还和系统的源程序配合使用了一种新的调试手段——Debug Zones原创 2007-12-08 11:03:00 · 2608 阅读 · 0 评论 -
WinCE中的文件系统文件
文件系统文件(.dat)定义了在目标设备初始化时设置的文件和文件夹的位置,当目标设备冷启动时,Filesys.exe将会使用这些文件系统文件在内存中来创建文件夹,链接和文件等。 通过修改Project.dat文件中文件夹和文件位置的定义,你可以定义任何除了Windows文件夹以外的根文件夹,另外,你还能够从RO原创 2007-12-08 11:17:00 · 3714 阅读 · 0 评论 -
USB设备驱动程序导读(9)
以Bot.c文件中的BOT_DataTransfer()函数为例,在这个函数中,读写操作全部是调用了IssueBulkTransfer()函数,这个函数是由USBD提供的接口并且被usbclient.c程序进行了再次封装,它可以完成对物理USB设备的数据存取操作,这就要根据不同的设备来进行了,而且还要区分是命令操作还是数据原创 2008-01-08 22:10:00 · 4341 阅读 · 2 评论