新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Windows CE.NET下ADC驱动开发设计

Windows CE.NET下ADC驱动开发设计

作者:时间:2012-11-26来源:网络收藏

  1 前言

  Windows CE 是为各种嵌入式系统和产品设计的一种压缩的、高效的、可升级的操作系统。多线性、多任务、全优先的操作系统环境是专门针对资源有限而设计的,它的模块化设计使嵌入式系统开发者和应用者能够将其应用于各种产品,例如家用电器、专门的工业控制和嵌入式通信设备等。Windows CE 支持各种硬件外围设备及网络系统,应用领域极为广阔,是微软专门为信息设备、移动通讯、电子产品、嵌入式应用等非 PC 领域而专门设计的一种战略性操作系统产品。

  2 Samsung ARM 系列S3C2410 处理器

  S3C2410 是Samsung 公司推出的基于ARM920T 核的32 位RISC 微处理器芯片。S3C2410具有低功耗、低成本和高性能的特点,已成为PDA、智能手机、网络计算机终端以及智能设备的终端产品等的热门解决方案之一。

  S3C2410 内部资源丰富、结构复杂、接口众多,具有相互独立的16kB 指令缓存和16kB数据缓存,带有MMU 虚拟存储单元和AMBA 总线接口。S3C2410 支持的内外围设备包括外部存储控制器、中断控制器、LCD 控制器、8 通道10bit 精度的ADC 和触摸屏控制器、SD/MMC 卡控制器、4 通道DMA、4 通道具有PW 入1 功能的定时器、具有日历功能的实时时钟、看门狗定时器、3 通道UART(包含IRDA 红外线数据通讯口)、USB 主机/设备接口、I2C 总线接口、IIS 数字音频总线接口、2 通道SPI 总线接口、通用I/O 端口以及具有锁相环功能片上时钟发生器等。同时,也可以根据需要进行功能扩展从而支持以太网接口、PCMCIA接口以及IDE 接口等。

  3 Windows CE.net 下的驱动程序

  目前基于 Windows CE.net 的两种模型是本机设备驱动程序和驱动程序。本机设备驱动程序用于低级、内置设备,提供一组定制的接口可通过移植、定制微软提供的驱动样例来实现。驱动程序实现一组固定的函数,所有的CE 设备皆可使用此模型实现。开发工具Platform. Builder 中包含的样本设备驱动程序分为两种:单片驱动程序和分层的驱动程序如图1 所示。单片驱动程序基于单个码片,该码片直接把硬件设备的功能传递给操作系统。与弹片驱动程序相比,分层驱动程序由两个设置好的层组成,上层是模型设备驱动程序(Model Device Driver,MDD),下层是依赖平台的驱动程序(Platform. Dependent Driver,PDD)。大多数的样本设备驱动程序都配置成分层的。

  分层驱动程序要利用微软提供的与应用程序通信的上层,这是一个与硬件平台无关的上层,称为模块驱动程序层MDD(Model Device Driver),MDD 层通过设备驱动程序接口DDI(Device Driver Interface)与应用程序通信,开发驱动程序通常不修改MDD 层,主要关心与具体硬件相关的下层,依赖平台的设备驱动程序层PDD(Platform. Dependent Driver),PDD层通过设备驱动服务接口DDSI(Device Driver Service Interface)直接管理硬件。单片驱动程序所驱动的设备通常与微软提供的应用程序没有直接的关系,如LCD 背光条开关的驱动。通常要求单片驱动程序提供一个特定DDI 接口如上层应用通信,通过编写相应的动态链接库DDL 实现这个功能。


  4 基于 Windows CE 的流驱动程序的实现

  4.1 选择代表设备的文件名前缀

  设备前缀名在系统中必须唯一,并且文件前缀名必须是 3 个字母,若有多个同类设备,则通过后缀1 个阿拉伯数字区分,例如COM1、LPT3 等等。文件前缀名将会在驱动的标准接口函数中体现,比如XXX_Init、XXX_Close 等,其中的“XXX”即是我们选择的设备的文件名前缀。

锁相环相关文章:锁相环原理

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