Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

11/11/2014 #1


Comunicacion serial usando Qt y Visual Studio
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(); }
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.