- 博客(195)
- 收藏
- 关注
原创 interview
staticmethod:静态方法没有类似 self 或 cls 这样的特殊参数,它和普通函数类似,只是定义在类的命名空间中。classmethod:类方法的第一个参数 cls 是类对象本身。可以通过 cls 访问类的属性和调用其他类方法。classmethod可以访问和修改类的属性,可以调用其他类方法,第一个参数为类本身(通常命名为cls)。staticmethod不能访问或修改类的属性,也不能调用其他类方法,它与类和实例无关。python中的classmethod和staticmethod有什么区别?
2025-02-06 11:02:05
340
原创 并发编程(JUC)
并发编程的目的是为了让程序运行得更快,但是,并不是启动更多的线程就能让程序最大限度地并发执行。在进行并发编程时,如果希望通过多线程执行任务让程序运行得更快,会面临非常多的挑战,比如上下文切换的问题、死锁的问题,以及受限于硬件和软件的资源限制问题。this.wait()会释放锁this.notifyAll()自旋(while)一下就不会虚假唤醒Lock lock = new ReentrantLock()Condition condition = lock.newCondition()condition.aw
2024-09-29 15:10:49
1195
原创 日常记录X
将Java中的垃圾回收算法直接移植到Python中并不现实,因为Python使用的是不同的内存管理机制。虽然原理类似,但具体实现和优化是针对各自语言的需求而设计的。内存排序:如果内存足够,可以将所有用户数据加载到内存中,使用排序算法(如快速排序或归并排序)对用户按积分进行排序,然后获取最大积分的用户。内部处理: 当 Flask 接收到一个请求时,它会查找路由映射表,找到与请求路径匹配的视图函数,并调用该函数处理请求。1.如果有100万的用户数据,每个用户里有个积分字段,如何进行排序获取最大积分的用户。
2024-09-06 09:32:43
986
原创 ELK study
1.索引(Index)(数据库)是一个包含了相关文档数据的集合,存数据的地方。索引可以包含多个类型(Type),每个类型代表一个类似数据库中的表。2.类型(Type)(表)类型是用来定义数据结构,是在索引中对文档进行分类的一种方式。每个类型都有自己的映射(Mapping),定义了文档中包含的字段和它们的类型。3.文档(Document)(行)是存储在索引(Index)中的基本数据单位(最小),一个文档就是一条记录。类似于 MySQL 中的一行。
2024-04-15 18:50:51
366
原创 RTC module design
RTC单元提供实时时钟和日历功能,包括自动闰年调整、闹钟和周期性中断支持。无论在何种工作模式下,RTC都不会关闭,即使在低功耗模式下也能正常运行。此外,RTC的输出寄存器和时钟校正寄存器不会被复位,以确保时钟的准确性。RTC模块的时钟源可选择Fosc时钟(默认)或Flrc时钟。而且,RTC模块的工作电压可以降至最低1V。
2024-03-19 18:51:56
927
原创 STM32通讯设计
这些函数是与STM32的HAL库(Hardware Abstraction Layer)中I2C模块相关的中断处理和回调函数。1.这些函数是STM32的I2C(Inter-Integrated Circuit)总线操作函数,用于在不同模式下进行数据传输和通信。使用中断程序进行和2202进行通讯,2202芯片未获取到STM32发送的数据,需要排查原因。3.如果HT2202芯片能够收到STM32发送的数据则通讯成功,否则通讯失败。2.将STM32芯片配置为从机发送,中断模式下发送固定数据。
2023-11-29 13:15:42
581
原创 STM32调试功能
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iVG7IVyt-1685440276658)(C:\Users\ywwei.HITRENDTECH\AppData\Roaming\Typora\typora-user-images\image-20230530173114902.png)]Cortex-M内核(MO/M3/M4/M7等)集成了串行SWD/JTAG调试接口(SWJ-DP),包括JTAG-DP接口(5个引脚)和SW-DP接口(2个引脚)。
2023-05-30 17:53:11
2017
原创 STM32中断模块
EXTI—外部中断/事件控制器,管理了控制器的20 个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。HAL 库函数的EXIT 初始化非常简单,只需配置好IO 口的模式,然后配置中断源、中断优先级、使能中断。
2023-05-26 09:57:44
215
原创 Keil工程
1.1 右键点击项目名称,弹出菜单中选择Add Group…,我们把所有需要添加的源文件都放在这个Group中。1.2 比如这个Group取名Link,右键点击Link,弹出菜单中选择Add Existing Files to Group ‘Link’…。1.3 然后选择你需要添加的源文件所在的文件夹,按Ctrl+A全选此文件夹所有.c文件,点击Add。若有多个文件夹同样都加在Link这个Group中。1.4 现在添加头文件路径。
2023-04-26 16:22:49
8661
原创 Python Tips
在字典中查找某个值时,若key不存在时则会返回一个KeyError错误而不是一个默认值,这时候可以使用defaultdict函数。使用dict[key]=value时,若key不存在则报错;使用dict.get(key)时,若key不存在则会返回一个默认值。
2023-04-26 15:20:50
173
原创 Keysight示波器使用备注
功能 -> DVM => 触发电平。1.点击Tragger设置下降沿。3.single => 触发。2.点击analyze设置。
2023-03-27 12:25:34
3399
1
原创 I2C协议
对I2C总线来说工作在中断和非中断模式在时序上是相同的,只不过在非中断模式下是通过检测ACK信号来判断从设备响应了,在中断模式下是通过中断信号来判断从设备响应了,一般是读主CPU侧的I2C控制器的中断标志来判断的。I2C协议对数据的采样发生在SCL高电平期间,除了起始和停止信号,在数据传输期间,SCL为高电平时,SDA必须。I2C协议规定,SCL处于高电平时,SDA由高到低变化,这种信号是起始信号。I2C协议规定,SCL处于高电平,SDA由低到高变化,这种信号是停止信号。I2C 协议的一个示例。
2023-03-21 21:36:51
2747
原创 C语言积累
一个比特(Bit)位只有 0 和 1 两个取值,只有参与&运算的两个位都为 1 时,结果才为 1,否则为 0。例如1&1为 1,0&0为 0,1&0也为 0,这和逻辑运算符&&非常类似。十六进制的左移即是向左移动N位,把左边的N位去掉,右边缺的N位补零,也就是移动N位就乘以2的N次方(但此结论只适用于左移时被溢出舍弃的高位中不包含1的情况)参与|运算的两个二进制位有一个为 1 时,结果就为 1,两个都为 0 时结果才为 0。例如1|1为1,0|0为0,1|0为1,这和逻辑运算中的||非常类似。
2023-03-21 21:32:31
100
原创 I2C DEBUG记录
SDA数据线:00010101 -> 0x0A + 0x01(错误数据,应该为0x00),所以导致从机回复NACK,修改后正确回复。通过示波器抓取的波形,通道1为PA.2(SCL),实测频率为70.39khz。该示波器的图像含义为:1.主机发送起始信号 2.主机发送SLA + W。其中寄存器的设置为 CR[0:1] = 3, CR[3:9] = 9。通道一为:SDA 通道二为:SCL。
2023-03-21 18:56:52
364
原创 Python进阶
raise是什么意思呢?raise是用raise语句来引发一个异常。异常/错误对象必须有一个名字,且它们应是Error或Exception类的子类。当内部作用域想修改外部作用域的变量时,就要用到 global 和 nonlocal 关键字了。
2023-03-02 22:04:12
115
原创 GPIO功能描述
高阻态:数字电路常见术语,指的是电路的一种输出状态,既不是高电平也不是低电平,如果高阻态再输入下一级电路的话,对下级电路无任何影响,和没接一样,如果用万用表测的话有可能是高电平也有可能是低电平,随它后面接的东西定。同时IO浮空的时候,应该呈现一个接近0V的不稳定状态,翻转相邻的IO时,高阻态的IO可以看到一个同频的抖动,但是接到固定电平上时,第一IO上电流不超过100nA,第二IO会呈现固定电平,没有抖动。引脚开启和关闭 LVDIN 功能时,GPIO 模块寄存器的控制效果仍然有效。
2023-02-13 13:29:04
3593
原创 PyTest
1.pytest是一个非常成熟的python的单元框架,比unittest更灵活。2.pytest可以和selenium,requests,appium结合实现web自动化,接口自动化,app自动化。3.pytest可以实现测试用例的跳过以及reruns失败用例重试。4.pytest可以和allure生成非常美观的测试报告。5.pytest可以和Jenkins持续集成。6.pytest有很多非常强大的插件,并且这些插件能够实现很多的实用的操作。pytest。
2023-01-09 22:05:43
1068
原创 GPIO端口状态实现最大速度翻转
比如说,一个电路在它一个工作周期中有一半时间被接通了,那么它的占空比就是50%。同理,当占空比设置为20%时,阀门的开度显然应该为20%。占空比是指高电平在一个周期之内所占的时间比率,方波的占空比为50%,占空比为0.5,说明正电平所占时间为0.5个周期。若信号的周期为T,每周期高电平时间为t1,低电平时间为t2,T=t1+t2,则占空比D=t1/T。占空比(Duty Cycle)在电信领域中有如下含义:在一串理想的脉冲序列中(如方波),正脉冲的持续时间与脉冲总周期的比值。
2023-01-09 17:45:20
1502
原创 仪器设备使用
测试设备、外部电路、信号源的“地”和电源零电位端接到一起,形成统一的0电位参考平面,这就是电路实验中常说的“共地”功能控制区按键:Run/Stop 终止/运作按钮 Autoset 自动设置 Measure 测量 Display显示设置 Acquired 获取设置 Cursors光标测量 Utility1.独立工作模式2.串联工作模式3.并联工作模式每次切换工作模式按 键,此电源会自动关闭输 出。需要手动打开输出开关才会有设定输出。切换工作模式属于大调整,应规范操作,先断开与外电路的连线。
2023-01-09 15:02:19
4377
原创 unittest自动化测试框架
单元测试:指的是在软件开发当中,对程序的最小单元(函数,方法)进行测试的过程。unittest不仅可以用于单元测试,还可以用于自动化测试用例的开发和执行。组织执行自动 化测试用例。并且提供一些丰富的断言方法,判断用例是否通过,最终能够生成测试报告。
2022-09-04 16:26:01
738
原创 树莓派入门
树莓派1.相关参数https://item.taobao.com/item.htm?spm=a1z0d.7625083.1998302264.6.e4ab4e690zcWIe&id=597477386998配置参数4B 主板4B8GB电源HDMI官方电源+官方HDMI线闪迪TF卡64GB硬件配置:树莓派4B和3B+对比变化部分2.下载和烧录镜像2.1镜像镜像下载:Raspberry Pi OS – Raspberry Pi官方镜像:F
2022-03-06 15:14:52
244
原创 Jenkins插件
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Doc
2022-02-24 21:32:28
168
原创 串口收发程序设计
串口收发程序设计1.基本知识1.1串口串行接口是一种可以将接收来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节的通信方式。1.2波特率这是一个衡量符号传输速率的参数。指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格
2022-01-11 22:36:37
3591
原创 Flask学习记录--集成Flask和Swagger
Flask学习记录–集成Flask和Swagger采用如下命令安装flask-restpluspip install flask-restplus==0.13.0/usr/local/lib/python3.7/site-packages/werkzeug/init.py 文件中,添加:from werkzeug.utils import cached_property
2021-12-19 21:14:49
579
原创 Portainer管理多台Docker容器环境
Portainer管理多台Docker容器环境文章目录Portainer管理多台Docker容器环境1.环境准备2.管理docker2.1安装运行portaner2.2修改配置文件2.3添加节点2.4效果图3.踩坑记录3.1connection refused1.环境准备# aliyun 2核8G139.196.95.123 安装docker和Portainer# aliyun 1核2G 47.100.34.199 安装docker# qingcloud 1核2G139.198.16
2021-11-06 12:25:20
3562
原创 Ansible
Ansible文章目录Ansible1.linux安装ansible1.1linux在线安装ansible1.2linux离线安装ansible1.2.1python安装的第三方库1.2.2ansible压缩包离线安装2.主机清单inventory2.1主机清单内容2.2主机显示别名2.3ansible的Host-pattern2.4ansible执行流程3.查看文档的命令3.1查看模块信息3.2简要查看模块信息3.3查看所有的模块信息4.ansible常用模块4.1linux下常用模块4.1.1ping
2021-11-05 15:31:08
912
原创 Docker介绍
Docker介绍1.Docker概念Docker是一个用于开发、发布和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分离,以便快速交付软件。使用Docker,您可以用与管理应用程序相同的方式管理基础设施。通过利用Docker快速发布、测试和部署代码的方法,您可以显著减少编写代码和在生产中运行代码之间的延迟。1.1什么是 DockerDocker的官方主页Docker 使用 Google 公司推出的 Go 语言 (opens new window)进行开发实现,基于 Linux
2021-10-27 00:35:46
374
原创 Ansible在windows的使用
Ansible在windows的使用1.linux离线安装ansible参考博客: ansible离线安装相关的安装包:链接:https://pan.baidu.com/s/1vqUSk3B_XKLAvzFGAr0HIw提取码:3844使用相关的命令进行安装:# 安装包解压tar -xzvf ansible-2.4-rpms.el7.tar.gz# 进入安装包cd ansible-2.4-rpms.el7# 安装ansible依赖内容rpm -ivh PyYAML*rpm lib
2021-10-26 22:31:44
8402
1
原创 Sonarqube扫描c++代码
Sonarqube扫描c++代码文章目录Sonarqube扫描c++代码1.下载cppcheck2.配置sonarqube3.进行配置文件4.查看结果1.下载cppcheck然后生成xml文档2.配置sonarqube3.进行配置文件4.查看结果
2021-10-25 17:47:08
1601
原创 重启系统后docker启动容器报错:Error response from daemon: error creating overlay mount to..
重启系统后docker启动容器报错:Error response from daemon: error creating overlay mount to…重启系统后docker启动容器报错:Error response from daemon: error creating overlay mount to…首先有一种更改文件系统的方法,但是这个方法会删除docker容器。我这边由于容器不是自己创建的,选择另一种方法,更改文件/etc/selinux/config内的SELINUX=perm
2021-10-25 13:03:57
1792
原创 Sonarqube在win下的使用
Sonarqube在win下的使用文章目录Sonarqube在win下的使用概述1.创建项目2.添加环境变量2.1高级系统设置2.2设置环境变量2.3代码静态扫描3.win下扫描c语言代码3.1支持的编译器3.2构建命令4.修改规则4.1新建配置4.2挂起规则5.应用市场6.用户信息7.管理项目SonarQube ® 是一种自动代码审查工具,用于检测代码中的错误、漏洞和代码异味。它可以与您现有的工作流程集成,以支持跨项目分支和拉取请求的持续代码检查。如果您想试用 SonarQube,请查看试用 Son
2021-10-19 18:35:57
973
原创 Docker安装镜像踩坑记录
Docker安装镜像踩坑记录运行失败的日志信息[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ClrHBdG1-1634305314641)(https://i.loli.net/2021/10/14/bpsGDHiA18d6onY.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BvBDo0UU-1634305314648)(https://i.loli.net/2021/10/14/ovTDtXA7lIPkFs6.png)]E
2021-10-15 21:42:10
986
3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人