- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.驱动程序模型和加载实验
实验五 驱动程序模型和加载实验
1.实验目的:
2.实验任务:
1.构建一个Wince平台;
2. 编写流式接口的驱动程序;
3. 编写驱动测试程序4. 运行驱动和测试程序,查看输出结果3.实验步骤:
图2 Platform Builder5.0启动界面
创建一个定制的操作系统设计方案
选择“File”-“New Platform”,弹出“New Platform Wizard”向导,选择“Next”;
在Name文本框输入“”作为操作系统的名字在%_WINCEROOT%\PBWorkspaces\ DriverModel”如图3,然后选择“Next”;
图3 工作空间的名字和位置
从可以获得的板级支持包列表(BSP)中,选择EMULATOR: X86,如图4(在界面右侧的信息栏中显示该BSP的相关信息),然后选择“Next”;
Enterprise Web Pad”,如图5,然后选择“Next”;
图5 选择设计模板
删除“Applications Media”选项,如图6,然后选择“Next”;
图“Applications Media”选项
Networking Communications”选项,如图7,然后选择“Next”;
图“Networking Communications”选项
默认“Next”;
点击” Finish”,完成新平台向导,如图8。
图
编写流式接口的驱动程序
在Platform Builder中选择“File”-“New Project or File”,创建一个“Windows CE Dynamic link library”项目,项目的名称填写“MyDriver”,如图9;
图 “New Project or File”对话框
向导的第一步,默认,然后点击“Next”;
向导的第步选择“A Simple Windows CE DLL”。Platform Builder会为我们生成DLL框架代码。图修改Platform Builder生成的DllMain函数,如下BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch ( ul_reason_for_call )
{
case DLL_PROCESS_ATTACH:
OutputDebugString(LMyDriver - DLL_PROCESS_ATTACH\n);
break;
case DLL_PROCESS_DETACH:
OutputDebugString(LMyDriver - DLL_PROCESS_DETACH\n);
break;
case DLL_THREAD_ATTACH:
OutputDebugString(LMyDriver - DLL_THREAD_ATTACH\n);
break;
case DLL_THREAD_DETACH:
OutputDebugString(LMyDriver - DLL_THREAD_DETACH\n);
break; }
return TRUE;
}
图DllMain函数之前,如下:
DWORD DEM_Init(LPCTSTR pContext, LPCVOID lpvBusContext);
BOOL DEM_Deinit( DWORD hDeviceContext );
DWORD DEM_Open( DWORD hDeviceContext, DWORD AccessCode, DWORD ShareMode );
BOOL DEM_Close( DWORD hOpenContext );
BOOL DEM_IOControl( DWORD hOpenContext, DWORD dwCode, PBYTE pBufIn, DWORD dwLenIn, PBYTE pBufOut, DWORD dwLenOut, PDWORD pdwActualOut );
void DEM_PowerUp( DWORD hDeviceContext );
void DEM_PowerDown( DWORD hDeviceContext );
DWORD DEM_Read( DWORD hOpenContext, LPVOID pBuffer, DWORD Count );
DWORD DEM_Write( DWORD hOpenContext, LPCVOID pBuffer, DWORD Count );
DWORD DEM_Seek( DWORD
您可能关注的文档
最近下载
- 上海凯泉选型样本-第五代数字集成变频供水设备.pdf
- 2025年山西林业职业技术学院单招职业倾向性测试题库(实用).docx VIP
- 党员一对一谈心谈话记录.docx VIP
- 安徽省合肥市2023-2024学年六年级上学期语文期末试卷(含答案)2.pdf VIP
- 员工个人年终总结7篇.docx VIP
- 场景搭配培训课件.pptx VIP
- 《特种设备安全法》解读及特种设备监督管理.pptx VIP
- CMW500操作快速入门:Bluetooth信令测试.pdf VIP
- 蓝色绿色商务科技风特种设备安全技术培训安全培训培训特种设备特种设备知识培训.pptx VIP
- 佛马特fermator门机VVVF-4+门机调试说明书.pdf
原创力文档


文档评论(0)