Comunicacion serial usando Qt y Visual Studio

#1
Hola a todos:
Me gustaría amablemente preguntarles acerca de cómo poder realizar la comunicación serial con Qt.
He intentado de muchas formas pero ninguna me ha funcionado.
Si alguien de ustedes tiene experiencia en esto, le estaré realmente muy agradecido.
Que tengan un lindo día.

P.S: Uso Qt dentro de Visual Studio, y estoy tratando de desarrollar una aplicación de consola.

Aquí les dejo el código que tengo hasta ahora: Cualquier sugerencia se agradecerá muchísimo.

Código:
//mytimer.hpp
#ifndef MYTIMER_HPP
#define MYTIMER_HPP
#include <QtSerialPort/QtSerialPort>
#include <QTimer>
#include <QThread>
#include <QObject>


class MyTimer : public QObject
{ Q_OBJECT
public: MyTimer(int,int); QSerialPort serial; QTimer timer; int how_many_times; int sampling;
signals: void done();
public slots: void MyTimerSlot();
};
#endif // MYTIMER_H


//mytimer.cpp
//#include <QtSerialPort/QtSerialPort>
#include “mytimer.hpp”
#include <QDebug>
MyTimer::MyTimer(int a, int b)
{ how_many_times = a; sampling = b;
connect(&timer, SIGNAL), this, SLOT)); timer.setInterval(sampling); timer.start();
}
void MyTimer::MyTimerSlot()
{
if (how_many_times 1) { timer.stop(); } /*================================================= =======================*/ serial.setPortName(“COM1”); serial.setBaudRate(QSerialPort::Baud9600); serial.setDataBits(QSerialPort:ata8); serial.setParity(QSerialPort::NoParity); serial.setStopBits(QSerialPort::OneStop); serial.setFlowControl(QSerialPort::NoFlowControl); serial.open(QIODevice::ReadWrite); serial.write(“hello”); serial.close(); /*================================================= =========================*/ qDebug() << “hello” ; how_many_times -= 1; if (how_many_times == 0) { done(); }
}



//main.cpp
#include <QCoreApplication>
#include “mytimer.hpp”
int main(int argc, char *argv[])
{ QCoreApplication a(argc, argv);
MyTimer timer(20,500); QObject::connect(&timer, SIGNAL), &a, SLOT)); return a.exec(); }
 
Última edición por un moderador:

Temas similares

Arriba