注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计程序设计综合PDIUSBD12 USB固件编程与驱动开发

PDIUSBD12 USB固件编程与驱动开发

PDIUSBD12 USB固件编程与驱动开发

定 价:¥26.00

作 者: 周立功等编著
出版社: 北京航空航天大学出版社
丛编项:
标 签: 接口

ISBN: 9787810772709 出版时间: 2003-02-01 包装: 胶版纸
开本: 26cm 页数: 256 字数:  

内容简介

  随着计算机技术的不断发展,USB即插即用接口就像RS-232串行接口一样无处不在,因此USB接口技术必将成为电子工程师必须掌握的基本知识。<br>本书选择PHILIPS公司推出的基于USB1.1协议的PDIUSBD12USB接口器件,浅显易懂地介绍了USB1.1协议,全面深入地介绍了PDIUSBD12器件的原理、固件编程思想及其基于DDK驱动程序开发的细节,并且给出了傻瓜化USB接口软件包在USB开发板上的应用设计实例,真正解决了USB接口技术的难题。从而实现作为一个电子工程师即便不懂USB的原理,只要使用相应的软件包即可以将USB器件当做一个简单的集成电路来使用的目的。<br>本书可以作为大专院校单片机及其嵌入式操作系统教学、实验和开发的参考教学资料,也可以作为开发工程师使用USB接口技术的设计指南。

作者简介

  周立功周立功,男,1964年3月出生,毕业于东华大学自动化及计算机系,高级工程师,中国单片机学会理事,中国海洋大学讲座教授,硕士生导师,主要研究方向为嵌入式系统与现场总线,目前正在从事80C51、ARM与NiosII等软核SoC的研究与开发。1981年6月参加工作,先后在大型国有企业担任过工段长、车间主任、团委书记、厂长、党委书记,先后被评为省及国家级劳动模范与新长征突击手,长期从事微机、单片机与嵌入式系统应用推广、开发工作。早期主要从事6502、Z80、8080及其5G14500(一位机)微机应用开发及工业低温辐射远红外节电技术应用与研究等工作,在1987年就出版过《工业低温辐射远红外节电技术》专著。从1994年11月开始创办了广州周立功单片机发展有限公司、广州致远电子有限公司除担任董事长与总经理之外,还继续从事实际的技术开发工作并任首席系统设计师和软件架构师,致力于单片机与嵌入式系统技术的推广及其产业化工作。深入浅出ARM7:LPC213x/214x(下册)>>更多作品

图书目录

