【Pmac】PMAC QT联合开发中各种可能遇到的坑

目录

  • [1. 错误 C2027 使用了未定义类型"PCOMMSERVERLib::DEVUPLOAD"](#1. 错误 C2027 使用了未定义类型“PCOMMSERVERLib::DEVUPLOAD”)
  • [2. 输入了正确的pmac的ip地址,没有显示可选的pmac设备](#2. 输入了正确的pmac的ip地址,没有显示可选的pmac设备)
  • [3. Pmac DTC-28B无读数](#3. Pmac DTC-28B无读数)

使用QT编写PMAC上位机程序时,利用QT中的dump工具可以将pcommserver.exe转化为pcommserverlib.h和pcommserverlib.cpp文件,然后将这两个文件添加到工程目录中就可以调用其中的函数了。具体可以看我之前的文章。

1. 错误 C2027 使用了未定义类型"PCOMMSERVERLib::DEVUPLOAD"

首先遇到第一个坑,将pcommserverlib.h和pcommserverlib.cpp文件添加并运行会提示如下错误。

错误 C2027 使用了未定义类型"PCOMMSERVERLib::DEVUPLOAD" (编译源文件 qtpmaccommunicate.cpp)

(在图片中我将pcommserverlib.h重命名为pcommdevice.h。.cpp同样进行重命名)

解决办法!

将pcommserverlib.h文件中9915行和11720行的Upload函数注释掉。这样程序就可以正常运行了,但缺点是不能在上位机软件中使用upload功能,因为我们把这个函数的定义给注释掉了。

我的QT版本是5.12.2,不知道是不是因为QT版本的问题导致的。有大神能完美解决的话要给我留言一下呀!

2. 输入了正确的pmac的ip地址,没有显示可选的pmac设备

第二个坑

在调用SelectDevice函数选取pmac设备时总是显示PMAC devices not registered,就算是你输入了正确的pmac的ip地址,test也成功,但就是没有显示可选的pmac设备。

解决办法:

将VS或QT或者你的EXE文件已管理员模式运行就可以了!!!

3. Pmac DTC-28B无读数

第三个坑

PMAC模数转换板DTC-28B的接线问题。在我的项目中使用到了力传感器,输出±5V模拟量信号。之前发现不论怎么按压力传感器,clipper中m105的读数不会变化。经检查发现,接线人员将28B引脚定义整反了!注意,从28B有缺口的一侧开始是1号引脚。

相关推荐
2501_933329551 小时前
企业级舆情监测系统技术解析:Infoseek数字公关AI中台架构与实践
开发语言·人工智能·自然语言处理·架构
Wave8451 小时前
C++继承详解
开发语言·c++·算法
Tairitsu_H1 小时前
C++类基础概念:定义、实例化和this指针
开发语言·c++
.柒宇.1 小时前
Java八股之反射
java·开发语言
环流_1 小时前
多线程1(面试题--常见的线程创建方式)
java·开发语言·面试
Han_han9192 小时前
常用API:
java·开发语言
minji...2 小时前
Linux 线程同步与互斥(四) POSIX信号量,基于环形队列的生产者消费者模型
linux·运维·服务器·c语言·开发语言·c++
Highcharts.js2 小时前
在 React 中使用 useState 和 @highcharts/react 构建动态图表
开发语言·前端·javascript·react.js·信息可视化·前端框架·highcharts
likerhood2 小时前
java中的return this、链式编程和Builder模式
java·开发语言
原来是猿3 小时前
Linux线程同步与互斥(三):POSIX信号量与环形队列生产者消费者模型
linux·运维·服务器·开发语言