自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (2)
  • 收藏
  • 关注

原创 【python】速通笔记

每天学习2-3小时,坚持项目实践,1个月后你将掌握Python实际开发能力!

2025-04-04 17:54:24 320

原创 【C++学习笔记】十三、速通笔记

【代码】【C++学习笔记】十三、速通笔记。

2025-04-04 16:48:43 340

原创 【Zephyr】【二】学习笔记【RTOS系统架构】

fill:#333;color:#333;color:#333;fill:none;硬件抽象层内核层系统服务层应用层GPIO驱动串口驱动SPI驱动I2C驱动调度器内存管理进程间通信时间管理文件系统网络协议栈命令行界面应用1应用2应用3。

2025-03-20 17:08:35 935

原创 【Zephyr】【一】学习笔记

每个示例都需要一个prj.conf文件来配置项目。

2025-03-20 16:58:17 499

原创 【传感器】【nrf】【zephyer】【三】错误处理流程

fill:#333;color:#333;color:#333;fill:none;通信错误参数错误硬件错误其他错误是否是否是否是否检测到错误错误类型重试通信使用默认参数尝试硬件复位记录错误日志重试成功?恢复正常操作增加重试计数超过最大重试次数?报告严重错误记录参数错误复位成功?重新初始化设备报告硬件故障评估错误严重性是否可恢复?执行恢复操作报告不可恢复错误。

2025-03-16 14:47:38 530

原创 【传感器】【nrf】【zephyer】【二】事件处理流程

差值 > 触摸阈值?

2025-03-16 14:45:03 841

原创 【传感器】【nrf】【zephyer】【一】基础功能流程

读取CHIP_ID寄存器。准备16位寄存器地址。准备寄存器地址和数据。

2025-03-16 13:13:28 467

原创 【nRF52832】【Nodic】开发入门【三】MPU6050六轴传感器应用

MPU6050是一款广泛使用的6轴运动跟踪设备,由InvenSense公司开发。它集成了3轴加速度计和3轴陀螺仪,能够精确测量物体的加速度和角速度。mpu6050.cmpu6050.hKconfig官方有MPU6050的示例demo,路径如下:拿到这个代码,在这个代码的基础上创建创建自己的工程文件。代码结构很简单,其中多一个boards文件夹,下面有个nrf52dk_nrf52832.overlay文件,方便我们对自己板子的内容进行重构.

2025-03-14 20:15:07 300

原创 【nRF52832】【Nodic】开发入门【三】模块化

我们实际开发过程中往往会很复杂,为了更好的管理代码,我们需要模块化。

2025-03-09 18:51:14 254

原创 【nRF52832】【Nodic】开发入门【二】

/ 处理鼠标事件// 在 main 函数中初始化工作队列:使用设备树宏获取兼容性为pwm_leds且状态为okay的节点ID。led_label:使用设备树宏遍历的所有子节点,获取每个子节点的label属性,并将其存储在数组中。num_leds:计算led_label数组的大小,即LED的数量。10010K_MSEC:定义LED的最大亮度为100。:定义亮度变化的延迟时间为10毫秒。FADE_DELAY:将转换为内核时间单位(毫秒)。

2025-03-07 20:30:42 915

原创 【Android】Kernel添加时间戳

c中static 受到编译器的影响 禁止使用long long类型.所以debug的时候还是去掉static的申明.

2024-11-18 22:19:56 127

原创 CPP标准

‌C++标准‌是C++编程语言的规范,由国际标准化组织(ISO)制定。C++标准的发展历程可以追溯到1998年,当时ISO/IEC 14882:1998标准被发布,这被认为是第一个C++标准,常被称为C++98。随后,C++标准经历了多次更新和修订,包括C++03(2003年)、C++11(2011年)、C++14(2014年)和C++17(2017年)。

2024-11-14 23:12:45 941

原创 【uiautomator】自动化测试camera【一】

本文档是自己写andorid camera自动化测试的随笔测试机器为测试Apk为oppo的系统相机.

2024-11-11 22:36:20 950

原创 【STL速学】

weak_ptr 是为了配合 shared_ptr 而引入的一种智能指针,它更像是 shared_ptr 的一个助手而不是智能指针,因为它不具有普通指针的行为,没有重载 operator* 和 operator-> ,因此取名为 weak,表明其是功能较弱的智能指针。向下转换:指的是基类向子类转换。const_cast用于强制去掉const这种不能被修改的常数特性,但需要特别注意的是const_cast不是用于去除变量的常量性,而是去除指向常数对象的指针或引用的常量性,其去除常量性的对象必须为指针或引用。

2024-11-09 17:42:06 796

原创 Andoird camera app从零养成计划【一】

这里只提供了一个基本的框架和思路。Camera2 API 涉及很多复杂的步骤和概念,如处理相机状态、创建和管理CaptureRequests、SurfaceTexture等。为了完整实现功能,你需要深入研究Camera2 API的文档和示例代码。

