【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号引脚。

相关推荐
burning_maple14 分钟前
AI 工程实战指南:从零开始构建 AI 应用
开发语言·人工智能
你的牧游哥23 分钟前
Java 核心概念详解
java·开发语言
文祐27 分钟前
C++类之虚函数表和虚基类表及其内存布局(一个子类虚继承一个父类)
开发语言·c++
xyq20241 小时前
服务定位器模式
开发语言
努力努力再努力wz1 小时前
【MySQL入门系列】掌握表数据的 CRUD:DML 核心语法与执行逻辑解析
android·开发语言·数据结构·数据库·c++·b树·mysql
xiaoye-duck1 小时前
【C++:异常】C++ 异常讲解指南:从理论到实践,深入理解栈展开和优雅处理程序错误
开发语言·c++·异常
qq_452396232 小时前
【工程实战】第八篇:报告美学 —— Allure 深度定制:让 Bug 定位精准到秒
开发语言·python·bug
Zqrnja2 小时前
PTA 2026天体选拔赛(多校联赛)L2-1 仪式网络(C++ 含代码解释)
开发语言·c++
llm大模型算法工程师weng2 小时前
负载均衡做什么?nginx是什么
运维·开发语言·nginx·负载均衡