微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于NI-VISA的USB接口虚拟数据采集仪设计

基于NI-VISA的USB接口虚拟数据采集仪设计

时间:06-12 来源:互联网 点击:

的内容。中断服务模块的伪代码如下:

本文给出的实例是当单片机接收到上位机发送过来的“开始温度采集”信号后,开始不断启动温度的采集和往上位机发送温度数据,直到收到上位机发送过来的“停止温度采集”信号。本实例单片机端的主程序伪代码如下:

在“中断服务模块”代码中的端点2的OUT事务部分,读取上位机发送过来的数据,从该数据中获取信息,刷新“开始温度采集”的标志,然后退出中断。在单片机主程序里面可以根据对该标志的判断来决定开始采集温度还是暂停采集温度。

3 上位机软件设计

上位机的USB设备的驱动编写采用的是NI-VISA图形化的方法进行设置,详细步骤见参考文献。驱动编写后,接下来就是采用LabVIEW 2012编写上位机程序,上位机的运行界面如图2所示。

其关键程序代码如下:

①打开USB资源。该部分代码如图3所示。其中关键函数是图3中所示的“VISA打开”函数。

②点击运行界面上的“开始采集温度”按钮。实现上位机往CH372设备发送一个字符“1”。CH372设备接收后,触发单片机中断服务读取该字符。读取该字符后,刷新“开始采集温度”的标志。在单片机的主程序中,根据该标志启动温度采集和往上位机发送温度数据。因此,上位机程序中必须含有往CH372设备写发送数据的操作和读来自CH372设备数据的操作,该部分代码如图4所示。其中的关键函数是图4所示的“VISA写入”函数和“VISA读取”函数。

结语

该模板采用CH372芯片的内置同件模式,屏蔽了USB通信的底层细节,大大降低了USB通信的复杂度。同时对CH372的操作细节进行了封装,提供相应接口给应用层,开发者的设计只局限在应用层,大大降低了开发时间和难度。采用NI-VISA的图形化配置的方法快速开发了USB设备的驱动,采用LabVIEW里面提供的函数方便实现USB设备打开和读写操作。因此,该模板能实现USB接口的虚拟数据采集仪的快速设计。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top