本站首页    管理页面    写新日志    退出


«July 2025»
12345
6789101112
13141516171819
20212223242526
2728293031


公告

☆★☆★☆★☆★☆★☆
生活的点点记录,以及一些体会...........

喜欢是淡淡的爱,爱是深深的喜欢.

时间会见证一切.......................

欢迎大家指出错误,共同进步..........

期待中..............................

☆★☆★☆★☆★☆★☆


我的分类(专题)

日志更新

最新评论

留言板

链接

世纪音频

 

 


Blog信息
blog名称:
日志总数:162
评论数量:312
留言数量:0
访问次数:940898
建立时间:2005年5月17日




[wince study]WinCE 5.0 的3 種 USB Function Driver
文章收藏

oceanblue 发表于 2008/5/12 8:50:44

  Win CE 5.0 下面 USB Client Function Driver 目前有提供   Serial Profile (Emulator a Serial Port, @CESYSGEN_MODULE_SERIALUSBFN, set SYSGEN_USBFN_SERIAL) RNDIS Profile (Emulator a Network Card, @CESYSGEN CE_MODULE_RNDISFN, set SYSGEN_USBFN_ETHERNET=1) Mass Storage (Emulator a Disk Device, , @CESYSGEN CE_MODULE_USBMSFN, set SYSGEN


阅读全文(3929) | 回复(1) | 编辑 | 精华 | 删除
 


[wince study]S3c2440A平台HIVE注册表+binfs的实现 (转)
文章收藏

oceanblue 发表于 2008/5/9 15:59:01

今天总结一些实现的过程和原理。
我的例子是基于samsung S3C2440A+samsung ONENAND+WinCE5.0的,开发平台是platform builder 5.0,首先我们基于RAM register的image已经可以正常跑起来了,Flash除了放置image外其他的空间为用户提供文件系统,这部分的驱动程序是用三星的PocetStoreII15。

先来回味一下底层的东东,我们的Image主要由两部分组成:XIPKERNEL.bin和NK.bin,XIPKERNEL.bin中的东西就是那些WinCE中比较核心的又需要经常加载的一些程序和DLL文件,这些文件会被Boot Loader在刚启动的时候拷贝到RAM中去,这样就可以在RAM中XIP(Excute in place)了。在NK.bin中的基本上是需要但不至于要常驻内存的一些程序和DLL了,比如我们BuildIn下的大部分驱动,比如微软的IE,mediaplayer等应用程序,甚至连设备管理器device.exe也可以放到这里面,这些文件只有在需要的时候才被复制到内存


阅读全文(1663) | 回复(0) | 编辑 | 精华 | 删除
 


[wince study]WinCE驱动编写 小结 (转)
文章收藏

oceanblue 发表于 2008/5/8 13:39:53

1、基础知识: 1)

阅读全文(2226) | 回复(1) | 编辑 | 精华 | 删除
 


[wince study]WINCE驱动程序快速入门及经验点滴(转)
文章收藏

oceanblue 发表于 2008/5/8 13:30:52

在CE中,最简单的驱动程序莫过于一个内置(Built-in)设备的流接口驱动。对于一个不支持热拔插的设备,最方便的做法就是为其实现一个内置的流接口驱动。这种驱动只需要做以下工作:

1.实现一个动态库,其中实现以下函数:
    DWORD xxx_Init( LPCTSTR pContext, LPCVOID lpvBusContext);
    DWORD xxx_Deinit( DWORD hDeviceContext );
    
    DWORD xxx_Open(DWORD hDeviceContext,DWORD dwAccess, DWORD     &nbs

阅读全文(1597) | 回复(0) | 编辑 | 精华 | 删除
 


[wince study]驱动流程(转)
文章收藏

oceanblue 发表于 2008/5/8 13:05:32

    在学习驱动程序之前,我们还有很多东西要了解。想来想去,可能最重要的还是中断了,所以,这次我们花点时间来了解一下在Windows CE中的中断机制。
    凡是学过计算机原理的人都知道中断是什么东西,所以这些基本知识我们就不再详述了,我们下面就先看一下CE对中断的整体处理流程,以方便从全局上有个整体的认识。
    下图是CE中中断处理的流程图示 
阅读全文(3051) | 回复(0) | 编辑 | 精华 | 删除
 


[美文欣赏]C语言笔试题
文章收藏

oceanblue 发表于 2008/5/8 13:02:26

1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL
我在这想看到几件事情:
1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)
2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。
3). 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。
4). 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。 2. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。 #define MIN(A,B) ((A) &l

