欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年VxWorks下数据采集卡驱动程序开发 .pdf

    • 资源ID:27879955       资源大小:402.48KB        全文页数:5页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年VxWorks下数据采集卡驱动程序开发 .pdf

    VxWorks下数据采集卡驱动程序开发作者:杨扬,杨智慧,李序,李正熙时间: 2008-06-16 来源 :现代电子技术1 引 言随着嵌入式技术的发展,数据采集广泛应用于现场设备中。本文根据实际项目需求,开发了数据采集卡在VxWorks操作系统下的驱动程序,以方便应用程序开发。本文采用的数据采集卡为盛博协同公司基于PC104 总线的 ADT700采集卡,他通过总线与PC104嵌入式系统构成一个高性能的数据采集与控制系统。 ADT700具有如下特点:模拟输入 16 单端 8 差分输入; 12 位分辨率; 100 kHz最大 AD 采样率;0+10 V,-5 +5 V ,-10 +10 V双极性或单极性输入量程;1 ,2 ,4 ,8 倍可编程增益; DMA 实现数据的高速传输。模拟输出 4 通道输出; -5 +5 V ,-10 +10 V,05 V ,010 V 量程可选;通道单独置数或4 通道同时置数。数字量 IO 可编程外围接口, 24 通道 TTLCMOS 兼容;IO 接口上拉或下拉限流电阻。定时计数器 6 个 16 位、10 MHz(最大)定时计2 VxWorks及其字符设备驱动VxWorks是一个基于抢占式的实时操作系统,他以其高度的可靠性、 优秀的实时性、灵活的可裁性广泛应用到许多行业中。在VxWorks中,IO 系统提供了与设备无关的用户接口,应用程序可以通过标准的接口函数如:create(),remove(),open(),close(),read() ,write(),ioctl()等来访问设备驱动程序,而不用关心驱动程序是如何实现的。 ADT700属于字符型设备,他的驱动程序需要支持以上接口函数。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 下面以字符设备中open()操作为例,说明字符设备驱动程序结构。如图 1 所示,当应用程序调用fd=open(xx0 ,ORDONLY ,0) 时, IO 系统根据文件名 xx0 在设备列表中查找设备( 设备是以文件形式存在的,文件名即设备名)( 如所示 ) ;查找到相应设备后根据驱动号定位到驱动表中(如所示 );IO 系统在文件描述表中预留一个表项fd=3(如所示 );然后 IO 系统调用驱动程序中的xxoOpen()函数,返回需要保留的值,即设备描述指针(如所示 ) ;IO 系统将驱动号和驱动返回值填到文件描述符表中(如所示 ) ;最后, IO 系统返回新 opeh()的文件在文件描述符表中的索引,应用程序得到文件描述符fd=3(如所示 )。用户可以通过操作文件来访问IO 设备。3 驱动实现3.1 功能分类ADT700具有 AD,DA 转换,数字 IO,定时计数等功能,对其进行分析,可分为 3 类:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - (1)A D 转换为只读,而DA 转换为只写;(2) 数字 IO 既可读又可写;(3) 定时计数器基本无需读写,只设置即可。根据以上功能,得出需要实现3 个驱动,分别为:(1)adtDrv驱动, 用于读入 AD 转换后的数据, 写出 DA 转换的数据, 设备描述符为 adt ;(2)ppiDrv驱动,用于读入或写出数字IO 的数字,设备描述符为ppi ;(3)pitDrv驱动,用于设置定时计数器,设备描述符为pit 。3.2 基本流程(1) 安装驱动IO 系统的功能是将用户的IO 请求转换成对相应驱动程序具体操作函数的调用,他通过维护一个包括所有驱动程序操作函数的地址表来实现的。通过调用ios-DrvInstall()可以动态安装驱动程序,该函数的参数就是7 种基本 IO 操作函数指针。iosDrvInstall()函数将这些地址写入驱动表中的一块空闲存储区中,并返回这块存储区的编号, 编号即驱动程序号, 可被与驱动程序相关联的设备使用。iosDrvInstall()的原型是:int iosDrvtnstall(FUNCPTR pCreate,FUNCPTRpDelete, FUNCPTR pOpen , FUNCPTR pClose,FUNCPTR pRead,FUNCPTR pWrite,FUNCPTR pI-octl);当调用 iosDrvInstall()注册 IO 函数成功后,在shell 下用 iosDrvShow命令可以观察驱动表中ADT700的驱动入口。(2) 创建设备名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - 创建设备过程即是调用设备创建函数iosDevAdd()将此设备加入到IO 系统的设备列表中。 iosDevAdd()的原型为:STATUS iosDevAdd(DEV_HDR*pDevHdr,char*name,int drvnum);其中: DEV_HDR是一个指向该设备的描述符指针;而DEV_HDR结构中的第一项则指向下一个设备的描述符指针。设备创建成功后, 在 shell 下用 devs 命令可以观察设备列表中ADT700的设备描述符。以 ADT700中 adtDrv驱动为例,以上两步的完成过程如图2 所示。(3) 实现 I O 函数安装驱动和创建设备完成后,就需要实现IO 函数,即填充驱动表中的函数了。对于字符型设备而言,打开设备操作与创建设备操作通常使用相同的函数,底层驱动中都用 xxOpen()完成;而设备驱动一旦安装,就无需删除,remove()无效,因此在底层驱动中 xxRemove()为空。下面给出了ppiDrv驱动中 ppiRead()的实现模板。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - 完成以上 3 步,就基本实现了驱动程序,此时, 在应用程序中可以用标准接口函数进行操作了。以打开ADT700中定时计数器 ( 驱动为 pitDrv)为例。此时,在 shell 用 iosFdShow命令可以观察到新创建的文件描述符 pit timer。4 结 语本文以数据采集卡驱动程序为例,详细介绍了Vx-Works操作系统下字符设备驱动程序的开发过程。 本驱动程序封装了ADT700几乎所有功能, 支持标准的IO 系统接口函数。用户可将ADT700当作文件,只需定义文件名建立文件描述符,而无需关心底层实现,即可完成对他的操作,从而缩短了应用程序开发时间,提高了效率。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -

    注意事项

    本文(2022年VxWorks下数据采集卡驱动程序开发 .pdf)为本站会员(Che****ry)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开