这是一个特定于 VeriFone 终端平台编程的问题。
背景:
我最近将一个为 VeriFone 的 VerixV (Vx) 平台编写的程序移植到了 eVo 平台。在此过程中,我将用于 eVo 的 ARM 编译器安装到新的开发机器上(最初编写程序时,它是在具有用于 Vx 平台的旧 ARM 编译器但没有用于 eVo 的编译器的机器上编写的)。我没有在这台新计算机上安装 Vx 包,因为 eVo 编译器和库应该是向后兼容的(假设你编译时没有-b
.
问题:
据我所知,一切都很好——我可以为 Vx 和 eVo 编译,一切似乎都很好,除了我无法将 LOG_PRINTF(()) 语句写入 Vx 平台上的 COM 端口。请注意,我可以从我的 eVo 终端获取 LOG_PRINTF 语句。
细节:
我总是能够让 LOG_PRINTF 语句写入我另一台计算机上的 com 端口,所以我想知道新旧库(或编译器)之间是否发生了变化,这需要我做一些特殊的事情来让 LOG_PRINTF 工作Vx。请注意,我没有尝试使用为 eVo ( LOGSYS_NEW_API_STYLE
) 增强的新 LOG_SYS,因为我的理解是这仅适用于 eVo。
我想我已经做了我应该做的一切:
- 我正在编译
-DLOGSYS_FLAG
- 托管程序的组(让我们称之为
TEST
)有TESTLOG=P
(我也尝试过'C'而不是'P',但没有效果) - 第 15 组有
#LOGPORT=COM1
- 我也尝试过添加
LOGMODE=S
并LOGMODE=B
在 15 中尝试过,但这也没有改变任何东西 - 我已经将 VMAC 的调试版本下载到第 1 组中,它可以很好地写入 com 端口(我看到使用 TeraTerm 的输出)。
是否有任何 VeriFone 程序员以前见过这种事情并且可以帮助我?我不知道还要检查什么。