2009年5月4日
一般开发驱动采用分层的结构,这样可以方便移植,而且开发起来肯定会容易一些。
单体驱动虽然可能会提供较高的性能,但是可能会造成系统的崩溃,还有较差的移植性。
2009年5月1日
需要写驱动,原来以为会很简单,可是没人教自己看资料真的又累又难,到底应该怎么开始学习呢!郁闷!狂郁闷!!!网上说用gpio最简单,可是我连这个最简单的都搞不懂!!郁闷阿!!!!!!!
2009年4月28日
WINCE下I/O操作基础 |
|
发布日期:2007-5-10 12:16:06 作者: 出处: |
|
GPIO 是ARM芯片最基本的输入输出通道,在ARM9平台上,Windows CE系统将GPIO的实地址(例如2410的GPIO的基地址为0x56000000)映射到虚拟地址空间(GPIO对应为0xB1600000),这样,通过对这段虚拟地址空间的操作,就能够完成对GPIO或者其他片内资源的控制、输入输出工作。
要操作一个平台的GPIO,在其对应BSP中按照基地址,找到虚拟地址,并且找到方便操作这个地址的数据结构就可以了,关键函数就是VirtualAlloc和VirtualCopy。并且CE的方便之处就是用户态的应用程序仍然可以使用这两个函数来访问所有这些虚拟空间,对于不太复杂的程序,甚至可以省略写驱动直接在应用程序中操作,其实在CE6之前,这些驱动也是工作在用户态的。[但是,这样做是有危险的,如果没有驱动而让用户程序直接和硬件打交道,可能会出现很严重的错误]