我用的是单片机MG84,和Labview进行USB通讯。
一、创建VISA USB驱动
通过Labview自带的软件 NI-VISA Driver Wizard
选择USB

选择你的设备,ID在设备管理器中看,我这是已经插上电脑的,没有插的选择other

NEXT,选择路径,生成inf文件

生成好了后在进行安装
二、Labview写程序

首次程序是这样,会出现报错 VISA:(Hex 0xBFFF003A) 由于设置无效(导致属性被设置为不一致状态),将无法开始操作
参考网上的解答,重新写了下:

报错解除,可以正常读写,此报错是因为此USB是HID类型的,并且输入和输出都是中断传输,所以需要加入USB的中断处理
在labview的visa选板中,高级visa>>事件处理,选择visa启用事件和visa等待事件。

接着,在visa选板》高级visa》总线与接口配置》visa USB中,选择visa获取usb设备中断数据

要注意必须在visa写入之后才可以读取usb中断返回的数据。不写入或是写入的数据错误导致无返回值,就会产生超时错误 VISA: (Hex 0xBFFF0015) 完成操作前超时已过期。可以将超时的时间设置的长一些,看一下是不是此处的问题。如果还是在超时这里有问题,拔插一下USB,再试试吧。
连接VISA获取USB中断数据时,可能会有接线端冲突,要在 visa等待事件 定义类型,如下图所示。


另外,USB中断是需要在连线端点,右键–>创建常量–>USB中断,不能自己创建个下拉列表,不然也会报错的
本文介绍了如何在Labview中创建VISAUSB驱动以与MG84单片机进行通讯,详细步骤包括使用NI-VISADriverWizard生成驱动并安装。在编程过程中遇到VISA错误,通过调整设置和启用USB中断事件处理解决了问题。重点在于理解USB中断处理的必要性,以及正确配置Labview的VISA事件和数据获取。同时,指出了USB中断数据读取的注意事项,如避免超时错误和端点冲突。
2882

被折叠的 条评论
为什么被折叠?