阅读全文(3541) | 回复(0) | 编辑 | 精华 | 删除
 


[Arm_Embeded]RTC
文章收藏

oceanblue 发表于 2008/5/8 12:41:21

WinCE 系统的时钟日历是由RTC来提供的,要想实现2410的RTC(关机时RTC靠电池来继续工作,开机后能从RTC寄存器读取正确的时间),需要:
1. 保证提供给RTC的3V电池有电;
2. 更改2410的BSP,具体为:
在文件Platform\SMDK2410\kernel\hal\oemioctl.c中将
    case IOCTL_HAL_INIT_RTC:
     // The kernel has detected a cold-boot.  
        if

阅读全文(2983) | 回复(0) | 编辑 | 精华 | 删除
 


[Arm_Embeded]RTC
文章收藏

oceanblue 发表于 2008/5/8 12:41:21

WinCE 系统的时钟日历是由RTC来提供的,要想实现2410的RTC(关机时RTC靠电池来继续工作,开机后能从RTC寄存器读取正确的时间),需要:
1. 保证提供给RTC的3V电池有电;
2. 更改2410的BSP,具体为:
在文件Platform\SMDK2410\kernel\hal\oemioctl.c中将
    case IOCTL_HAL_INIT_RTC:
     // The kernel has detected a cold-boot.  
        if

阅读全文(1578) | 回复(0) | 编辑 | 精华 | 删除
 


[wince study]Exception Process in WinCE & ARM(转
文章收藏

oceanblue 发表于 2008/5/8 12:39:21

今天INTEL的Application Engineer特地纠正了“中断向量表”的说法,应该叫Exception Vector.按我理解,应该只有IRQ和FIQ算做interrupt吧,像reset和几个abort叫做exception的确更合适些。 一般而言, 硬件的异常产生后,CPU将跳转到0x00000000地址访问中断向量表(normal exception vectors),  但ARM920T / ARM9 / ARM10 系列的CPU支持把中断向量表放到高地址0xFFFF0000(high exception vectors). 该跳转地址的决定因素为协处理器的CP15:BI13. 即CP15:BIT13 = 0时, 跳转到低地址; CP15:BIT13 = 1时, 跳转到高地

阅读全文(3054) | 回复(0) | 编辑 | 精华 | 删除
 


[Arm_Embeded]在WinCE5.0和WinCE6.0下,编译选项介绍
文章收藏

oceanblue 发表于 2008/5/8 11:18:00

在WinCE5.0中,在"Build OS”菜单中,我们会看到不同的编译选项: "Sysgen","Build and Sysgen"和"Build and Sysgen current BSP" Sysgen:不用多说,当你在"Catalog"中添加或删除了新的item的时候,就用这个吧。 Build and Sysgen:当你更新了\public目录下的源代码的时候,你就需要用这个了。一般比如在打patch以后,可能就需要进行Build and Sysgen了。 Build and Sysgen current BSP: 当你只改变了你的BSP部分的代码,就可以用这个选项。据说,当你改变了\platform目录下的代码,也可以用这个,具体没有试过。   在WinCE6.0中,在VS2005的"Build"菜单中,有一个“Advanced Build Commands”,其中有很多编译选项:<

阅读全文(3334) | 回复(0) | 编辑 | 精华 | 删除
 


« 1 2 3 4 5 6 7 8 9 10 »



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.125 second(s), page refreshed 144762125 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号