自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 libssh C++封装(三)

libssh是一个在客户端和服务器端实现SSHv2协议的多平台C库。使用libssh,您可以远程执行程序、传输文件、使用安全透明的隧道、管理公钥等等。本文描述的对libssh客户端功能的C++封装。

2024-04-29 18:09:51 383

原创 Linux Makefile之优化

前面写了两篇关于Makefile的文章Linux Makefile编写之静态库和Linux Makefile编写之可执行程序.虽然编译没有问题,但还有优化的空间。

2024-04-29 16:44:10 493

原创 Linux Makefile编写之可执行程序

编译工具有很多(make/cmake/BJam)。如果不考虑跨平台的话,还是make比较方便。使用make编译需要编写Makefile。本文编写Makefile来生成C/C++可执行程序。

2024-04-26 11:32:13 949 1

原创 Linux Makefile编写之静态库

编译工具有很多(make/cmake/BJam)。如果不考虑跨平台的话,还是make比较方便。使用make编译需要编写Makefile。本文编写Makefile来生成C/C++静态库。

2024-04-25 12:03:41 285 1

原创 CPPTest实战演示(CppTest libssh)

CppTest是一个可移植、功能强大但简单的单元测试框架,用于处理C++中的自动化测试。重点在于可用性和可扩展性。支持多种输出格式,并且可以轻松添加新的输出格式。下面编写实际测试用例,来熟练CppTest库使用。

2024-04-24 16:51:19 183 1

原创 libssh C++封装(二)

libssh是一个在客户端和服务器端实现SSHv2协议的多平台C库。使用libssh,您可以远程执行程序、传输文件、使用安全透明的隧道、管理公钥等等。本文描述的对libssh客户端功能的C++封装。

2024-04-24 16:04:51 820

原创 CPPTest实例分析(C++ Test)

CppTest是一个可移植、功能强大但简单的单元测试框架,用于处理C++中的自动化测试。重点在于可用性和可扩展性。支持多种输出格式,并且可以轻松添加新的输出格式。下面结合实例分析下CppTest如何使用。

2024-04-23 17:03:26 1162

原创 mingw静态链接(libgcc_s_seh-1,libstdc++-6和 libwinpthread-1)

;在Windows用mingw编译的C/C++程序默认会依赖这三个动态库:- libgcc_s_seh-1.dll- libstdc++-6.dll- libwinpthread-1.dll其实可以选择链接对应版本的静态库.

2024-04-23 14:10:14 292

原创 C语言开发命令行系统

在嵌入式开发中,经常会利用命令行交互系统测试功能,本文描述使用C语言开发的一个命令行交互系统,支持命令注册,命令分组,执行命令,显示命令提示。

2024-04-22 14:47:52 397

原创 libssh C++封装(一)

libssh是一个在客户端和服务器端实现SSHv2协议的多平台C库。使用libssh,您可以远程执行程序、传输文件、使用安全透明的隧道、管理公钥等等。本文描述的对libssh客户端功能的C++封装。

2024-04-22 14:07:05 1053 1

原创 基于CppHttpLib的Httpserver

大多数嵌入式设备由于没有屏幕输出,只能通过Web页面来配置。这里利用CPPHttpLib来实现HttpServer。

2024-04-20 22:24:25 596

原创 Qt实现XYModem协议(八)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议.

2024-04-20 21:21:21 564 1

原创 Qt实现XYModem协议(七)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议

2024-04-19 10:39:22 502

原创 Qt实现XYModem协议(六)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议

2024-04-19 10:00:56 378

原创 Qt实现XYModem协议(五)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议.

2024-04-18 16:47:36 688

原创 Qt实现XYModem协议(四)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议.

2024-04-18 09:39:02 547

原创 Qt实现XYModem协议(三)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。本文利用C++实现XYModem-1K协议。

2024-04-17 14:48:31 632

原创 Qt实现XYModem协议(二)

XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一个校验和过程来进行错误检测。使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。还有一种是XMODEM-1K,它以1024字节一块来传输数据。YMODEM也是一种XMODEM的实现。它包括XMODEM-1K的所有特征,另外在一次单一会话期间为发送一组文件,增加了批处理文件传输模式。

2024-04-17 13:38:38 207

原创 FFMPEG C++封装(三)

本文描述对FFMPEG的AVPacket的C++封装。

2024-04-16 23:13:27 694

原创 Qt实现XYModem协议(一)

Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。本文利用C++实现Kermit协议,并利用Qt串口类QSerialPort实现数据读写。

2024-04-15 10:52:47 1294

原创 C++多态(面向对象编程的基础)

静态多态: 重载函数和模板机制使我们编程时简化了命名和算法实现类型无关化,使代码更优雅。动态多态: 虚函数机制使我们管理相似对象更优雅,代码更简化。是面向对象编程的基础。