2024-09-29 21:42:11 893

原创 打开市面上常用apk冷热启动脚本

【代码】打开市面上常用apk冷热启动脚本。

2024-03-14 14:54:05 897

原创 【python】用ChatGPT使用爬虫

要爬取无锡七日天气,可以使用Python中的第三方库 requests 和 Beautiful Soup。VSCode中安装相关的插件就可以配合chatgpt来实现一些简单的爬虫操作,只能应对比较简单的场景.优化下代码,没有获取到天数,并且这个get_text有报错.打印结果如下: 这个很明显就是date这个数据为None。但是上述实际运行是存在一些小问题的。python 爬取无锡七日天气。

2023-04-19 13:56:40 8617

原创 【C++学习笔记】十二、单例模式详解

在C++中,单例模式是一种常用的设计模式,用于确保一个类只有一个实例,并提供全局访问点。以上是常见的C++单例模式的几种实现方式。选择合适的单例模式取决于具体的应用场景和需求。

2023-04-18 18:08:48 707

原创 【C++学习笔记】十一、智能指针的简单使用

智能指针相对于传统的指针来说只有好处没有坏处,更好的管理内存,可以在引用计数为0的时候,自己去析构,释放内存。上述的情况下引用计数都为1,每当我们对一个智能指针进行一次拷贝,其引用计数会+1.智能指针在离开其作用域后会自动销毁释放。我们实际开发中一般用如下两种方式去构建。第一种是配合make_shared去申请。实际使用起来和普通指针的差别不大。实际稍微复杂点的demo。

2023-04-18 17:14:07 311

原创 【STL 笔记、二】容器:map

百度百科摘要内容如下:映射和多重映射基于某一类型Key的键集的存在,提供对T类型的数据进行快速和高效的检索。对map而言,键只是指存储在容器中的某一成员。Map不支持副本键,multimap支持副本键。Map和multimap对象包涵了键和各个键有关的值,键和值的数据类型是不相同的,这与set不同。set中的key和value是Key类型的,而map中的key和value是一个pair结构中的两个分量。添加头文件一般构造函数初始化。

2023-04-18 11:07:12 233

原创 【Qt笔记】5.QWidget源码查阅

QWidget类是所有用户界面对象的基类。从QObject和QPaintDevice里继承过来由上可以看出qt是把其封装成dll供外部接口调用。我们在实际项目中使用QWidget会发现其调用到的头文件都是编译器的形式如下:其实际的源码位置如下路径。

2023-04-17 17:16:17 1288

原创 【Qt笔记】4.文本编辑的简单使用

QT中的文本编辑类常用的有三种,1.QLineEdit:单行普通文本2.QTextEdit:多行富文本3.QPlainTextEdit:多行普通文本富文本指的是多文本格式。可以编辑图片和媒体相关。上述三个文本编辑类他们的继承关系如下:fill:#333;

2023-04-13 22:10:15 614

原创 【C++学习笔记】十、C++设计模式-抽象工厂模式

整个结构示意如下:抽象类只做接口,不做实现,所有具体实现都是集成其抽象类。fill:#333;

2023-04-10 14:43:14 692 1

原创 【Qt笔记】3.各种按钮的简单使用

QPushButton是QT中自带的按钮控件使用需要添加头文件QPushButton从QAbstractButton集成过来,其他同级按钮结构示意如下:fill:#333;

2023-04-05 11:48:46 602

原创 【Qt笔记】2.布局入门

Qt 共提供了 5 种布局管理器,每种布局管理器对应一个类,分别是 QVBoxLayout(垂直布局)、QHBoxLayout(水平布局)、QGridLayout(网格布局)、QFormLayout(表单布局)和 QStackedLayout(分组布局),它们的继承关系如下图所示:fill:#333;

2023-04-04 16:05:56 530

原创 【Qt笔记】1.VSCode搭建Qt运行环境

Qt6之后已经抛弃qmake,使用cmake。cmake相对qmake来说只有优点没有缺点。使用VSCode搭建完Qt的运行环境就能开开心心debug了.vscode需要使用的插件:2.Qt tools3.CMakec++插件可以不关注,缺啥都会提醒你.正常安装即可。

2023-04-02 17:02:29 19362 21

原创 【C++学习笔记】九、vscode配置C++环境

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。这个时候就体现到vscode的强大。

2023-03-31 20:37:10 595

原创 【C++学习笔记】八、C++多线程的基础

添加此头文件可以直接调用线程相关的操作并且需要在对应的CMakeLists.txt编译中添加std::thread 默认构造函数,创建一个空的 std::thread 执行对象。函数指针函数对象lambda表达式cout

2023-03-29 11:54:36 171

原创 【C++学习笔记】七、cmake文件的基础使用

选自百度百科:CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或Windows。

