自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhbi98 的技术 Blogs

这些文章详细的记录了个人业余时间所学习的内容,以及个人的技术方向所需要使用的技术,希望小伙伴们喜欢。

  • 博客(137)
  • 资源 (3)
  • 收藏
  • 关注

原创 阻抗匹配详解

在深入理解阻抗匹配概念之前,我们可以先来一起看一个现象,首先使用一个信号发生器输出一个脉宽为 50ns 的单脉冲信号,同时将信号接入示波器,此时在示波器的波形视图上可以看到这个仅有一个脉冲的信号,如下图。如果我们将信号接入示波器的同时将电缆延长数米到外部,并且延长后电缆末端保持悬空不接入任何东西,引出一段未接入任何东西的开路电缆,按照常识应该没有任何影响,然而实测是在原有脉冲旁边多出了一个类似脉冲,如下图。

2025-02-08 09:13:26 965

原创 测量校准原理

办法还是有的,除了改进制造工艺之外,我们可以通过在传感器内部对其测量到的数据进行矫正计算来补足实际测量与真实值的误差,即通过二次计算处理让测量值接近真实值,这就是校准。值得一提的是,校准后也不能保证实际际测量值与真实值完全相同,校准只能降低测量误差,保证实际测量值与真实值的误差最小。因为在实际中即使校准后的测量结果依旧会受到其工作环境的影响,例如温度,气压,工程就是这么的艰难,即使顶级标准设备也无法做到完全不存在误差,但标准设备距离理论确实是最近的。

2025-01-26 19:46:20 713 1

原创 函数在区间内连续性

我们已经知道函数在一个单点上连续的定义了,现在来把该定义扩展一下,如果函数在区间ab(a, b)ab上的每一点处都连续,那么它在该区间上连续。注意到:区间是开区间,所以fff实际上没有必要在端点xax=axa或xbx=bxb上连续,例如,如果fx1xx0fx1/xx0,那么fff在区间0∞(0,\infty)0∞上连续,即使f0f(0)f0无定义,该函数在区间−∞0−∞0上也连续。但在区间−22(−2, 2)

2024-11-30 14:41:00 1488

原创 函数在一点处连续

有了通俗描述的理解,现在可以知道连续问题的本质是 “极限的计算”,计算某一点邻域的极限和该点的函数值是否相同。同时在连续性方面函数的定义域也十分重要,必须去考量函数的定义域,要求函数在某一点上是有定义的。下面呢我们可以结合极限,结合函数定义域来给出函数连续性更精简,更精确一些的描述,并明确地要求以下三条成立:(1) 双侧极限lim⁡x→afxlimx→a​fx存在,即左极限x→a−x→a−和右极限x→ax→a相等(并且是有限的)。

2024-10-26 21:14:44 1312

原创 函数连续性导论

一般而言,函数的图像不需要遵守太多的要求,只有一点比较特殊,函数图像它必须满足垂线检验,这并没有要求特别多。只要满足垂线检验图像可以散落四处:这里有一部分,那里有一条垂直渐近线,或者图像是随心所欲地在各处散落任意个不连续的点。不过连续听着好像要求函数要满足连续的话就必须在所有地方连续(就类似于上图一样,函数曲线在任何地方保持延绵不断),在无穷远处也能连续。连续的字面意思是一个接一个,连贯的,意思大概就是延绵不断的,所以对于函数连续的定义不用怀疑就是简单的字面意思,函数的图像是不是处处相互连接的,

2024-10-26 21:11:33 1032

原创 了解网页 blob 链接

这种方法通常用于图片,音视视频这类可用 html 代码直接嵌入到其他网站的资源文件,防止你的图片音视视频被载入到别人的网页中,或防止他人直接访问原文件链接获取原文件。不过使用下载工具还是可以轻松下载,因为现在的下载工具一般会自动用你的域名构造一个引用地址。

2024-10-08 22:13:07 3091

原创 极限基本类型小结