2024-04-12 17:00:12 136

原创 C++继承之虚继承实例

虚继承主要用在多继承场景中,单继承或只有一层继承关系时不会发挥作用。过度使用虚继承可能会增加额外的开销,因为需要维护虚基类的地址偏移量和查找虚基类成员的位置。我们可以看到虚继承不仅是一个技术手段,也是C++语言中解决多重继承问题的一个有效方法。

2024-04-11 10:43:28 689

原创 C++继承之多重继承

通过继承机制,可以利用已有的对象类型来定义新的对象类型。所定义的新的对象类型不仅仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。多重继承 派生类可以从多个父类派生。

2024-04-10 17:42:44 334

原创 C++继承之private继承

通过继承机制,可以利用已有的对象类型来定义新对象类型。所定义的新对象类型不仅仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。private继承 派生类中父类public成员变成private成员。

2024-04-10 17:03:33 475

原创 C++继承之protected继承

通过继承机制,可以利用已有的对象类型来定义新对象类型。所定义的新对象类型不仅仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。。protected继承 派生类中父类public成员变成protected成员。

2024-04-09 17:24:21 628

原创 C++继承之public继承

通过继承机制,可以利用已有的对象类型来定义新对象类型。所定义的新对象类型不仅仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。public继承 派生类中父类public成员还是public成员。

2024-04-09 17:22:01 160

原创 Qt实现Kermit协议(六)

该模块实现了Kermit异步接收文件功能。

2024-04-08 17:29:43 365 1

原创 Qt实现Kermit协议(五)

该模块实现了Kermit异步发送文件功能。

2024-04-08 17:28:44 580

原创 记一次C语言内存越界(内存越界 段错误 Segmentation fault )

最近在用C++重构原来用C写的SDK,发现一个内存越界问题,记录下来,以供后续参考。

2024-04-07 16:22:20 136

原创 C语言printf 64位数(跨平台 32位系统 64位系统)

在使用C语言开发中,使用printf打印64位变量比较常用,通常在32位系统(long long为64位)中使用%lld输出64位的变量,而在64位系统(long为64位)中则使用 %ld。如何解决跨平台问题呢?

2024-04-07 15:44:44 186

原创 C++ 11 列表按字段初始化对象

C++要想使用{}按字段初始化对象,对象不能有构造函数。

2024-04-03 15:50:42 281

原创 C++ 11 初始化对象

在C++11中,可以使用多种方式来初始化对象。

2024-04-03 14:36:24 178

原创 gdbserver使用简介(gdb)

在嵌入式开发中,对程序调试,这时就会用到gdbserver。gdbserver与gdb需要搭配使用,gdbserver是服务端,作为服务运行在开发板上;gdb是客户端运行在主机端。本文简单讲下利用gdbserver通过网络调试开发板上程序。gdbserver其实也支持通过串口调试,本文不做描述。

2024-04-02 17:27:21 597

原创 Qt实现Kermit协议(四)

Q_OBJECTpublic:signals:protected:private:private:start 开始接收文件stop 停止传输文件cancel 中断传输文件gotFileSize 文件大小信号progressInfo 传输进度信号error 出错信号finished 传输结束信号on_init 处理开始包on_data 处理数据包on_break 处理中断包write 向串口写数据。

2024-04-02 09:18:30 380

原创 Qt实现Kermit协议(三)

该模块实现了Kermit发送文件功能。实现了三个读写接口:- write- read- getc重新实现如下接口:- on_ack- on_nack- on_error

2024-04-02 09:10:30 476

原创 Qt实现Kermit协议(二)

该模块定义和实现了Kermit协议类型。Kermit类型是纯虚类型,其派生类需要实现下面三个虚函数:- write 向串口写数据- read 从串口读数据- getc 从串口读取一个字符

2024-04-01 13:56:10 598

原创 PetaLinux使用简介

PetaLinux 工具提供在 Xilinx 处理系统上定制、构建和调配嵌入式 Linux 解决方案所需的所有组件。该解决方案旨在提升设计生产力,可与 Xilinx 硬件设计工具配合使用,以简化针对 Versal、Zynq™ UltraScale+™ MPSoC、Zynq™ 7000 SoC、和 MicroBlaze™ 的 Linux 系统开发。

2024-04-01 11:03:00 1301

原创 Qt实现Kermit协议(一)

Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。其特性如下:- Kermit文件运输协议是一个半双工的通信协议。- 它支持7位ASCII字符。- 数据以可多达96字节长度的可变长度的分组形式传输。- 对每个被传送分组需要一个确认。- Kermit文件运输协议在每次会话中可以传送多个文件。本文利用C++实现Kermit协议,并利用Qt串口类QSerialPort实现数据读写。

2024-03-29 18:38:15 802

原创 PetaLinux安装详解(Xilinx , linux, zynq, zynqMP)

