- UID
- 872238
|
4.2 流接口驱动程序开发过程
Windows CE 提供了两种编写流接口驱动的方法:
(1) 通过编写动态链接库的方法实现; (2) 通过修改BSP的方法实现。由于第二种方法可以加快开发进度, 在该实例中,使用修改BSP 的方法进行流接口驱动程序开发, 其开发步骤为: 首先在BSP 中新建一个目录,编写驱动程序文件并确定驱动程序向外提供的接口函数,然后进行注册表设置, 最后进行测试。
(1) 驱动程序代码编写
设备初始化使用OED_Init 函数实现, 设备卸载使用OED_Deinit 函数实现。在OED_Init 函数中,使用DrvLib_MapIoSpace 函数实现物理地址到虚拟地址映射;在OED_Deinit 函数中, 使用VirtualFree 函数释放驱动程序使用的虚拟内存从而实现了设备的卸载。
设备的I/O 控制向设备发出命令, 按照维信诺VGG13264C OLED 显示模块的时序关系,通过控制相应管脚的电平高低实现向设备发出命令。设备的I/O 控制在OED_IOControl 函数中实现, 函数部分代码如下:
(2) 向外提供函数接口
通过配置OED.def 文件导出OLED 提供的接口函数, 供设备管理器使用。在OED.def 文件中添加如下代码:
(3) 注册表配置。
注册表文件Platform. reg 用来配置与OLED 驱动有关的信息, 配置如下:
[HKEY_LOCAL_MACHINEDriversBuiltInIoControler]
"Prefix "="OED"
"Dll "="OED.dll "
"Index "=dword:0
随着嵌入式系统广泛应用到信息家电、工业控制、移动通信、互联网等领域,大量嵌入式系统的开发必将对人类科技的发展起着重要的作用。本文介绍的基于嵌入式操作系统Windows CE 的驱动程序会帮助读者开发出更多的嵌入式系统产品。 |
|