View Full Version : سریال پورت در qml
ali_72
شنبه 19 دی 1394, 13:49 عصر
سلام
سمپل سریال پورت برای qt زیاده ولی نمیدونم من که از qml استفاده میکنم چطور استفاده کنم
ممنون میشم راهنمایی کنید
با امید تقریبا 0 درصد این تاپیک رو می نویسم
اگه دوستان تونستن راهنمایی کنن که چقدر خوب
اگه نشد آخرش که باید در بیاد
جوابش رو اینجا بنویسم :لبخند:
negative60
شنبه 19 دی 1394, 18:40 عصر
QML فقط يک رابط کاربری هست
سورس برنامه شما با ++c هست که هم ميتونيد از کلاس های کيوت بهره ببريد هم کتابخونه های ديگه که برای ++c موجود هست
ali_72
یک شنبه 20 دی 1394, 08:19 صبح
QML فقط يک رابط کاربری هست
سورس برنامه شما با ++c هست که هم ميتونيد از کلاس های کيوت بهره ببريد هم کتابخونه های ديگه که برای ++c موجود هست
ممنون دوست عزیز
بله میدونم
ولی مثلا ارتباط با دوربین و تنظیمات اون با خود qml انجام شد
خواستم ببینم برای ارتباط با پورت سریال چه کارهایی میشه انجام داد
که البته من هم در جستجو به نتیجه ای که شما گفتید رسیدم
ali_72
یک شنبه 20 دی 1394, 11:38 صبح
من تصمیم به اجرا مثال زیر از سایت qt داشتم
http://doc.qt.io/qt-5/qtserialport-creaderasync-example.html
با کد زیر در main.cpp:
#include <QApplication>#include <QQmlApplicationEngine>
#include <QtSerialPort/QSerialPort>
#include "serialportreader.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
QStringList argumentList = QCoreApplication::arguments();
QTextStream standardOutput(stdout);
int argumentCount = QCoreApplication::arguments().size();
if (argumentCount == 1) {
standardOutput << QObject::tr("Usage: %1 <serialportname> [baudrate]").arg(argumentList.first()) << endl;
return 1;
}
QSerialPort serialPort;
QString serialPortName = argumentList.at(1);
serialPort.setPortName(serialPortName);
int serialPortBaudRate = (argumentCount > 2) ? argumentList.at(2).toInt() : QSerialPort::Baud9600;
serialPort.setBaudRate(serialPortBaudRate);
if (!serialPort.open(QIODevice::ReadOnly)) {
standardOutput << QObject::tr("Failed to open port %1, error: %2").arg(serialPortName).arg(serialPort.errorString() ) << endl;
return 1;
}
SerialPortReader serialPortReader(&serialPort);
return app.exec();
}
ولی خطای زیر را دارم:
138299
negative60
یک شنبه 20 دی 1394, 15:24 عصر
اين ماژول رو در فايل pro. پروژه اضافه کرديد؟
QT += serialport
اين لينکی که قرار داديد تو خود Qt Creator وجود داره مثل اين مثال (http://doc.qt.io/qtcreator/creator-build-example-application.html) انجام بديد مونتها بجای dock , سريال(serial) رو سرچ کنيد
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.