• serialport + qcustomplot 绘制串口数据


    很久之前用Qt的serialport + qcustomplot 做了一个小工具,通过UART搜集ADC 数据,然后将波形展示在GUI上。简易代码已上传到gitee

    https://gitee.com/xianting77/serialAdcPlot/tree/master

    QSerialPort模块详细使用方法见下面,很清楚。

    https://www.jb51.net/article/182566.htm

    https://blog.csdn.net/yuyu414/article/details/42400721

    使用过程中遇到了nullptr问题,最终参考后,解决问题。

    QT编译器问题带来的编译错误:error: 'nullptr' was not declared in this scope

    这个错误提示有点迷惑性,意思是nullptr在当前作用域没有被声明,就好像是变量没有声明一样的。

    实际上,nullptr是C++11引入的关键字,这个编译器没有支持C++11。出现这个错误说明你的编译器没有支持C++11,至少没有完整支持C++11。

    nullptr关键字用于标识空指针,是std::nullptr_t类型的(constexpr)变量。它可以转换成任何指针类型和bool布尔类型,但是不能被转换为整数。

    char *p1 = nullptr; // 正确
    int *p2 = nullptr; // 正确
    bool b = nullptr; // 正确. if(b)判断为false
    int a = nullptr; // error

    解决办法可以在在qt中要在Makefile中添加相关的编译参数可以通过在xx.pro文件中修改来实现:

    在xx.pro中通过使用QMAKE_CXXFLAGS设置来实现(以添加gdb调试参数为例)

     QMAKE_CXXFLAGS += -g(在xx.pro文件中可能显示的是黑色,其他显示为有紫色)

    要支持C++11 可以在后面加“ -std = c++11”

     

  • 相关阅读:
    常见限流算法
    spring aop 事物
    Java序列化和反序列化为什么要实现Serializable接口
    java类在何时被加载?
    mysql 排序 是怎么工作的?
    程序员转正述职报告
    .NET中使用Channel<T>
    .NET-服务承载系统(Hosting)(支持Cron表达式)
    JObject拼接Json字符串
    NET5 使用FTP发布
  • 原文地址:https://www.cnblogs.com/7star/p/15911350.html
Copyright © 2020-2023  润新知