2023-03-24 16:17:51 297

原创 【C++学习笔记】 六、C++设计模式-工厂模式

参考文章实际开发过程中我们往往要使用不同的设计模式来应对不同的场景需求。设计模式的初衷往往是是为了尽量少修改现有的代码,并且做到数据/UI/控制器分离的操作,更方便分模块化去管理,分离耦合,实现更好的拓展性。

2023-03-10 13:49:11 139

原创 【QT】【JSON】qt中json文件读写操作

JSON[]中标识数组{}中标识对象我们可以观察如下的一段Json内容。目标是将此内容读出来,并且填入到表格中,同时可以在表格中更新此部分内容的同时还会更新此文件。"mode": "测试模式1","ev": "","wb": ""},"mode": "测试模式2","name": "模组名字1",},"name": "模组名字2",先观察上述Json文件的构造。能看出要先构造好对应的外圈大数组。

2023-02-04 21:27:04 5321

原创 【Android】 andorid camera自动化测试入门【三】

在之前的内容里面已经大致介绍了python如何实现自动化的操作android设备。这边细分下读取文件内容并且根据相关的数据来画对应的图。首先我上一个系统做的是python自动化测试android设备camera并且记录其内存PSS部分的内容。我们需要使用相关的命令把camera 对应的PSS dump下来保存到一个文件中。对应的adb命令如下,只要把这个命令嵌入到python脚本中即可。然后我们写个函数去读取这个文件的内容解析数据并画图即可。是不是很简单。

2023-01-19 21:13:36 522

原创 【Android】 andorid camera自动化测试入门【二】

在之前的内容上我们已经知道如何在python中使用adb和shell。但是实际上每个命令一直要全部手打那是很麻烦。今天对这一部分的内容进行优化。

2023-01-18 19:11:34 353

原创 【数据结构学习】二、链表和二叉树

写个makefile并且加入asan用来检查内存相关的内容。直接在此目录下make即可。因为我老是控制不好申请和释放。

2023-01-17 19:57:46 254

原创 【Android】 andorid camera自动化测试入门【一】

python能做的事情很多,我这边今天来介绍的是配合Shell命令来实现andorid的自动化测试。今天的小目标是自动化打开camera。1.测试次数可以设定2.测试设备可以设定系统要求:linux:要求有adb,可以使用shell。直接使用shell的也是同理的。python本质上是调用shell。使用python的优点是可以更好的搭建和分类管理,并且可以分拣出相关的关键内容,即数据清洗。话不多说。

2023-01-14 14:04:04 1131

原创 【Linux】Linux 命令之AWK过滤提取需要的信息

AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人阿尔佛雷德·艾侯、彼得·温伯格和布莱恩·柯林汉姓氏的首个字母)的最大功能取决于一个人所拥有的知识。awk经过改进生成的新的版本nawk,gawk,现在默认linux系统下日常使用的是gawk,用命令可以查看正在应用的awk的来源(ls -l /bin/awk )

2023-01-12 20:05:41 1712

原创 【openCV】Linux下的openCV搭建

搭建系统:Ubuntu18下的openCV环境搭建

2023-01-05 18:26:40 727 1

原创 【Camera】Camera基础概念

CCD与CMOS Sensor是当前被普遍采用的两种影像感测组件,基本上两者都是利用感光二极管(photodiode)进行光与电的转换,将影像转换为数字信息,而其主要差异则在数字信号传送方式的不同。CCD传感器每一行中每一个像素(pixel)的电荷信号都会依序传送到下一个像素中,由最底端的部分输出,再经由传感器边缘的放大器进行放大输出;而在CMOS传感器中,每个像素都会连接一个放大器及模/数转换电路,用类似内存电路的方式将信号输出。

2023-01-05 17:46:13 1589

原创 Android Camera架构

Android Camera架构 分层概述

2023-01-02 16:41:39 420 1

原创 【python】一篇文章入门python简单画图

python 中的画图是直接使用matplotlib,用起来非常简单。先随机生成相关的数据若干个,用于画图。

2022-12-29 20:22:21 1911 1

非MFC程序调示宏TRACE().zip

如果不是MFC项目或者ATL的项目的话是不能使用这个宏的。这时有一个没有什么额外消耗的办法能够做到向调试输出窗口输出。 非MFC程序显示调示信息,自写TRACE()打印输出的VS的输出窗口。用法和printf()一样。 一个TRACE可以在Debug时向VS的调试输出窗口输出字串符,用来调试时跟踪变量很方便。

2020-02-01

c/c++简易贪吃蛇demo.zip

简易贪吃蛇源代码,内有说明文档。 一份是网上的参考代码,另一份是我整理出来的。 C/C++只要添加相应代码到工程目录下就能正常运行。 VS20119,VC6.0++已经通过验证。

2020-01-29

空空如也

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

TA关注的人

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