PetaLinux 工具提供在 Xilinx 处理系统上定制、构建和调配嵌入式 Linux 解决方案所需的所有组件。该解决方案旨在提升设计生产力,可与 Xilinx 硬件设计工具配合使用,以简化针对 Versal、Zynq™ UltraScale+™ MPSoC、Zynq™ 7000 SoC、和 MicroBlaze™ 的 Linux 系统开发。PetaLinux 工具可帮助简化基于 Linux 产品的开发;

2024-03-29 10:18:19 1210

原创 Qt开发的多窗口文件资源管理器(SFTP,SCP)

一款基于Qt开发的Windows资源管理器。功能列表:- 支持双窗口和多Tab页- 支持命令行操作。 - 支持文件夹收藏。- 支持文件浏览历史。- 支持文件搜索操作。- 支持桌面文件夹。- ssh配置加密保存。- 支持文本文件查看/编辑操作(利用MobaTextEditor).- 支持文件拖放操作,包括双窗口拖放及与其它应用拖放操作。- 类似Windows11的简介右键菜单。- 支持远程文件系统sftp及scp。- 支持压缩文件夹浏览/编辑/修改/删除等操作(利用7zip)。

2024-03-28 17:03:26 485

开源单元测试库CppTest源码及测试程序

基于CppTest2.0.0版本,在Linux下直接make,不需要配置。

2024-04-26

Qt实现的Kermit协议源码

Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。 Kermit文件运输协议是一个半双工的通信协议。 它支持7位ASCII字符。 数据以可多达96字节长度的可变长度的分组形式传输。 对每个被传送分组需要一个确认。 Kermit文件运输协议在每次会话中可以传送多个文件。 本资源利用Qt实现了Kermit协议,收发测试验证通过。

2024-03-28

Qt实现的XModem和YModem协议源码

XModem是一种在串口通信中广泛使用的异步文件传输协议,分为XModem和1k-XModem协议两种,前者使用128字节的数据块,后者使用1024字节即1k字节的数据块。Xmodem协议传输有接收程序和发送程序完成,先由接收程序发送协商字符,协商校验方式,协商通过之后发送程序就开始发送数据包,接收程序接收到完整的一个数据包之后按照协商的方式对数据包进行校验。校验通过之后发送确认字符,然后发送程序继续发送下一包;如果校验失败,则发送否认字符,发送程序重传此数据包。 YModem协议是XModem的改进协议,它最常用于调制解调器之间的文件传输的协议,具有快速,稳定传输的优点。它的传输速度比XModem快,这是由于它可以一次传输1024字节的信息块,同时它还支持传输多个文件,也就是常说的批文件传输。 本资源利用Qt实现了XModem和YModem协议,收发测试验证通过。

2024-03-28

FFMPEG C++封装库使用示例之初始化

该示例演示了FFMPEG C++封装库的初始化,并打印支持的: - 文件格式 - 编解码格式 - 协议格式 - 过滤器格式 - 像素格式 - 采样格式

2024-03-27

C++封装例程(class,struct,public,protected,private,friend)

C++封装(class,struct,public,protected,private,friend)的博客例程。 https://blog.csdn.net/flysnow010/article/details/136907034

2024-03-25

基于Qt5.12实现TFTP的Server和Client

TFTP协议是基于UDP的简单文件传输协议,协议双方为Client和Server.Client和Server之间通过5种消息来传输文件,消息前两个字节Code是消息类型,消息内容随消息类型不同而不同。传输模式有三种:octet,netascii和mail,octet为二进制模式,netascii为文本模式,mail为文本模式,不过收到的文本不是保存到文件,而是打印出来,现在已不常用。DATA消息种数据长度是512字节,最后一个数据包可能会小于512。 本资源基于Qt5.12实现TFTP的Server和Client。

2024-03-22

Qt实现Windows的SendTo菜单

本资源在Qt平台下利用Windows API实现Windows发送到(SendTo)菜单,并实现菜单项单击功能。

2024-03-15

Qt利用WindowsAPI弹出U盘

本程序实现动态检测磁盘插拔,并判断磁盘驱动器类型,可以将U盘弹出操作,将本地磁盘进行格式化操作。

2024-03-11

Qt显示桌面菜单,包括此电脑/库目录

利用Qt实现的桌面菜单,包括桌面,此电脑,库,网络,下载,控制面板,回收站等菜单项。实现用到Window Shell编程,通过Windows Shell返回菜单项和图标,显示通过QMenu将菜单项显示出来。在界面单击右键显示菜单,选择菜单项显示该项针对的右键菜单。

2024-03-06

Qt下显示文件及目录的Windows右键菜单

本资源是Qt工程,用来显示Windows下文件和文件夹的右键菜单。

2024-03-05

空空如也

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

TA关注的人

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