当前位置: 首页 > news >正文

地产网站建设公司国内免费服务器地址

地产网站建设公司,国内免费服务器地址,wordpress tag页,做网站公司的商标需要注册吗目录 1.1.1 添加库#xff0c;添加类 1.1.2 定义串口 1.1.3 搜索串口 1.1.4 设置和打开串口 1.1.5 读取数据 1.1.6 发送数据 1.1.7 关闭串口 1.1.1 添加库#xff0c;添加类 首先#xff0c;QT5 是自带 QSerialPort(Qt5 封装的串口类)这个类的#xff0c;使用时…目录 1.1.1  添加库添加类 1.1.2 定义串口 1.1.3  搜索串口 1.1.4 设置和打开串口 1.1.5 读取数据 1.1.6 发送数据 1.1.7 关闭串口  1.1.1  添加库添加类 首先QT5 是自带 QSerialPort(Qt5 封装的串口类)这个类的使用时需要在 pro 文件里面添加一行 QT serialport 加入下面两个文件 #include QSerialPort #include QSerialPortInfo QT5 中串口通信是借助一个 QSerialPort 的对象来实现的在设置 QSerialPort 对象对串口的名称、波特率、 数据位、校验位、停止位等参数后方能对串口进行读写。下面我总结了一下借助 QSerailPort 对串口进行设 置、打开、读、写和关闭的过程。 1.1.2 定义串口 QSerialPort *uart; uart new QSerialPort(this);1.1.3  搜索串口 //availablePorts 是返回当前系统所有能用的串口,返回值是一个容器//QList 是容器类,在此的容器里边装的是 QSerialPortInfoQListQSerialPortInfo info QSerialPortInfo::availablePorts();for(int i0; iinfo.size(); i){ui-uartNameCombo-addItem(info[i].portName()); //addItem 加入数据到下拉 菜单里}1.1.4 设置和打开串口 void UiMain::on_openBtn_clicked() {QString uartName;QSerialPort::BaudRate baudRate;QSerialPort::DataBits dataBit;QSerialPort::StopBits stopBit;QSerialPort::Parity parityBit;//currentText 是获取当前选中的名字uartName ui-uartNameCombo-currentText();//波特率if(ui-baudrateCombo-currentText() 9600){baudRate QSerialPort::Baud9600; }else if(ui-baudrateCombo-currentText() 115200){baudRate QSerialPort::Baud115200;}//数据位if(ui-databitCombo-currentText() 5){dataBit QSerialPort::Data5;}else if(ui-databitCombo-currentText() 6){dataBit QSerialPort::Data6;}else if(ui-databitCombo-currentText() 7){dataBit QSerialPort::Data7;}else if(ui-databitCombo-currentText() 8){dataBit QSerialPort::Data8;}//停止位if(ui-stopbitCombo-currentText() 1){stopBit QSerialPort::OneStop;}else if(ui-stopbitCombo-currentText() 1.5){stopBit QSerialPort::OneAndHalfStop;}else if(ui-stopbitCombo-currentText() 2){stopBit QSerialPort::TwoStop;}//校验位if(ui-parityCombo-currentIndex() 0){parityBit QSerialPort::OddParity;}else if(ui-parityCombo-currentIndex() 1){parityBit QSerialPort::EvenParity;}else if(ui-parityCombo-currentIndex() 2){parityBit QSerialPort::NoParity;}//把参数设置到 uart 里uart-setPortName(uartName);uart-setBaudRate(baudRate);uart-setDataBits(dataBit);uart-setStopBits(stopBit);uart-setParity(parityBit);if(!uart-open(QIODevice::ReadWrite)){QMessageBox::critical(this, fbi warnning, 打开失败);}else{QMessageBox::information(this, 提示, 打开成功);}1.1.5 读取数据 串口在收到数据后会将数据存入接收缓冲区。此时我们可以通过 readAll()函数将接收缓冲区的数据读出 来。当串口的接收缓冲区有数据时QSerilaPort 对象会发出一个 readyRead()的信号。因此我们可以编写一个槽 函数来读数据。 connect(uart, SIGNAL(readyRead()), this, SLOT(slotUartReadyRead())); QString uartBuf; //假如没收完断截的数据,就会一直触发槽函数,定时器会被一直重置,不会超时 //当断截数据发完了,定时器就没人重启了,就会超时,这个时候收到的数据就是完整的数据 //也就是说收到一个字节后20ms 内没有再次收到数据默认为一帧数据接收完成 void UiMain::slotUartReadyRead() {timer-start(20); //重启定时器 20ms uartBuf.append(uart-readAll()); //追加写入到 uartBuf 里 }//超时了,说明数据完成一帧数据 void UiMain::slotTimeout() {timer-stop();QByteArray ba;ba uartBuf.toUtf8();//QString(nRecv)不是强制转换//QString(nRecv)是会触发 QString 的构造函数,当然 QString(int)这种构造函数是没有 的,会报错 ui-recvEdit-appendPlainText(ba); }1.1.6 发送数据 使用write函数便可以把字节数组中的字节发送出去。 uart-write(buf.toUtf8()); //QString 转 char *的方法: buf.toLocal8Bit().data() 1.1.7 关闭串口  串口不用时可通过 close()函数将其关闭。 uart-close();
http://www.dnsts.com.cn/news/47810.html

相关文章:

  • 做铝材什么什么网站好网站改版 理论
  • 临沂河东建设局网站什么网站可以请人做软件
  • 如何给网站做备份网站建设与管理实践心得
  • 韶关企业网站建设公司建设银行企业网站访问不了
  • 长沙制作网站的公司中小企业加盟网站建设
  • 镇江高端网站定制凡科建站网站
  • 广州网站设计公司兴田德润电话多少电商网站建设的现实意义是什么
  • 做wap网站能火吗闲置服务器做网站
  • 一号网站建设网站制作基层建设 网站
  • 网站的设计与实现基于wed的网站开发
  • 福建市建设厅网站wordpress 三站合一
  • 网络营销网站建设实验总结辽宁招投标工程信息网
  • 如何运营垂直网站关键词加入搜索引擎网站
  • 蓬莱做网站哪家好找个网页公司做网站
  • 天津做网站多少钱国外手机设计网站推荐
  • 北京建站公司wordpress西班牙语
  • 小网站模板下载 迅雷下载 迅雷下载不了一般网站建设方案
  • 建材商城网站建设在线做app的网站
  • 专业网站建设代理广州正规网站建设哪家好
  • 合肥做网站联系方式网站怎么做背景图片
  • html5移动网站制作教程torrentkitty搜索引擎
  • 淘宝网站建设可行性分析报告可以做蛋白三位结构图的网站
  • 住房和城乡建设部的网站怎么在四川建设厅网站上进行劳务合同备案
  • 软件开发外包网站深圳软件开发培训推荐
  • 漯河网站开发点评网站分站设计
  • 专业网站设计制作服务p2p网上贷款网站建设方案.docx
  • 杭州网站优化推荐深圳工程建设服务网
  • 宽屏大气通用企业网站源码asp模板源码程序生成静态html怎么用电脑做网站虚拟空间
  • 设计投稿的网站有什么那些做测评的网站好
  • 专业做网站联系方式wordpress 窗口