首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QtSerialPort未写入串行端口

QtSerialPort未写入串行端口
EN

Stack Overflow用户
提问于 2018-07-06 19:48:56
回答 0查看 636关注 0票数 0

我正在尝试使用QtSerialPort向3d打印机发送Gcode命令。我可以连接并读取打印机发出的启动gcode,但我无法编写Gcode来使打印机执行某些操作。我读过很多人的代码,据我所知,我的代码看起来并没有错,但我确实遗漏了一些东西。

这是我用来连接3d打印机的东西:

代码语言:javascript
复制
void MainWindow::on_connectButton_clicked()
{
    serial->setPortName(ui->portBox->currentText());
    serial->setBaudRate(250000);
    serial->setDataBits(QSerialPort::Data8);
    serial->setParity(QSerialPort::NoParity);
    serial->setStopBits(QSerialPort::OneStop);;
    serial->setFlowControl(QSerialPort::NoFlowControl);
    if (serial->open(QIODevice::ReadWrite)) {
       ui->label->setText("Connected to Printer!!");
    } else {
    ui->label->setText("Error: Failed to connect");
    }
}

这就是我要写到串行端口的内容:

代码语言:javascript
复制
QString command = "G28";
QByteArray x = command.toLocal8Bit();
serial->write(x);

这没有给我任何错误,但打印机没有反应。我尝试了Qt串行控制台示例,并发送了"G28“,打印机正确地做出了反应。在同一个程序中,我添加了一个执行上述代码的按钮来编写命令,但它什么也没做。这告诉我问题可能出在我写端口的方式上。有谁知道我哪里做错了吗?提前谢谢。

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51209822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档