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


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告

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

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

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

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

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

☆★☆★☆★☆★☆★☆


我的分类(专题)

日志更新

最新评论

留言板

链接

世纪音频

 

 


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




[wince study]Eboot代码流程
文章收藏

oceanblue 发表于 2008/6/13 9:47:25

Eboot代码流程 

----by nasiry 
转载自:http://www.cnblogs.com/nasiry/archive/2004/11/10/62327.aspx    首先通常都是汇编代码:启动时由系统复位导致PC为0为触发条件:以244


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


[wince study]bootloader起步一
原创空间

oceanblue 发表于 2008/6/11 13:50:32

  bootloader 通常是用来放置OS镜像到内存中,然后跳到OS起始地址。   bootloader 通常驻留在非易失存储设备,系统起来或重启回执行。   为了能够得到bootloader在开发板上,第一次开发者通常用JTAG接口烧入。   之后bootloader更新通过自己和更新OS.  


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


[wince study]USB Mass Storage(转载)
文章收藏

oceanblue 发表于 2008/6/10 11:13:59

USB Mass Storage.

中介 MDD 到 SCSI 間的就是 BOT了 (果然)。
可以看到,跟USB Mass Storage Protocol 內容一樣,解開CBW 的就是BOT這一層

Pdd Initialize
USB PostInit - Mass Storage Class
BOT_InternalInit
BOT_ReadConfigurationValue
GetEndpointDescriptor
BOT_ReadConfigurationValue
BOT_TransferThread
BOT_DeviceNotify
..
BOT_ResetPipeState
BOT_DeviceNotify
BOT_HandleRequest
BOT_DeviceNotify
.. BOT_InternalInit 呼叫 UfnMdd_Start ( &BOT_DeviceNotify

阅读全文(5821) | 回复(2) | 编辑 | 精华 | 删除
 


[wince study]USB Function Controller Driver Development Concepts
原创空间

oceanblue 发表于 2008/6/10 9:03:32

从wince5.0开始,usb function controller drivers不再是单层驱动。单层驱动是把平台相关的驱动(PDD)与MDD整合在一起。usb function controller drivers采用分层结构。它包括pdd和mdd.后继有空再写。

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


[wince study]WINCE知识点滴 (文章收藏,权利属于原创作者)
文章收藏

oceanblue 发表于 2008/6/9 15:46:00

WINCE知识点滴 1.CE下同名设备不能大于10

CE5.0中已经没有这个问题了,
以前的版本可以这样做:
只给上层输出一个设备,
然后用一个IOCTL去打开一个个的物理设备
这样就可以做到不受任何限制了


2.MDD与PDD

一个驱动程序通常会被分成硬件相关(PDD)与硬件无关(MDD)层两部分。
当然,这种分层不是必须的,只是采用这种分层以后可以少写很多代码,因为微软提供了很多驱动程序的MDD。即使CE中没有我们所写的驱动程序的样例,采用这种结构以后,当需要写第二个程序时,就可以重用它的代码,就可以提高开发效率。

MDD是提供同类型的设备(比如串口)都会有的功能,这样PDD基本上就只有寄存器操作了。
像串口的中断处理,Read/Write函数,其大部分代码都是在MDD中实现的,
不同的串口实现中只需要提供一些实际操作寄存器的函数


不同的驱动程

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


[wince study]WINCE驱动程序快速入门 (文章收藏)
文章收藏

oceanblue 发表于 2008/6/9 15:31:39

WINCE驱动程序快速入门 有人也许和我一样比较心急,想尽快知道如何去写一个具体的驱动程序,这里,假设您对驱动程序已经有比较好的了解,告诉大家一个快速上路的方法。当然,如果您有足够的时间我建议在动手之前还是深入了解一下CE整个系统架构。
在CE中,最简单的一个驱动程序莫过于一个内置(Built-in)设备的流接口驱动。对于一个不支持热拔插的设备,最快捷的方法就是为其实现一个内置的流接口的驱动。
对于这样一类驱动程序,我们只需要按一种特定的规则实现一个动态库,其中实现对所有的硬件功能的调用,再将这个动态库加入系统中,然后设置相关的注册表项,使得在系统启动时设备管理器能识别并且加载这个设备即可。
3.1 实现动态链接库
此动态链接库与应用程序层所用的库并不很大差别,源文件可以是C、C++、甚至汇编,,只是它要实现以下函数。
 DllEntry(HINSTANCE DllInstance, INT Reason, LPVOID Re

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


[wince study]How Windows CE Bus Drivers Work
文章收藏

oceanblue 发表于 2008/6/3 10:44:31

 Posted by David Liao Abstract   A bus driver is designed for con

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


[wince study]2410 UDC driver 分析1
文章收藏

oceanblue 发表于 2008/5/20 13:44:32

在 USB Function Controller 的MDD层 有函数 GetClientFunctions( PUFN_FUNCTIONS pUfnFunctions)
调用者通过传入 PUFN_FUNCTIONS 类型的指针变量 来获得 USB Function Controller MDD层的所有操作函数. USB Function Controller 的MDD层的函数 UFN_Init( LPCTSTR pszContext )中 会创建一个PUFN_MDD_CONTEXT pContext指针变量
这个变量包括了MDD层的所有属性,这个变量还包括了一个指向 PDD层的指针变量UFN_PDD_INTERFACE_INFO PddInfo;
PDD层的这个UFN_PDD_INTERFACE_INFO PddInfo里又包含了PDD层的一些属性和PDD层的所有操作函数指针,这样在UFN_Init()
函数中创建了一个 new CUfnBus(pszContext, pContext)USB总线对象,同时将包含MDD层所有属性的pC

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


[wince study]注册表里的一些技巧
文章收藏

oceanblue 发表于 2008/5/13 15:32:59

一\ 如何实现开机后,还未进入WINCE界面就运行其他程序 假设应用程序为myapp.exe,那先将这个程序放到 SMDK2410\FILES\目录下. 接着在PB中的 PLATFORM.BIB文件中的 FILES目录下添加   myapp.exe   $(_FLATRELEASEDIR)\myapp.exe    NK U  可将该文件打包进NB0中; 再在PLATFORM.REG目录下添加以下内容,注意是90:
阅读全文(1892) | 回复(0) | 编辑 | 精华 | 删除
 


[wince study]USB设备驱动程序导读(9)
文章收藏

oceanblue 发表于 2008/5/12 16:26:04

  以Bot.c文件中的BOT_DataTransfer()函数为例,在这个函数中,读写操作全部是调用了IssueBulkTransfer()函数,这个函数是由USBD提供的接口并且被usbclient.c程序进行了再次封装,它可以完成对物理USB设备的数据存取操作,这就要根据不同的设备来进行了,而且还要区分是命令操作还是数据操作,是命令状态操作还是其他操作等等,需要与设备及USB标准来对应。因为只是学习一个框架,所以有兴趣的话可以深入研究一下。

        到此为止,一个USB设备驱动程序的最基本框架就已经浏览了一遍,很粗糙也很烦杂,到头来废话说了太多,也不知是否能说到关键之处。为了留下一个整体的印象,我们使用下面的图示进行回顾。



     &n

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


« 1 2 3 4 »



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

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