第1章 USB总线概述                  
 1.1 USB总线简介1                  
 1.2 USB总线的优点1                  
 1.3 PHILIPS公司的USB器件介绍1                  
 1.3.1 PHILIPS公司的USB设备器件2                  
 1.3.2 PHILIPS公司的USB主控器件3                  
 1.3.3 PHILIPS公司的OTG器件10                  
                   
 第2章 USB 1.1协议简介                  
 2.1 USB系统构成13                  
 2.2 USB设备的枚举过程14                  
 2.3 USB的分组标识14                  
 2.4 USB标准设备请求16                  
 2.5 USB设备的描述符18                  
                   
 第3章 PDIUSBD12器件介绍                  
 3.1 功能描述25                  
 3.1.1 PDIUSBD12器件特性25                  
 3.1.2 管脚配置25                  
 3.1.3 描述27                  
 3.2 端点描述30                  
 3.3 命令汇总31                  
 3.3.1 初始化命令32                  
 3.3.2 数据流命令36                  
 3.3.3 普通命令40                  
                   
 第4章 USB开发套件                  
 4.1 USB D12 SMART开发套件42                  
 4.1.1 简介42                  
 4.1.2 设置USB D12 SMART套件43                  
 4.1.3 D12端点描述46                  
 4.1.4 连接器描述48                  
 4.2 DP-51下载仿真实验仪52                  
                   
 第5章 单片机的固件编程                  
 5.1 固件编程的思想54                  
 5.2 固件编程的实现56                  
 5.2.1 硬件提取层--EPPHAL.C57                  
 5.2.2 PDIUSBD12命令接口--D12CI.C57                  
 5.2.3 中断服务程序--ISR.C61                  
 5.2.4 协议层--CHAP_9.C, PROTODMA.C69                  
 5.2.5 标准设备请求处理--CHAP_9.C70                  
 5.2.6 厂商请求处理--PROTODMA.C81                  
 5.2.7 主循环--MAINLOOP.C84                  
 5.2.8 其他CPU平台的固件接口的移植89                  
 5.2.9 USB设备枚举的数据传输过程89                  
                   
 第6章 USB驱动程序开发                  
 6.1 使用Windows DDK开发驱动程序96                  
 6.2 驱动程序设计中的基本概念98                  
 6.2.1 五层模型98                  
 6.2.2 IRP(IO请求包)99                  
 6.2.3 FDO. PDO. Filter DO以及IRP在一个设备对象堆栈中的流程99                  
 6.2.4 USB驱动程序相关概念99                  
 6.2.5 USB驱动程序的入口详解100                  
 6.2.6 驱动程序的初始化:BulkUsb_AddDevice101                  
 6.2.7 驱动程序的卸载:BulkUsb_DriverUnload105                  
 6.3 即插即用(PNP)处理例程的编写(IRP_MJ_PNP)105                  
 6.3.1 设备即插即用状态图解105                  
 6.3.2 处理即插即用IRP的主例程BulkUsb_DispatchPnP分析106                  
 6.3.3 处理设备启动IRP:IRP_MN_START_DEVICE108                  
 6.3.3 处理查询停止设备IRP:IRP_MN_QUERY_STOP_DEVICE117                  
 6.3.4 处理取消停止设备IRP:IRP_MN_CANCEL_STOP_DEVICE118                  
 6.3.5 处理停止设备IRP:IRP_MN_STOP_DEVICE119                  
 6.3.6 处理查询卸载设备IRP:IRP_MN_QUERY_REMOVE_DEVICE120                  
 6.3.7 处理取消卸载设备IRP:IRP_MN_CANCEL_REMOVE_DEVICE121                  
 6.3.8 处理意外卸载设备IRP:IRP_MN_SURPRISE_REMOVAL122                  
 6.3.9 处理卸载设备IRP:IRP_MN_REMOVE_DEVICE124                  
 6.3.10 处理查询设备性能IRP:IRP_MN_QUERY_CAPABILITIES125                  
 6.4 电源管理例程的编写(IRP_MJ_POWER)127                  
 6.4.1 电源管理中的基本概念127                  
 6.4.2 处理电源管理IRP的基本规则128                  
 6.4.3 处理电源管理IRP的主例程BulkUsb_DispatchPower分析129                  
 6.4.4 处理电源状态查询IRP:IRP_MN_QUERY_POWER131                  
 6.4.5 处理电源状态设置IRP:IRP_MN_SET_POWER135                  
 6.4.6 处理等待/唤醒IRP:IRP_MN_WAIT_WAKE138                  
 6.4.7 电源操作中的回调例程138                  
 6.5 设备控制例程的编写(IRP_MJ_DEVICE_CONTROL)143                  
 6.6 数据读写例程的编写(IRP_MJ_READ, IRP_MJ_WRITE)146                  
 6.6.1 USB设备数据读写的基本概念146                  
 6.6.2 打开USB设备的IRP:IRP_MJ_CREATE146                  
 6.6.3 关闭USB设备的IRP:IRP_MJ_CLOSE148                  
 6.6.4 读写USB设备的IRP:IRP_MJ_READ, IRP_MJ_WRITE149                  
 6.7 WMI例程的编写(IRP_MJ_SYSTEM_CONTROL)153                  
 6.7.1 关于WMI的基本知识153                  
 6.7.2 处理WMI的主例程:BulkUsb_DispatchSysCtrl154                  
 6.7.3 各种具体的WMI的处理l155                  
 6.8 公用处理例程的编写159                  
 6.8.1 对USB设备的选择性挂起159                  
 6.8.2 对USB设备的等待/唤醒操作(Wait/Wake)168                  
 6.8.3 利用信号量机制确定处理中的IRP的个数171                  
 6.8.4 使用系统IRP来提交URB173                  
 6.8.5 处理堆积的IRP174                  
 6.8.6 取消IRP的工作176                  
                   
 第7章 USB应用程序设计                  
 7.1 查找设备179                  
 7.1.1 获取设备信息集180                  
 7.1.2 识别接口信息181                  
 7.1.3 获得设备路径名182                  
 7.2 打开设备183                  
 7.3 读写USB设备184                  
 7.4 关闭通信187                  
                   
 第8章 USB51S及其EASYD12库的使用                  
 8.1 各端点在固件中的使用188                  
 8.2 固件函数库子程序说明189                  
 8.3 增加用户请求191                  
 8.4 示例程序191                  
 8.5 EasyD12驱动程序库的使用196                  
                   
 第9章 基于USB接口的E2PROM编程器                  
 9.1 概述198                  
 9.2 硬件接口198                  
 9.3 通信协议200                  
 9.3.1 上位机命令(使用端点1)200                  
 9.3.2 读操作回应201                  
 9.3.3 写操作201                  
 9.4 使用说明202                  
 9.4.1 增加D12接收缓冲区监视位202                  
 9.4.2 USB事件标志定义202                  
 9.4.3 USB设备请求寄存器203                  
 9.4.4 Setup包数据缓冲区203                  
 9.4.5 注意事项203                  
 9.5 源代码203                  
 9.5.1 文件MAINLOOP.C清单204                  
 9.5.2 文件ISR.C清单213                  
 9.5.3 文件VI2C_C51.C清单217                  
 9.6 上位机软件设计224                  
 9.6.1 概述224                  
 9.6.2 EasyD12.dll简介225                  
 9.6.3 ZlgEasyD12演示程序简介225                  
 9.6.4 操作演示程序225                  
 9.6.5 使用EasyD12.dll226                  
 9.6.6 注意事项及程序设计227                  
 9.6.7 创意与超越236                  
                   
 第10章 USB开发的注意事项                  
 10.1 电源供电237                  
 10.2 数据传输238                  
 10.3 传输速度238                  
 10.4 PDIUSBD12常见问题解答238                  
 10.4.1 普通产品信息238                  
 10.4.2 关于上电239                  
 10.4.3 上电复位239                  
 10.4.4 挂起239                  
 10.4.5 时钟241                  
 10.4.6 接口242                  
 10.4.7 PDIUSBD12的编程245                  
 10.4.8 其他245                  
 10.5 SMART D12板常见问题解答247                  
                   
 附录                  
 附录1TKS系列单片机实时在线仿真器249                  
 附录2CP系列通用编程器253                  
 附录3周立功单片机发展有限公司通讯录256                  

本目录推荐