在之前的文章中已经看过了极限的多种基本类型,下面展示一些各种基本类型的代表性的图像,通过观察下面的图像可以帮助我们回顾函数在趋近于某一点时函数值的行为(这也叫极限值),也生动的描述了各种极限的表现形式,所以这些图是很有用的,需要重点记忆。在右图中,左极限和右极限存在并相等,因此,双侧极限存在并等于左右极限值。时的双侧极限,见图 3-16,在左图中,左极限和右极限存在但不相。的行为是无关紧要的(也就是说,当讨论右极限时, 对于。时的左极限,见图 3-15,这时在。时的极限,见图 3-17。

2024-09-28 23:00:45 937

原创 了解同步带选择同步带

为了方便从海量的型号中锁定具体的型号,将常将实际参数以代号表示(长度代号,型号,宽度代号),并且将这些代号拼接起来作为同步带的唯一的标记。例如:标记 980MXL200,其中980为长度代号,表示实际带长为 2489.2mm,其中MXL为型号,表示节距为 2.032mm,200为宽度代号,表示实际宽度为 50.8mm。

2024-08-21 22:52:28 5765 2

原创 极限两边夹定理

两边夹定理 (又称作夹逼定理) 说的是,如果一个函数f被夹在函数g和函数h之间,当x→a时,这两个函数g和h都收敛于同一个极限L,那么当x→a时,f也收敛于极限L。

2024-07-29 11:51:59 1777

原创 在无穷处的极限

之前文章的例子都是在接近一点xax=axa时的函数行为,在函数趋近于∞\infty∞情况下的极限,重要的是要理解当xxx变得非常大时,一个函数的行为如何。用更简便的语言来描述就是:我们感兴趣的是,研究当变量xxx趋于∞\infty∞时函数的行为,并且想写出lim⁡x→∞fxLx→∞lim​fxL并以此表示,当xxx很大的时候,fxf(x)fx变得非常接近于值LLL,并保持这种接近的状态。另外,xxx也可以趋近于−∞。

2024-07-14 22:05:38 1526

原创 LVGL8.3动画图像(太空人)

我们知道电影属于视频,而电影的本质是将一系列动作的静态图像进行快速切换而呈现出动画的形式,也就是说动画本质是一系列照片。所以lvgl依照这样的思想而定义了动画图像,所以在lvgl中动画图像类似于普通的静态图像对象。唯一的区别是,动画图像设置了一个由多个源图像组成的数组,而不仅仅指定一个源图像。

2024-06-23 17:19:47 2018 5

原创 SerialChart上位机使用详解

软件分为三个区域:接收数据区,用于显示串口接收的数据。参数配置区,用于配置串口参数和显示参数。波形显示区,显示串口数据的波形。在参数配置区写入串口号,波特率,通道波形颜色等,然后点击运行按钮即可。当串口接收到数据时,接收数据区和波形显示区都会有相应的显示。该软件可以同时显示多个通道的波形,直接按照格式添加通道名称和对应的波形颜色即可。

2024-06-19 23:54:02 1297

原创 极限存在的条件

在左极限与又极限相关的内容中我们知道极限(也叫双侧极限)存在的充分必要条件是左右极限都存在且相等,否则极限不存在。所以这里要来详细的探讨一下在什么情况下函数会不存在极限。

2024-06-13 11:55:37 3064

原创 左极限与右极限

(1) 双侧极限在函数连续性判断方面具有重要的作用,需要重点记忆双侧极限和函数连续性的关系,后续会重点讲解。(2) 从本次的左右极限相关的内容也可以知道函数的定义域对极限具有一定的影响,后续会重点讲解。(3) 极限存在的充分必要条件是左极限和右极限都存在且相等,在分段函数方面尤其需要注意,很容易出现左极限和右极限不相等的情况。

2024-05-27 11:54:06 5245

原创 极限基本思想

在高等数学中极限是微积分的前置思想,没有极限的概念,那么微积分的理论将不复存在。极限也用于分析一个函数的连续性,可以说理解极限后理解函数的连续问题是轻而易举的事情。对于函数的连续性,不是什么高深的词汇就是字面意思,讲的就是这个函数的图像是否是持续不间断的,而间断则表示函数的图像存在断开的缺口那么函数就不是连续的状态了,所以极限必须花大量的时间去理解并掌握它。

2024-05-13 11:51:55 1564

原创 三角函数诱导公式

两角和(差)公式包括两角和差的正弦公式、两角和差的余弦公式、两角和差的正切公式。两角和与差的公式是三角函数恒等变形的基础,其他三角函数公式都是在此公式基础上变形得到的。

2024-04-30 09:10:00 1127

原创 函数定义域和值域

定义域(domain of definition)指自变量xxx的取值范围,是函数三要素(定义域、值域、对应法则)之一,对应法则的作用对象。求函数定义域主要包括三种题型:抽象函数,一般函数,函数应用题。定义一:设xxxyyy是两个变量,变量xxx的变化范围为DDD,如果对于每一个数x∈Dx \in Dx∈D,变量yyy遵照一定的法则总有确定的数值与之对应,则称yyy是xxx的函数,记作yfxy=f(x)yfxx∈Dx \in Dx∈Dx。

2024-04-29 20:12:03 4341

原创 Markdown+Latex数学符号集合

LaTeX(LATEX,音译 “拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

2024-03-20 20:36:55 844

原创 无刷电机驱动详解

有刷电机和无刷电机字面上理解最大的区别就是有无电刷,实际上区别还有换向器,电刷和换向器的作用是什么?电刷负责在旋转部件与静止部件之间传导电流,换向器则利用旋转惯性周期性的改变线圈中电流的方向。所以有刷电机和无刷电机的本质区别是如何改变线圈中电流的方向,所以电刷和换向器实际不是必须的,只是一种改变电流方向的手段,可以采用其他的手段,只要能够快速周期性的改变线圈电流方向即可。所以无刷直流电动机采用半导体开关器件来实现改变线圈电流方向(电子换向),即用电子开关器件代替传统的接触式电刷和换向器。

2024-02-19 20:45:36 3958

原创 双因素认证TOTP原理

在上面讲到的设备级认证中除了短信验证方式之外,需要使用额外的认证设备银行卡或 U 盾,但是随时携带额外的不通用的认证设备是不便的,10 个银行使用需要额外携带 10 张额外银行卡,所以手机才是最好的替代品。手机与密码就成了最佳的双因素认证方式。其中短信验证码,这种方式很好理解,就是只有账号绑定的手机号能够收取到验证码,所以能够输入正确验证码的一般就是本人了,除非短信被人获取或伪造。除了短信验证码这种方式,还有一种 TOTP 的概念,下面详细来讲解一下 TOTP 的实现方式。

2024-01-27 16:27:07 1505

原创 MOSFET 驱动设计

(1) 从上述三个例子当中 MOSFET 驱动芯片会提供专用的管脚连接到 MOS 的栅极 G 和 源极 S 上。这是因为 MOS 管的导通需要控制极(G 极),而 G 极的电压是相对于 S 极的电压来控制的,如果 S 极没有接到 MOS 驱动芯片上,那么 G 极的电压就无法控制 MOS 管的导通,从而无法实现对负载的控制。(2) MOS 根据电路设计可以置于电路低侧或高侧,当然不排除低侧和高侧都有,所以要根据实际应用选择高侧或低侧驱动器芯片,或高低侧驱动器芯片同时驱动高侧和低侧开关管。

2023-12-10 21:58:07 5457

原创 详细了解 MOSFET 晶体管

(1) 耗尽型与增强型的主要区别在于耗尽型 MOS 管在栅极 G 不加电压时有导电沟道存在,而增强型 MOS 管只有在开启后,才会出现导电沟道。(2) 两者的控制方式也不一样,耗尽型 MOS 管的栅源电压 VGS 可以用正,零,负电压控制导通,而增强型 MOS 管则固定需要 VGS>VGS(th) 才能导通。(3) MOS 管改变栅源电压 VGS,实际是改变衬底靠近绝缘层处感应电荷的多少,从而控制漏极电流的大小。

2023-12-03 14:46:50 2146

原创 Linux 并发与竞争(二)

协调好 Linux 并发导致的竞争问题,除了可以使用原子操作,自旋锁(含包含读写锁,顺序锁)之外还可以使用信号量,互斥体。有这么多的机制可用,它们各有特点并不是相互取代的关系,这些里面因该没有一种机制是通用的,所以这些机制都要了解(如同学习编程语言,语法都要会,根据逻辑要求使用不同的语法,这就没有学习哪些语法就够了的说法),不用考虑学习哪种机制更好,根据场景结合这些机制的特点去使用这些机制。

2023-11-06 21:46:28 377

原创 Linux并发与竞争(一)

在线程中使用 “spin_lock_irqsave/spin_unlock_irqrestore”,在中断中使用 “spin_lock/spin_unlock”。

2023-10-29 09:43:25 502

原创 Linux驱动设备号分配与自动创建设备节点

对于 Linux 系统,为了识别和管理设备,每个设备便使用一个唯一的编号来标记设备,每个注册到内核的设备都需要一个编号,这个编号就是设备号,为了细分设备号分为主设备号和次设备号。由于 Linux 的设备管理是和文件系统紧密结合的,各种设备都以文件的形式存放在/dev目录下,所以我们查看文件的详细信息就可以看到设备的设备号。可以看到设备文件权限不再像普通文件那样为rwx了,而是变成了crw第一个字符为c的表示字符设备。

2023-10-04 22:01:28 847

原创 Linux驱动__init和__exit的作用

_section__section可以看到了 “__init” 和 “__exit” 是一个宏定义,被定义为了 “__section” 宏定义,这个 “__section” 宏定义使用到了 GCC 编译器提供的 “__attribute__” 指令,这个指令用来设置一些变量或函数的属性,比如这里就是用来设置 section 这个属性。

2023-09-25 13:06:22 522

原创 Linux设备树OF操作函数

在 Linux 内核中用 struct device_node 表示设备树的数据结构,它是一种树形结构,该类型如下。#endif。

2023-09-18 22:33:29 351

原创 LVGL8.3 对象和内存详解

在创建 LVGL 的组件时,对应的创建组件的 create 函数会从 LVGL 的堆栈中分配一块内存去保存描述组件(位置,尺寸,颜色)样式信息的属性,属性的类型为lv_obj_t结构体,该结构体继承了结构体的内容。所以需要声明一个lv_obj_t *的指针指向保存组件样式属性这段内存的首地址,LVGL 的堆栈的大小在lv_conf.h0==048U1024U0==0。

2023-09-05 13:38:15 3320 14

原创 Linux设备树详解

在 Linux 没有设备树之前 ARM 架构的板级芯片硬件细节通过 C 源码的形式编写在 “arch/arm/plat-xxx” 和 “arch/arm/mach-xxx” 形式命名的文件中,不同的硬件对应不同的文件,这些不可复用的文件参杂在 Linux 内核源码目录中。为了从 Linux 内核源码中去除芯片描述代码就引入了设备树,设备树的本质是不再使用 C 源码去描述芯片,而是使用设备树DTS结构化脚本语法去描述各种芯片。

2023-08-14 11:59:04 1596 1

原创 嵌入式Linux应用依赖库打包详解

在嵌入式 linux 中运行过运用程序的小伙伴因该多多少少都遇到过在 Linux 终端启动运用程序时终端输出 “-sh ./xxx: not found” 的问题,这是应用程序依赖的动态库缺失导致的,验证该问题的办法是使用静态编译去编译应用程序(静态编译会将应用程序依赖的库和应用程序本身打包在一起,所以静态编译的应用程序体积很大,所以一般不使用)。Linux 系统缺失依赖库时可以使用静态编译或在 Linux 根文件系统中添加程序依赖的库文件,静态编译只需要给 gcc 添加-static。

2023-07-09 14:29:48 1363

原创 Uboot驱动Linux驱动的区别

我们在学习或移植嵌入式 Linux 系统的时候都会接触到 Uboot 驱动移植和 Linux 驱动开发,此时对于嵌入式 Linux 初学者来说不免会有疑问,例如:为什么 Uboot 已经有相关芯片平台以及外部硬件设备的驱动,Linux 系统还要使用使用设备树,还要集成驱动,下面来解释一下。

2023-07-01 09:00:55 889

原创 Makefile规则详解

一个 Makefile 文件中一般会定义多个 “目标”,例如一些 “真目标”,以及一些 “伪目标”。默认情况下执行make命令 Make 默认会构建 Makefile 的第一个 “目标”,然后逐步去构建第一个目标的依赖。如果你想让 Make 构建指定 “目标”,可以在make命令之后跟随要构建的 “目标” 名,例如或make clean,如果目标为 “真目标” 则构建出努比奥对象,如果目标为 “伪目标” 则执行某种操作。

2023-06-18 22:25:50 1103

原创 GCC命令与参数详解

使用 GCC 需要对编译的四个阶段(编译过程),以及编译的规则有一定的了解,熟悉使用 GCC 对于编写 Makefile 具有决定性的作用。GCC 的命令使用非常灵活,命令都以 gcc 开头然后配合待编译文件名,编译选项即可(可以说 GCC 就只有一条命令,只是编译选项较多而已)。命令选项可以随意组合,只需要注意选项是否包含参数即可,如果选项包含参数则参数需要紧紧跟随在选项后方。

2023-06-15 12:00:34 7576

原创 Ubuntu鼠标滚轮速度设置

我们在 Ubuntu 中使用文本编辑器通过鼠标滚轮滚动浏览长内容时可以明显感觉到鼠标滚轮滚动翻页缓慢(实际感觉为滚动操作滞后不跟手),类似鼠标滚轮出现问题,然而实际上是由于 Ubuntu 鼠标滚轮速率设置过小导致的。所以需要修改鼠标的滚轮速度,在 Ubuntu 发行版的设置中心中虽然包含鼠标设置,但并不支持鼠标滚轮速度的设置,所以如果要修改鼠标滚轮速度需要安装 imwheel 工具。

2023-06-05 11:57:10 2756 1

原创 Ubuntu关闭窗口动画

我们安装的 Ubuntu Linux 发行版,默认情况下在 GNOME 图形化桌面上最大化或最小化图形窗口时一般都会呈现屏幕底角到屏幕中心的动画。但是与 Windows,MacOS 相比 Linux 图形动画稍显迟顿,操作时大部分时间都浪费在等待动画响应上,所以为了提升图形交互的速度我们可以关闭该动画。

2023-06-05 11:55:46 2313

原创 Kali Linux 环境变量详解

系统级别的配置文件,对 Linux 系统的所有用户生效,用户级别的配置文件,只对当前用户生效。在这些文件中设置的环境变量会被系统或用户的 Shell 所加载,并可供给后续的命令或程序使用。。~/.bashrc。

2023-05-19 08:59:29 3092

原创 Modbus 协议详解

Modbus 属于串行通信协议,是 Modicon (即现在的施耐德)公司于 1979 年为可编程逻辑控制器 PLC 通信而发表,所以现在知道为什么以 Mod 开头了吧,目前不仅 PLC 使用,实际已经成为工业领域通信协议的标准,是现代工业电子设备之间常用的连接方式。Modbus 公开发表且无版权要求,易于部署和维护。下面我们来了解一下 Modbus 协议相关的细节,以及 Modbus 协议的应用方式。并行通信:数据各位同时传送。串行通信:数据一位一位顺序依次传送。(1)

2023-04-17 09:30:50 34266 2

原创 PID控制算法详解

在控制系统中,控制偏差 e 指的是设定值 w 与实际输出值 y 进行比较的结果即ew−ye = w-yew−y所谓 PID 调节器就是按照偏差 e 的比例(P),积分(I),微分(D)运算的线性组合构成控制量的一类调节器如下图所示。前面说过在实际应用中,PID 调节器的结构可以根据被控制对象的特性和控制要求灵活地改变,取其中一部分环节构成控制规律,组成各种不同的控制器。例如比例(P)调节器,比例积分调节器(PI),或比例微分调节器(PD)。

2023-03-09 15:38:49 13248 4

原创 RS485通信总线详解

RS-485 是美国电子工业协会(EIA)在 1983 年批准了一个新的平衡传输标准(Balanced Transmission Standard)也称作差分,EIA 刚开始将 RS(Recommended Standard)做为标准的前缀,不过后来为了便于识别标准的来源,将 RS 改为 EIA/TIA,所以目前该标准的名称为 TIA-485,但目前工程师们依旧习惯继续沿用 RS-485 作为该总线标准的名称。

2023-02-21 10:06:43 15666 4

原创 STM32串口传输浮点数

现代的计算机系统一般采用 **字节**(Octet, 8 bit Byte)作为逻辑寻址单位,当物理单位的长度大于 1 个字节时,就要区分字节顺序(Byte Order, or Endianness)。字节序,即字节在电脑中存放时的序列与输入(输出)时的序列是先到的在前还是后到的在前。字节序也用于描述多字节数据在计算机内存中存储或者网络传输时各字节的存储顺序,常见的字节序有 **大端模式(Big Endian)** 和 **小端模式(Little Endian)** 两种,还有一种不太常见的 **中端模

2023-02-06 09:02:13 8906

WinDynamicDesktopPortable4.2.0.exe

WinDynamicDesktop Portable主题软件是一款能够让用户在Windows 10系统上也能使用macOS全新动态变化桌面壁纸的工具,Windows里面由WinDynamicDesktop来实现,壁纸全是3K到5K的超高清,并且占用资源极少。

2021-09-20

JLinkSTM32_flash_unlock.exe

产品芯片为了防止片内 flash 固件被读出逆向转译源码,所以一般会将 flash 锁住,这会导致 后续 flash 无法写入,所以可以使用这个工具来解锁 flash 使之可以再次写入。

2021-09-19

STM32F4XX_USART.rar

本驱动程序基于STM32F4XX同时基于STM32F4系列ST官方标准固件库,本程序适用于STM32F401,STM32F407, STM32F427,STM32F429。程序结构清晰,绝对够详细,修改对应的IO口即可使用。

2020-02-28

空空如也

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

TA关注的人

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