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

相关推荐
玩转单片机与嵌入式25 分钟前
玩转边缘AI(TInyML):需要掌握的C++知识汇总!
开发语言·c++·人工智能
茉莉玫瑰花茶1 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
张健11564096482 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员3 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试
夜猫逐梦3 小时前
【逆向经验】一篇文章讲透为什么CE搜不到Python游戏的内存值
开发语言·python·游戏
SilentSamsara3 小时前
闭包的本质:Python 如何捕获自由变量
开发语言·python·青少年编程·pycharm
十五年专注C++开发3 小时前
浅谈LLVM
开发语言·c++·qt·clang·llvm
白夜11174 小时前
C++(标签派发 Tag Dispatching)
开发语言·c++·笔记·算法
小短腿的代码世界4 小时前
Qt数据库编程深度解析:从SQL基础到ORM架构设计
数据库·sql·qt