Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ MT166-和#x421;连接没有响应С++;图书馆_C++_Serial Port_Cardreader - Fatal编程技术网

C++ MT166-和#x421;连接没有响应С++;图书馆

C++ MT166-和#x421;连接没有响应С++;图书馆,c++,serial-port,cardreader,C++,Serial Port,Cardreader,我有一台MT166-C自动售货机。我正在编写C++代码来管理分配器 在开发中使用SDK(附加)时,我遇到了一个问题。 要使用分配器,我打开COM端口。代码: int input_port; string com_str = "\\\\.\\COM"; std::cin >> input_port; std::cout << "\nInput COM value: " << input_port << std::endl; com_str = c

我有一台MT166-C自动售货机。我正在编写C++代码来管理分配器

在开发中使用SDK(附加)时,我遇到了一个问题。 要使用分配器,我打开COM端口。代码:

int input_port;
string com_str = "\\\\.\\COM";

std::cin >> input_port;
std::cout << "\nInput COM value: " << input_port << std::endl;

com_str = com_str + to_string(input_port);

char* cstr = &com_str[0];
char* port_com = cstr;

HANDLE port = CommOpenWithBaut(port_com, 9600);

if (port == 0)
{
    std::cout << "Cannot open connect!\n\n" << std::endl;

    return -1;
}
与文件类似(MT166-C.docx-第3.1页)

作为回应,我得到了代码-1-没有通信。对于其他方法,情况也是一样的

我不明白为什么分配器没有应答(没有通信)。我将非常感谢任何帮助。 我通过rs232电缆或USB适配器rs232使用连接,无需更改

谢谢你抽出时间

  • 首先,您需要检查外部设备的物理可用性
  • 检查波特率、数据位、停止位、行控制参数
  • 检查操作系统硬件列表中的驱动程序是否正确

  • 您确定端口正确吗?你确定波特率应该是9600吗?谢谢,但问题已经解决了。设备工作不正常,硬件问题。我直接连接到读卡器并使用它。是的,该设备的工作速率为9600和38400
    int iRetn = 0;
    BYTE byStatus = 0;
    
    string str = "";
    
    iRetn = MT166_GetStatus(hPortHandle, 0x98, byStatus);
    
    DLLEXPORT int APIENTRY MT166_GetStatus(HANDLE hComHandle, BYTE CardNum,BYTE &amp;byStatus)
    ///Parameter:
    // hComHandle: Input parameter, serial port handle, obtained by opening the serial port
    // CarderNum: Input parameter, card dispenser NO. Default is 0x98
    // byStatus: output parameter, card dispenser status word
    
    //Return value:
    //Succeed, return value is 0
    //failed, return value is not 0 = -1 no communication