保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

基于USB接口的数据采集系统设计


  ·完全自治的直接内存存取DMA操作。
  
  2.3接口硬件设计
  
  由D12接口组成的通信电路原理如图3所示。关于D12的各引脚说明见参考文献[4]。多路地址/数据总线ALE接单片机的ALE脚,这样使用MOVX指令可以与D12接口,对D12操作就象对RAM操作一样,此时忽略A0(命令口和数据口地址线)的输入。因为没有使用DMA传输方式,所以没有用到DMACK_N、EOT_N和DMREQ_NDMA引脚。INT_N是USB中断请求脚,发出USB中断请求;GL_N是GoodLink指示灯,在调试过程中非常有用,在通信时会不停闪烁。如果一直亮或者一直暗,表示USB接口有问题,如果D12挂起,则LED关闭。CLKOUT是D12的时钟输出,可以通过固件编程改变其频率,在调试固件时,可作为参考。
  
  2.4接口程序设计
  
  USB接口程序设计是USB开发的核心。USB接口程序设计包括三部分:单片机程序开发、USB设备驱动程序开发、主机应用程序开发。三者互相配合,才能完成可靠、快速的数据传输。
  
  2.4.1单片机程序设计
  
  单片机程序(又称固件)采用模块化程序设计,主要模块包括:数据采集模块、数据处理、监控模块和数据通信模块。模块化设计的优点是可靠性高、可读性好、升级简单。
  
  通信模块固件结构如图4所示。主循环和中断服务程序之间的数据交换可通过事件标志和数据缓冲实现。图3中USB中断引脚INT_N发出中断请求,中断服务程序根据中断请求类型操作,设置事件和填充数据缓冲区再传输给主循环;标准设备请求程序是对标准请求进行处理;用户可以根据实际需要编写厂商请求,例如发出启动或停止数据采集命令。
  
  图3USB接口连接示意图
  
  2.4.2驱动程序设计
  
  驱动开发工具有DDK和第三方开发工具。其中DDK开发难度最大,第三方开发工具有DriverStudio和Windriver等。DriverStudio难度适中,而Windriver则属于应用层驱动开发,难度小,但效率低,并存在发布问题。
  
  DDK驱动程序开发工作包括:开发环境设置(VC编译环境)[5]、驱动程序设计[6]、安装文件(INF文件)设计。
  
  驱动程序设计采用WDM(WindowsDriveMode)。WDM设备驱动程序提供了一个参考框架,大大降低了由DDK书写驱动程序带来的难度。
  
  D12驱动使用的例程包括:DriverEntry、AddDevice、DispatchPnp、DispatchRead、DispatchWrite和DispatchDeviceControl例程,以下是D12的WDM驱动程序函数:
  
  DriverObject->MajorFunction[IRP_MJ_CREATE]=D12_Create;
  
  DriverObject->MajorFunction[IRP_MJ_CLOSE]=D12_Close;
  
  DriverObject->DriverUnload=D12_Unload;
  
  DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL;
  
  =D12_ProcessIOCTL;
  
  DriverObject->MajorFunction[IRP_MJ_WRITE]=D12_Write;
  
  DriverObject->MajorFunction[IRP_MJ_READ]=D12_Read;
  
  DriverObject->MajorFunction[IRP_MJ_SYSTEM_CONTROL;
  
  DriverObject->MajorFunction[IRP_MJ_PNP]=D12_Dispatch;
  
  DriverObject->MajorFunction[IRP_MJ_POWER]=D12_Process-PowerIrp;
  
  DriverObject->DriverExtension->AddDevice=D12_PnPAddDevice;
  
  驱动程序与应用程序和硬件之间通信都是IRP(I/O请求包)完成的。IRP_MJ_PNP主要是实现USB即插即用,例如设备的添加、删除和资源的分配;IRP_MJ_POWER实现电源管理,例如设备的

《基于USB接口的数据采集系统设计(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/165431.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。