1.怎样将选择波特率


1)使用if else 的方法
    if(ui->BaudRate->currentText()==tr("9600"))   //根据组合框内容对串口进行设置
       my_serialport->setBaudRate(QSerialPort::Baud9600);
    else if(ui->BaudRate->currentText()==tr("115200"))

2)使用 switch case 的方法
一般使用 if else的方法

2何时去读缓冲区
1)定时器的方法
timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(updateserial()));
// 1s
timer->start(1000);

void Widget::updateserial()
{
requestData = my_serialport->readAll();
if(requestData!= NULL)
{
ui->recivetxt->append(requestData);
}
requestData.clear();
}

2)利用SLOT 函数
connect(my_serialport,SIGNAL(readyRead()),this,SLOT(updateserial()));

一般选用定时器的方式
3怎样将数据显示在文本框中
requestData = my_serialport->readAll();
if(requestData!= NULL)
{
ui->recivetxt->append(requestData);
}


4怎样从文本框中读数据后发送
myCom->write(ui->SendLineEdit->text().toAscii());//在Qt 5中没有toascii

QByteArray TxData;
QString string;
string=ui->sendtxt->toPlainText();
TxData=string.toLocal8Bit();
my_serialport->write(TxData);

5定时发送
int interval = ui->lineEditTime->text().toInt(&ok); //从文本框中获取定时时间
timer = new QTimer();
connect(timer, SIGNAL(timeout()), this, SLOT(timeout()));
timer->setInterval(interval);
timer->start();

6如何存储数据
QString fileName = QFileDialog::getSaveFileName(this, tr("保存数据"),"./",tr("文本文件 (*.txt *.dat);;所有文件 (*.*)"));//获得filename
QFile file(fileName); //新建file对象
file.open(QIODevice::WriteOnly);//打开
file.write(ui->textEditRecv->toPlainText().toAscii());//写入
file.close();//关闭
和串口的操作相同
在linux中建设别当作文件处理,相比Qt 也将设备和文件的操作方式封装成一样



Qt 串口学习3的更多相关文章

  1. Qt 串口学习2

    未命名 (2) 1 新建串口 //new serial portmy_serialport= new QSerialPort(); 2给串口设定名字 my_serialport->setPort ...

  2. QT入门学习笔记2:QT例程

    转至:http://blog.51cto.com/9291927/2138876 Qt开发学习教程 一.Qt开发基础学习教程 本部分博客主要根据狄泰学院唐老师的<QT实验分析教程>创作,同 ...

  3. Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了

    Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了.Google的话能解决很多问题,如果没搜到资料的话,如果不是问题太过具体或者奇葩,那就是搜索方法的问题.中文教程中,Qt学习之路系列很不 ...

  4. [转] Qt 多线程学习

    Qt 多线程学习 转自:http://www.cnblogs.com/IT-BOY/p/3544220.html 最近的项目上用到了关于多线程的知识,自己也比较感兴趣,所以就拿了那本<C++ G ...

  5. Qt串口通信

    1. Qt串口通信类QSerialPort 在Qt5的的更新中,新增了串口通信的相关接口类QSerialPort,这使得在开发者在使用Qt进行UI开发时,可以更加简单有效地实现串口通信的相关功能. 开 ...

  6. Qt入门学习——Qt 5 帮助文档的使用

    Qt入门学习——Qt 5 帮助文档的使用 学习图形界面开发,肯定离不开帮助文档的使用,因为它不像 C 语言那样就那么几个函数接口,图形接口的接口可以用海量来形容,常用的我们可能能记住,其它的真的没有必 ...

  7. linux下的qt串口通信

    1.linux下的qt串口通信跟windows唯一的差别就是端口号的名字,windows下面是COM,而linux是ttyUSB0的路径 2.一般情况下linux插上USB转串口线就可以在/dev/目 ...

  8. QT5入门之23 -QT串口编程(转)

    QT5入门之23 -QT串口编程   QT5有专门的串口类: QSerialPort:提供访问串口的功能 QSerialPortInfo:提供系统中存在的串口的信息 具体使用方法: 1.在pro文件中 ...

  9. 【转】QT 串口QSerialPort + 解决接收数据不完整问题

    类:QSerialPort 例程:Examples\Qt-5.9.1\serialport\terminal,该例子完美展示了qt串口收发过程,直接在这上面修改就可以得到自己的串口软件.核心方法 // ...

随机推荐

  1. Hibernate4 No Session found for current thread原因

    Hibernate4 与 spring3 集成之后, 如果在取得session 的地方使用了getCurrentSession, 可能会报一个错:“No Session found for curre ...

  2. java基础之 异常

    Throwable是所有Java程序中错误处理的父类,有两种资类:Error和Exception. Error:表示由JVM所侦测到的无法预期的错误,由于这是属于JVM层次的严重错误,导致JVM无法继 ...

  3. eclipse 提交作业到JobTracker Hadoop的数据类型要求必须实现Writable接口

    问:在eclipse中的写的代码如何提交作业到JobTracker中的哪?答:(1)在eclipse中调用的job.waitForCompletion(true)实际上执行如下方法 connect() ...

  4. 2013年7月份第3周51Aspx源码发布详情

    批量重命名文件工具源码  2013-7-19 [VS2010]功能介绍:这是一个新型的文件重命名,主要用了TreeView(树形视图)来选择文件夹,批量进行文件重命名.其中,有"编号在前,编 ...

  5. WPF 中动态创建、删除控件,注册控件名字,根据名字查找控件

    动态创建控件 1.容器控件.RegisterName("Name",要注册的控件)   //注册控件 2.容器控件.FindName("Name") as  控 ...

  6. Ubuntu 14.10 下安装SVN

    本文主要介绍SVN独立服务器的的安装和简单配置:1.安装 # sudo apt-get install subversion 测试安装是否成功: # svnserve --version 回车显示版本 ...

  7. 重拾java系列一java基础(2)

    1.分支流程控制 if(布尔表达式/分支条件){  //语句块} if(布尔表达式/分支条件){  //语句块1}else{  //语句块2} if(条件1){  //语句块1}else if(条件2 ...

  8. 如何去除内联元素(inline-block元素)之间的间距(转载)

    如何去除内联元素(inline-block元素)之间的间距   前几天写一个专题页 div{width:900px;}div a{ display:inline-block; width:300px; ...

  9. String to Integer (atoi) ---- LeetCode 008

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  10. A Knight's Journey_DFS

    Description Background The knight is getting bored of seeing the same black and white squares again ...