问题标签 [cvi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
276 浏览

c - LabWindows/CVI - 图像处理

我正在尝试将图像从 RGB 转换为黑白图像(0 或 1)。起初我已将其转换为灰度,但现在我被卡住了(我的想法是找到我使用 matlabe 所做的中间,现在我需要标准化 evrything..)。也许有人知道该怎么做?

0 投票
1 回答
265 浏览

nidaqmx - 在 LabWindows CVI 中切换 NRSE、RSE 和差分模拟输入

我在从 LabWindows CVI 中的 DAQ 卡读取模拟输入时遇到一些问题;默认情况下,输入配置似乎设置为“差分”,我想知道如何将其更改为 NRSE。

0 投票
1 回答
506 浏览

cvi - CVI 双转字符

我正在尝试将字符串与数字(双)值和文本连接起来。

我当前的代码:

我的问题出在“I_directLed”和“U_directLed”上。

我必须将双精度转换为字符。

谢谢你的帮助。

0 投票
0 回答
83 浏览

c++ - 为什么在 Visual Studio C++ 2015 中,浮点数在 32 位中正确读取,但在 64 位中不正确

我在 Visual Studio 2015 中有一个应用程序,它接收某个结构,作为内存指针,其中包含来自 LabWindows CVI 中写入套接字的应用程序的一些字段。然后我在我的应用程序中将内存重新转换为相同的结构。代码如下:

结构:

所有字段都正确转换,我可以看到正确的值,但浮点字段(在这种情况下为 varFloat)总是带有垃圾(通常接近 0,但有时例如 2*e24)。我想这可能是由于编译问题或内存复制问题,但有趣的是它在 32 版本的应用程序中有效,但在 64 版本中无效。

问题可能出在哪里,我该如何解决?

谢谢!

0 投票
2 回答
232 浏览

c - 在 C 中打印 SQL

我正在寻求在 C 中打印 SQL 语句结果的帮助。我试图不将每个变量设置为指针,然后使用该指针将变量打印出来。如果我这样做了,我会有几百个变量。这是我到目前为止所尝试的。我真的迷失了如何让它正确输出。任何帮助,将不胜感激。

0 投票
1 回答
361 浏览

graph - 如何在 LabWindows CVI 中创建连续电压与时间关系图

我对如何在 CVI 中创建代码以在 CVI 中创建电压(y 轴)与时间(x 轴)的关系图感到困惑,我可以用它来实时跟踪实验中的电压。在做了一些研究之后,我想我需要使用 DAQmx 功能。任何帮助和教程将不胜感激。

0 投票
1 回答
212 浏览

multithreading - DiscardAsyncTimer 在计时器回调完成之前返回

我正在尝试使用异步计时器在 LabWindows/CVI 2017 中编写程序,但遇到了 DiscardAsyncTimer() 函数的问题。从 DiscardAsyncTimer() 的文档中:

在所有未完成的异步回调返回之前,创建或丢弃异步计时器的调用不会完成(将阻塞)。

但是,我遇到了一些内存问题,我在调用 DiscardAsyncTimer() 后释放了异步计时器线程中使用的内存。我希望内存不再使用,但显然情况并非如此?我在下面有一个示例程序,它重现了我的问题。运行时,由于尝试访问已释放的内存,该程序会生成“一般保护错误”。但是,如果我对文档和文档本身的理解是正确的,那么这应该是不可能的,因为 DiscardAsyncTimer() 应该阻塞,直到所有回调返回。

我的问题:

  1. 我是否正确理解文档?
  2. 我在这个例子中做了一些愚蠢的事情吗?
  3. 在释放内存之前,我应该如何验证我的异步计时器线程是否已完成运行?

示例程序:

一周前我还在 LabWindows/CVI 论坛上问了这个问题,没有任何回应:https ://forums.ni.com/t5/LabWindows-CVI/DiscardAsyncTimer-returning-before-timer-callback-is-complete/td- p/3943460

0 投票
1 回答
1097 浏览

c++ - 使用 VID、PID、+SN 查找 USB 端口号

我正在寻找 ansi c/c++ 中的示例代码,它将通过它们的 pid/vid/sn# 找到 USB 设备,然后找到相关的 comport 号。我有多个连接到 pc 的 FTDI usb 串行端口,需要通过已知的 SN# 识别每个端口。我找到的这段代码将显示 HWID 信息,但我如何使用它来获取 comport 号?以下是对其中一个设备的以下代码的响应: USB\VID_0403&PID_6001\FTAME7HK 是否有在线教程运行此类代码的示例?

0 投票
0 回答
34 浏览

c - 使用硬编码 C 批处理脚本重定向日志输出

我尝试在 CVI 平台(作为 C 代码批处理脚本)中执行以下“unknown.exe”命令,并将这些命令输出重定向到日志文件中。

当我运行脚本时,exe文件可以执行,但无法获得输出“日志文件”。

我不明白这里出了什么问题。

0 投票
1 回答
377 浏览

cvi - 如何解决 CVI/Labwindows 中的非致命运行时错误

它说“uir中指定的回调函数函数不是已知函数。如果您使用外部编译器,则必须在可执行文件或DLL中包含所有uir回调对象或源文件”。我收到此错误,如何解决此问题。谢谢你。