Moja aplikacja wyglada narazie tak (jej zadaniem jest otworzyc port szeregowy , wyslac jakies znaki np A i zamknac go) :
main.cpp
Kod: Zaznacz cały
#include </home/xellos/qt/03_konsola/qextserialport/posix_qextserialport.h>
#include </home/xellos/qt/03_konsola/qextserialport/qextserialbase.h>
#include <QtCore/QCoreApplication>
#include <QtCore/QString>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//Posix_QextSerialPort *RS232=new posix_QextSerialPort(?/dev/ttyACM0?);
//Posix_QextSerialPort RS232(?/dev/ttyACM0?);
Posix_QextSerialPort *RS232 = new Posix_QextSerialPort("/dev/ttyACM0");
RS232->setBaudRate(BAUD19200); //com1,19200,n,8,1
RS232->setFlowControl(FLOW_OFF);
RS232->setParity(PAR_NONE);
RS232->setDataBits(DATA_8 );
RS232->setStopBits(STOP_1);
if (RS232->open()) {
//RS232->putch(?a?);
//RS232->putch(?a?);
QString message(?010C\r?); // tu pojawia sie blad -
RS232->flush();
RS232->close();
}
return a.exec();
}
blad ktory sie pojawia to :
: error: invalid suffix "C" on integer constant
z tym ze jest to przyklad przepisany ze strony itnernetowej i ma dzialc bezblednie
gdy odkomentuje
RS232->putch('a'); pojawi sie blad ze biblioteka z ktorej krozystam do wysylania czegos na port com nie ma w sobie funkcji putch
tak wiec - w czym jest problem ?
czy mam jakas bledna konfiguracje ?
zawartosc pliku pro
Kod: Zaznacz cały
QT -= gui
TARGET = 03_konsola
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += /home/xellos/qt/03_konsola/qextserialport/
QMAKE_LIBDIR += /home/xellos/qt/03_konsola/qextserialport/build
LIBS += -lqextserialport
unix:DEFINES = _TTY_POSIX_
win32:DEFINES = _TTY_WIN_ QWT_DLL QT_DLL