自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 QByteArray 使用 fromRawData 错误

qbytearray使用错误 unsigned char ucbuff[256]; //temp QByteArray qbbuff; pAmmeterSerialPort->Tcflush(); ilen = pAmmeterSerialPort->Read(ucbuff,MaxSerialRecvBuffLen,Se

2022-04-10 21:19:51 1401

原创 代码量统计colc 使用

刚做完一个项目,想统计一下代码量,使用cloc .(有点) 查看了一下做了两个模块,一个是电表模块 大概有1K的代码量第二个是负荷约束模块,代码量大概有4K多想统计自己代码量的,可以使用这个命令查一下。...

2022-03-23 10:40:06 916

原创 LINUX串口发送数据,包数据被拆分发送

当使用485通讯口获取DDSU666导轨式电能表数据时,发现会出现电表不回复数据。原因分析1包数据串口会当成多包发送。由于大傻调试工具显示时间只能到秒,更换串口调试软件后当一包数据被当成多包发送时,如果间隔时间超过5ms,则电表不回复数据,如果等于5ms则回复数据。根据DTSU666说明书,帧间隔需要大于3.5个字符的停顿间隔计算停顿间隔1、Modbus 协议报文间隔需要大于3.5个字符计算:1.1、有检验位1个字符=1(起始位)+8(数据位)+1(..

2022-03-18 20:22:39 1847

转载 QT exec()的

qt 启动一个线程,线程中启动一个定时器周期性的去做一些事情代码如下: 但是run函数只执行了一遍就结束啦。void Master::run(){ mLog->getLogPoint(sLogName)->info(QString("run")); pOneSecTimer = new QTimer(); //启动定时器 pOneSecTimer->start(1000); connect(pOn

2022-03-03 10:37:31 4516

原创 qt 销毁线程处理

基本思路:当主线程需要销毁子线程时 使用bool变量 来使run函数退出当run结束后,线程也结束了 触发 finished 我们调用deleteLater来释放申请的内存,同时将主线程实例化对象的指针释放掉,以便于后续还需要创建该线程1 主线程的操作//主线程 实例化一个类pthreat = new threat(); QObject::connect(pthreat ,&QThread::finished ,pthreat ,&QObject::dele

2022-02-24 20:34:40 4802

原创 QT map在遍历时remove其中的元素报错误

解决办法:1 声明一个list 存储要删除的key2 等遍历完成后,for循环删除带删除的map元素代码如下 仅供参考:void Master::MasterManageSlaveTimeOut(){ mLog->getLogPoint(sLogName)->info(QString(" MasterManageSlaveTimeOut ")); QMap<QTcpSocket *, bool>::iterator it; QList&lt...

2022-02-22 15:53:08 837

原创 QByteArray和自定义结构体转换

1 自定义结构体转QByteArray _SlaveRegInfo slaveReginfo; //自定义结构体方法1 使用构造转化 sendData = QByteArray((const char *)&slaveReginfo, sizeof(slaveReginfo));方法2 append方法 sendData.append((const char *)&slaveReginfo, sizeof(slaveReginfo));1QB

2022-02-18 13:47:49 2111

原创 结构体中包含MAP,使用memset清零报错

结构体中包含MAP或者list 不能用memset进行清零,否则出现段错误

2022-02-16 17:55:51 642

原创 __imp__ZN11QSerialPortC1EP7QObject

Qt出现error: undefined reference to `__imp__ZN11QSerialPortC1EP7QObject'解决方法:在pro文件中加入QT += serialport重新构建即可。

2022-02-15 10:33:52 844

原创 esp-idf点亮LED

ESP32 点亮LED灯

2021-12-11 08:40:12 978

原创 qt end()和Cend() 区别

begin():Return iterator to beginning (public member function ) cbegin():Return const_iterator to beginning (public member function ) 后者返回的是一个不可修改的迭代器,前者可修改。通俗理解,带C (const)的方法,返回的迭代器不可修改....

2021-11-23 15:30:00 629

原创 QT线程创建的两种方式

一、继承Thread类,重写run()方法步骤:创建类继承Thread 重写Thread类的run方法 调用线程的start方法(该方法有两个作用:创建线程,调用run方法)这种方式 只有Run函数是在一个新起的线程里,该线程的槽函数是跑在主线程里面的。示例代码:app.h#ifndef APP_H#define APP_H#include <QDebug>#include <QThread>#include <QCoreApplication&

2021-11-10 10:06:44 1806

转载 算法的时间与空间复杂度学习

转:https://zhuanlan.zhihu.com/p/50479555算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。那么我们应该如何去衡量不同算法之间的优劣呢?主要还是从算法所占用的「时间」和「空间」两个维度去考量。时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。 空间维度:是指执行当前算法需要占用多少内存空间,我们通常用「空间复杂度

2020-11-22 18:12:26 135

原创 vscode配置clang-format 格式化

想使用ClangFormat插件来定义vscode code中的编码格式,总是报错,查了解决了。然后我就将我自己对ClangFormat的使用做了一个总结:

2020-11-21 21:31:12 15125 3

原创 常用排序算法归纳总结

梳理中

2020-11-18 23:02:26 128

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除