- 博客(253)
- 资源 (52)
- 收藏
- 关注

原创 demo代码目录整理
文章目录零散Demo代码介绍Qt代码Qxlsx报表测试代码QPainter+QPrinter报表测试代码tcpClient tcp客户端demo百度地图调用demo9宫格图案手势滑动解锁demo多菜单界面框架demoQt界面显示opencv视频demoCPP代码cpp消息处理框架C++11多线程demo代码jsoncpp使用demoLinux应用代码demo消息队列共享内存Unix域套接字C代码函数指针-注册回调框架demo短信测试代码零散Demo代码介绍平时写的一些示例代码基本框架,封装,自定义
2021-04-17 11:38:06
1951

原创 一文搞懂Linux系统开发
先列一下Linux系统开发要掌握的知识,后续的文章中,会一 一讲解。欢迎关注我的微信公众号:fensnote文章目录Linux系统开发会用到什么?C语言基础shell脚本慢慢学会使用Makefile常规Linux系统编程知识都有什么?哪些常用?哪些不常用?常规Linux编程知识文件IO文件与目录操作标准IO库进程控制高级IO进程间通信数据库串口编程网络编程结束语Linux系统开发会用到什...
2020-03-12 00:54:05
4688

原创 码云地址
已注册码云账户,之前上传的代码以及工具,会逐步托管到码云:https://gitee.com/fensnote/欢迎大家访问~
2018-07-10 09:20:09
2219
原创 全志T113交叉编译gdb工具
本文介绍了为全志T113处理器交叉编译GDB调试工具的过程。首先下载GDB 10.2源码并配置编译环境,指定交叉编译器路径和相关参数。在编译过程中遇到了函数声明缺失的错误,通过修改gdb_proc_service.h头文件添加缺失的函数声明得以解决。最后将编译生成的GDB可执行文件移植到T113开发板验证,确认能够正常调试程序。该过程为嵌入式开发提供了直接使用GDB调试的解决方案,避免了使用gdbserver的复杂性。
2025-07-17 09:56:39
186
原创 Linux下创建虚拟终端(虚拟串口)
摘要:在Linux系统中可通过创建虚拟终端(pty)实现虚拟串口功能。本文提供了C语言实现代码,通过posix_openpt()创建主从设备对,配置串口参数并建立通信。程序运行后会生成/dev/pts/X节点,可将其软链接为/dev/comX等传统串口名称,使原有串口程序无需修改即可使用。编译后运行程序即可创建虚拟串口,虽然代码设置了波特率但实际可能不生效。该方法为测试和开发提供了便利的虚拟串口解决方案。
2025-06-16 10:32:12
174
原创 shell脚本实现字符串子网掩码转为位数
该Shell脚本实现了子网掩码到CIDR位数的转换。通过将子网掩码的每个八位组转换为二进制形式,统计所有二进制位中"1"的总数来得到CIDR位数。脚本使用bc命令进行进制转换,并通过字符串处理计算"1"的个数。示例输入"255.255.255.192"输出CIDR为26,验证了转换的正确性。该脚本适合集成到网络配置系统中自动处理子网掩码转换需求。
2025-05-29 15:34:19
171
原创 电总协议调试助手更新-PowerBus-v1.0.5
电总协议调试助手是一款专为电总协议设备调试设计的工具,支持精密空调、UPS、基站电源等设备的调试。该工具简化了电总协议的校验计算和编码转换,解决了手动组包的困难,显著提高了调试效率。最新版本Ver1.0.5新增了查询版本和查询地址功能,方便用户在调试过程中快速获取设备信息。软件界面直观易用,进一步提升了用户体验。
2025-05-15 19:01:57
293
原创 海纳思(Hi3798MV300)机顶盒遇到海思摄像头
本文介绍了如何利用海纳斯机顶盒和海思Hi3516摄像头模组开发板进行录像的步骤。首先,确保摄像机模组和机顶盒通过路由器正常通信。摄像机模组基于海思SDK的demo,提供RTSP接口服务,可通过VLC测试拉流播放。录像功能通过Ffmpeg命令行实现,保存为MP4文件,并支持循环覆盖。此外,还提供了使用Go语言编写的录像代码,基于gortsplib库实现RTSP拉流存储,支持自定义参数和循环录像模式。整个过程展示了从设备连接到录像存储的完整流程,适合DIY爱好者或开发者参考。
2025-05-10 10:19:04
844
原创 HI3798MV300的机顶盒
在闲鱼上35块钱淘了一台机顶盒(中国移动的魔百盒)2+16G,配置还挺高,刷了海纳斯的系统,运行很流畅!处理器是海思的HI3798mv300 四核 A53 2g运行内存, 可玩性还是挺强的,系统运行很流畅。默认系统有两个用户,一个root,一个ubuntu。然后用qt编译个示例,HDMI输出可以正常显示。接硬盘可以挂载,可以配置共享网盘。
2025-05-06 14:58:39
444
原创 移远RG200U-CN模组WAKEUP_IN引脚
主板引minipcie图:下面是RG200U-CN 5G模组硬件手册上的图:下面是EC200N 4G模组的图:原来主板直接接EC200N 4G模组是没问题的,EC200N的1引脚不是WakeUP-in,RG2200U-CN的1引脚和19引脚都是Wakeup-in,导致模组USB没有识别。这里将主板上的1引脚上拉电阻去掉,就可以正常识别了。
2025-04-03 11:55:26
418
原创 嵌入式Linux系统检测网口状态
在嵌入式系统中,使用ifconfig命令查看网络状态时,如果是在C语言里去检测,直接读取这个文件比较方便。1----已连接网线。
2025-04-02 16:58:28
200
原创 QScroller实现QTableView的滚动、滑动效果
QScroller 是 Qt 提供的一个非常强大的工具,专门用于实现滚动效果,包括触摸屏上的平滑滚动、惯性滚动等。它是 Qt Quick 和 Qt Widgets 中实现触摸滚动的推荐方式。以下是如何使用QScroller来为QTableViewQScroller需要被显式启用,因为它默认是禁用的。可以通过调用方法来启用滚动手势。
2025-03-13 09:23:54
628
原创 patchelf用法
除了上述常见的用法外,patchelf还有其他功能,如设置程序运行时加载库的搜索路径、设置程序的运行时属性等。总的来说,patchelf是一个非常实用的工具,可以帮助我们解决程序在不同环境下的依赖库问题,让程序更加灵活地运行。patchelf是一个用于修改动态链接器属性的工具,它能够修改可执行文件的运行时属性,如修改程序的依赖库路径、修改程序的运行时加载库等。通过上述命令,我们可以修改可执行文件的运行时库路径,这对于程序在不同环境下运行时依赖库路径不一致的情况非常有用。
2025-03-07 17:15:40
360
原创 go语言实现UTF8与GB2312内码转换
使用Go语言做个UTF-8转GB2312的代码,输入utf-8编码的文本,输出转换后的国标编码的hex内码。
2025-01-15 18:18:50
453
转载 linux检查防火墙是否阻挡端口,浅析linux查看防火墙状态和对外开放的端口状态
添加指定需要开放的端口:firewall-cmd --add-port=123/tcp --permanent。移除指定端口:firewall-cmd --permanent --remove-port=123/tcp。查看想开的端口是否已开:firewall-cmd --query-port=6379/tcp。查询指定端口是否开启成功:firewall-cmd --query-port=123/tcp。查询指定端口是否已开 firewall-cmd --query-port=666/tcp。
2024-12-17 16:44:05
279
原创 分享一个牛逼的rtsp库-gortsplib
这个库里面有好多demo代码,根据demo代码可以很容易实现想要的功能,非常简单易用,如果你不熟悉go语言,可以把demo代码丢给AI,告诉它你的需求,它可以帮你修改,你只需要验证测试……
2024-11-21 18:36:27
609
原创 rk3568 debin系统如何设置开机自启动浏览器
完成上述步骤后,重启您的RK3568设备,浏览器应该会在启动时自动全屏打开指定的网址。替换为您要启动的浏览器命令(例如。替换为您希望打开的具体网址。
2024-11-05 10:40:03
390
原创 ffmpeg拉流分段存储到文件-笔记
使用了 -segment_time 选项,ffmpeg 会在每个时间段结束时自动创建一个新的分段文件,即使当前的网络流还在继续。这样可以确保视频文件的时长符合指定的分段时间,但也可能意味着最后一个分段文件的时长会少于60秒,如果流在时间段结束前停止了。这是必要的,因为默认情况下 ffmpeg 使用 UDP 协议,而 UDP 在网络质量不佳时可能会导致数据丢失。这条 ffmpeg 命令的作用是从一个 RTSP 流中捕获视频,并将其分割成一系列的视频文件,每个文件持续时间为60秒。
2024-10-28 23:17:41
1224
原创 海思hi3536c配置内核支持USB摄像头
内核更新后,系统启动,插上摄像头,在dev下面就可以看到video0设备了。选择Multimedia support,并进入。选择Media USB Adapters,并进入。内核版本:linux-3.18.20。进入Device Drivers。保存退出,重新编译内核下载。
2024-10-15 08:52:30
711
原创 QTableView使用QSortFilterProxyModel后行号错乱
进行排序或过滤后,点击事件可能会返回一个不正确的行号,因为代理模型可能会改变数据的显示顺序。为了获取点击数据的真实行号和内容,你可以使用。函数用于获取源模型中对应的索引,从而可以获取真实的行号和数据。函数,它可以将代理模型中的索引映射回源模型中的索引。如果你需要在点击事件中区分左键和右键,你可以重写。是一个槽函数,它在用户点击表格单元格时被调用。方法,并在其中检查点击的按钮类型。
2024-09-19 16:13:08
768
原创 sqlite3交叉编译问题(对‘fcntl64@GLIBC_2.28’未定义的引用)
在网上查了下这个问题的原因可能是在GLIBC库2.28版本中, "fcntl"函数的底层实现发生了变化。因此,如果在较旧的版本的GLIBC库下使用这个库可能会导致错误。还有一种办法是直接用sqlite3的静态库,也可以解决。这样的话需要升级glibc库。
2024-08-22 08:37:03
790
转载 ML307R-DC中断测试代码
ML307R openCpu开发,下面是基于开发板作者的代码做的调整测试,用77引脚配置为GPIO输入,并配置为中断,上升沿、下降沿触发中断,中断后在中断回调函数里发送时间,主循环里接收到事件后根据GPIO1的状态来设置GPIO4(16引脚)的状态。
2024-08-14 23:20:48
512
原创 go发邮件问题:tls: failed to verify certificate: x509: certificate signed by unknown authority
用go发邮件,遇到个问题,记录一下。
2024-08-07 10:36:09
1104
原创 中移ML307R DC休眠
记录一下关于ML307R DC模组的休眠功能测试中移ML307R-DC模组是一款广泛应用于物联网设备中的通信模组,具备休眠功能,可以有效降低设备的功耗。本文将介绍中移ML307R-DC模组的休眠功能使用方法,包括休眠的条件、唤醒的条件以及临时唤醒的内容。
2024-08-01 09:19:54
2152
2
原创 ML307R编译环境搭建
官方文档上对编译环境的搭建,轻描淡写,对于初学入门来说还是有点不好操作,这里也记录一下,方便别人避坑。ML307R的sdk是基于Python使用scons编译的,这一点和ML307A不一样,ML307A不用安装别的软件,直接命令行编译就行。
2024-07-21 21:45:10
2124
原创 NUC980_NuWriter 烧写或者启动报错Err-DDR
在调试新唐的nuc980时,遇到一个问题,烧写或者重启时,有时会出现内存错误:Err-DDR从上面的讨论中可以看出来可能是电源芯片的时序不匹配问题。
2024-06-12 08:20:41
473
原创 记录一个Qt调用插件的问题
插件与主程序之间,首先要定义接口,这个接口就是抽象的插件的基类,所谓接口,就是只定义了函数接口类型的纯虚函数,没有任何实现和数据。那么主程序和插件之间还需要通过信号与槽去交互,这里就需要在插件里定义信号与槽函数,但是这个信号与槽函数不能定义在接口类里面,因为信号与槽和普通的函数不一样,这里就有一个问题,如果不在接口类里面定义信号与槽函数,那么主程序与插件的类如何做信号与槽连接绑定?//实例化加载插件//实例化加载插件 if(plugin) {
2024-06-05 08:57:24
469
原创 Qt中使用继承时信号槽定义原则
使用槽函数处理信号:在类中使用槽函数处理信号时,需要确保槽函数的定义与信号参数和返回值一致。新类的信号与槽:新类可以定义自己的信号与槽,以满足特定的需求。父类的信号与槽:当一个类继承自另一个类时,它继承了父类的所有信号与槽。当在信号和槽中传递 QObject 指针时,如果需要明确指针的类型,使用 static_cast。确保信号名称相同,但参数不同。如果基类中的某个槽函数需要在派生类中有不同的行为,可以重写(override)该槽函数。当按钮被点击时,槽函数会发送自定义信号,并将信号的参数显示在标签上。
2024-05-30 18:50:26
1189
原创 socat用法记录
在服务端接收文件时,执行命令socat -u TCP-LISTEN:8080 open:test.bin,create。在客户端发送文件时,执行命令socat -u open:test.bin TCP:localhost:8080。在终端2上启动客户端连接TCP,输入命令socat - TCP:localhost:8080。在终端1上启动服务器监听TCP,输入命令socat - TCP-LISTEN:8080。在客户端登录时,输入命令socat - TCP:localhost:8080。
2024-04-30 17:57:16
1121
原创 socat移植到arm+linux
socat是一个用于建立双向数据流传输的工具,它可以在不同的网络层上创建连接,并支持多种协议,如TCP、UDP、SSL等。它非常强大且易于使用,因此广泛用于网络开发和系统管理中,这里记录一下移植到嵌入式系统的过程。
2024-04-29 18:34:22
730
转载 Windows的WSL上的ubuntu运行32位i386程序的方法
不过要运行32位的i386程序的话,WSL缺省安装的ubuntu linux是不可以的,虽然原生安装的ubuntu linux是自然就支持32位的i386程序的。然后,在系统的binfmt support的服务中增加i386可执行程序文件格式的支持,使得系统可以直接加载i386可执行程序文件格式并运行(实际上是调用qemu-i386-static来运行),这样,就可以不需要修改很多32位的软件包的编译配置文件,直接运行这些软件包的原始的build脚本就可以了。那有什么办法可以绕过这个系统支持的问题呢?
2024-03-18 11:38:15
369
原创 关于物联网的技术与概念
嵌入式系统是以应用为中心,以计算机技术为基础,能够根据用户需求(功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软硬件模块的专用计算机系统。它们通常用于特定的任务,具有高度的集成性和优化,以满足特定的性能要求。嵌入式系统技术是一种集成了硬件和软件的计算系统,旨在为特定任务或应用提供高效、可靠的解决方案。它通常用于嵌入在其他设备或系统中,以完成特定的功能,如家电、汽车、医疗设备等。嵌入式系统技术的发展促进了物联网的兴起。物联网(IoT)是一个由大量互联的设备组成的网络,这些设备能够收集、交换和处理数据。
2024-03-18 08:33:53
996
1
原创 推荐一款嵌入式C的开源代码框架-tboox / tbox
TBOX是一个用c语言实现的跨平台开发库。针对各个平台,封装了统一的接口,简化了各类开发过程中常用操作,使你在开发过程中,更加关注实际应用的开发,而不是把时间浪费在琐碎的接口兼容性上面,并且充分利用了各个平台独有的一些特性进行优化。这个项目的目的,是为了使C开发更加的简单高效。目前支持的平台有: Windows, Macosx, Linux, Android, iOS, *BSD等等。通过xmakeRelease: 正式版编译,禁用调试信息、断言,各种检测机制,启用编译器优化。
2024-03-13 08:30:14
1372
2440汉语版资料,供大家参考
2014-10-22
qt做的音频采集与回放工具代码(包含调用海思dll库)
2017-07-31
嵌入式Qt开源中文输入法
2018-10-09
qt做的udp通信工具和音频解码工具
2017-06-20
qt4.8编写的tcp调试工具(带源码)
2017-07-31
Qt实现的TCP端口转发工具
2016-07-05
基于boost的bind与function的消息处理框架
2018-01-10
cpp实现的消息处理框架
2017-11-28
qt做的海思adpcm解码
2017-08-01
qt事件过滤器实现屏幕无操作超时通知
2018-12-08
基于QCom开源代码修改的串口调试助手
2020-08-04
十六进制文件连接(c语言实现)
2013-12-13
gps坐标显示到百度地图工具
2018-01-29
qt调用百度地图与js通信源码
2018-03-19
Qt数据转换工具+源码
2018-02-26
电总协议串口调试助手-PowerBus-v1.0.5
2020-06-12
学习写Makefile.pdf
2020-02-16
Mqtt移植-mosquitto源码以及依赖源码
2023-09-02
麻烦就是需求,难题就是商机
2022-03-02
zlog源码与示例代码
2019-01-22
hj212_crc.zip
2019-05-16
中文短信编码调试工具.zip
2022-01-07
nginx 1.7.11.3 Gryphon.zip
2019-11-01
精伦身份证读卡器二次开发包V3.2.zip
2021-04-01
test_func_point.tar.gz
2021-04-01
menu_fram.zip
2020-01-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人