当前位置: 首页 > news >正文

R306指纹识别模块指令系统

一:指令集

1. GR_GetImage

指令代码:01H

功能:从传感器上读入图像存于图像缓冲区

2. GR_GenChar

指令代码:02H

功能:根据原始图像生成指纹特征存于 CharBuffer1 或 CharBuffer2

3. GR_Match

指令代码:03H

功能:精确比对 CharBuffer1 与 CharBuffer2 中的特征文件

4. GR_Search

指令代码:04H

功能:以 CharBuffer1 或 CharBuffer2 中的特征文件搜索整个或部分指纹库

5. GR_RegModel

指令代码:05H

功 能 : 将 CharBuffer1 与 CharBuffer2 中 的 特 征 文 件合并生成模板存于CharBuffer1 与 CharBuffer2

6. GR_StoreChar

指令代码:06H

功能:将特征缓冲区中的文件储存到 flash 指纹库中

7. GR_LoadChar

指令代码:07H

功能:从 flash 指纹库中读取一个模板到特征缓冲区

8. GR_UpChar

指令代码:08H

功能:将特征缓冲区中的文件上传给上位机

9. GR_DownChar

指令代码:09H

功能:从上位机下载一个特征文件到特征缓冲区

10. GR_UpImage

指令代码:0AH

功能:上传原始图像

11. GR_DownImage

指令代码:0BH

功能:下载原始图像

12. GR_DeletChar

指令代码:0CH

功能:删除 flash 指纹库中的一个特征文件

13. GR_Empty

指令代码:0DH

功能:清空 flash 指纹库

14. GR_WriteReg

指令代码:0EH

功能:设置系统参数

15. GR_ReadSysPara

指令代码:0FH

功能:读系统基本参数

16. GR_Enroll

指令代码:10H

功能:注册模板

17. GR_ Identify

指令代码:11H

功能:验证指纹

18. GR_SetPwd

指令代码:12H

功能:设置设备握手口令

19. GR_VfyPwd

指令代码:13H

功能:验证设备握手口令

20. GR_GetRandomCode

指令代码:14H

功能:采样随机数

21. GR_SetAddr

指令代码:15H

功能:设置模块地址

22. GR_Port_Control

指令代码:17H

功能:通讯端口(UART/USB)开关控制

23. GR_WriteNotepad

指令代码:18H

功能:写记事本

24. GR_ReadNotepad

指令代码:19H

功能:读记事本

25. GR_HighSpeedSearch

指令代码:1BH

功能:高速搜索 FLASH

26. GR_GenBinImage

指令代码:1CH

功能:生成二值化指纹图像

27. GR_ValidTempleteNum

指令代码:1dH

功能:读有效模板个数

二:指令详解

⑴ 录入图像 GR_GetImage

功能说明: 探测手指,探测到后录入指纹图像存于ImageBuffer。

输入参数: none

返回参数: 确认字

指令代码: 01H

注:确认码=00H表示录入成功;

确认码=01H表示收包有错;

确认码=02H表示传感器上无手指;

确认码=03H表示录入不成功;

sum指校验和

⑵ 生成特征 GR_GenChar

功能说明: 将ImageBuffer中的原始图像生成指纹特征文件存于CharBuffer1或CharBuffer2

输入参数 :BufferID(特征缓冲区号)

返回参数 :确认字

指令代码 :02H

注:确认码=00H表示生成特征成功;

确认码=01H表示收包有错;

确认码=06H表示指纹图像太乱而生不成特征;

确认码=07H表示指纹图像正常,但特征点太少而生不成特征;

确认码=15H表示图像缓冲区内没有有效原始图而生不成图像;

sum指校验和

⑶ 精确比对两枚指纹特征 GR_Match

功能说明 :精确比对CharBuffer1 与CharBuffer2 中的 特征文件

输入参数 :none

返回参数 :确认字,比对得分

指令代码 :03H

注:确认码=00H表示指纹匹配;

确认码=01H表示收包有错;

确认码=08H表示指纹不匹配;

sum指校验和

⑷ 搜索指纹 GR_Search

功能说明 :以 CharBuffer1或CharBuffer2中的特征文件搜索整个或部分指纹库。

                   若搜索到,则返回页码。

输入参数 :BufferID, StartPage(起始页),PageNum(页数)

返回参数 :确认字,页码(相配指纹模板)

指令代码:04H

注:确认码=00H表示搜索到;

确认码=01H表示收包有错;

确认码=09H表示没搜索到;此时页码与得分为0

sum指校验和

⑸ 合并特征(生成模板)GR_RegModel

功能说明 :将 CharBuffer1与CharBuffer2中的特征文件合并生成模板,

                   结果存于CharBuffer1与CharBuffer2。

输入参数 :none

返回参数 :确认字

指令代码:05H

注: 确认码=00H表示合并成功;

确认码=01H表示收包有错;

确认码=0aH表示合并失败(两枚指纹不属于同一手指))

sum指校验和

(6) 储存模板 GR_StoreChar

功能说明 :将 CharBuffer1 或 CharBuffer2 中的模板文件存到PageID号flash数据库位置。

输入参数 :BufferID(缓冲区号),PageID(指纹库位置号)

返回参数 :确认字

指令代码 :06H

注:确认码=00H表示储存成功;

确认码=01H表示收包有错;

确认码=0bH表示PageID超出指纹库范围;

确认码=18H表示写 FLASH出错;

sum指校验和

⑺ 读出模板 GR_LoadChar

功能说明 :将 flash数据库中指定ID号的指纹模板读入到模板缓冲区CharBuffer1或CharBuffer2

输入参数 :BufferID(缓冲区号),PageID(指纹库模板号)

返回参数 :确认字

指令代码 :07H

注:确认码=00H表示读出成功;

确认码=01H表示收包有错;

确认码=0cH表示读出有错或模板无效;

确认码=0BH表示PageID超出指纹库范围;

sum指校验和

⑻ 上传特征或模板 GR_UpChar

功能说明 :将特征缓冲区中的特征文件上传给上位机

输入参数 :BufferID(缓冲区号)

返回参数 :确认字

指令代码 :08H

注:确认码=00H表示随后发数据包;

确认码=01H表示收包有错;

确认码=0dH表示指令执行失败;

sum指校验和

应答之后发送后续数据包

⑼ 下载特征或模板 GR_DownChar

功能说明 :上位机下载特征文件到模块的一个特征缓冲区

输入参数 :BufferID(缓冲区号)

返回参数 :确认字

指令代码 :09H

注:确认码=00H表示可以接收后续数据包;

确认码=01H表示收包有错;

确认码=0eH表示不能接收后续数据包;

sum指校验和

应答之后接收后续数据包

⑽ 上传原始图像 GR_UpImage

功能说明 :将图像缓冲区中的数据上传给上位机

输入参数 :none

返回参数:确认字

指令代码 :0aH

注:确认码=00H表示接着发送后续数据包;

确认码=01H表示收包有错;

确认码=0fH表示不能发送后续数据包;

sum指校验和

应答之后发送后续数据包

一个字节含两个像素,每个像素占4bits

⑾ 下载图像 GR_DownImage

功能说明 :上位机下载图像数据给模块

输入参数 :none

返回参数 :确认字

指令代码 :0bH

注:确认码=00H表示可以接收后续数据包;

确认码=01H表示收包有错;

确认码=0eH表示不能接收后续数据包;

sum指校验和

应答之后接收后续数据包,数据包长度须是64,128或256

一个字节含两个像素,每个像素占4bits

⑿ 删除模板 GR_DeletChar

功能说明 :删除flash数据库中指定ID号开始的N个指纹模板

输入参数 :PageID(指纹库模板号),N删除的模板个数。

返回参数 :确认字

指令代码 :0cH

注:确认码=00H表示删除模板成功;

确认码=01H表示收包有错;

确认码=10H表示删除模板失败;

sum指校验和

⒀ 清空指纹库 GR_Empty

功能说明 :删除flash数据库中所有指纹模板

输入参数 :none

返回参数 :确认字

指令代码 :0dH

注:确认码=00H表示清空成功;

确认码=01H表示收包有错;

确认码=11H表示清空失败;

sum指校验和

⒁ 写系统寄存器 GR_WriteReg

功能说明 :写模块寄存器

输入参数 :寄存器序号

返回参数:确认字

指令代码 :0eH

注1:确认码=00H表示OK;

确认码=01H表示收包有错;

确认码=1aH表示寄存器序号有误;

sum指校验和

注2:写系统寄存器(GR_WriteReg)指令执行时,先按照原配置进行应答,应答之后修改系统设置,并将配置记录于 FLASH,系统下次上电后,将按照新的配置工作。

⒂ 读系统基本参数 GR_ReadSysPara

功能说明 :读取模块的基本参数(波特率,包大小等)。)

输入参数 :none

返回参数 :确认字 + 基本参数(16bytes)

指令代码 :0fH 

注:确认码=00H表示OK;

确认码=01H表示收包有错;

sum指校验和

⒅ 设置口令 GR_SetPwd

功能说明 :设置模块握手口令

输入参数 :PassWord

返回参数 :确认字

指令代码 :12H

注:确认码=00H表示OK;

确认码=01H表示收包有错;

sum指校验和

⒆ 验证口令 GR_VfyPwd

功能说明 :验证模块握手口令

输入参数 :PassWord

返回参数 :确认字

指令代码 :13H  

注:确认码=00H表示口令验证正确;

确认码=01H表示收包有错;

确认码=13H表示口令不正确;

sum指校验和

⒇ 采样随机数 GR_GetRandomCode

功能说明 :令芯片生成一个随机数并返回给上位机

输入参数 :none

返回参数 :确认字

指令代码 :14H

注:确认码=00H表示生成成功;

确认码=01H表示收包有错;

sum指校验和

(21) 设置模块地址 GR_SetAddr

功能说明 :设置模块地址

输入参数 :none

返回参数 :确认字

指令代码 :15H

注:确认码=00H表示生成地址成功;

确认码=01H表示收包有错;

sum指校验和

上位机下传指令包时模块地址采用缺省地址:0xffffffff,应答包的地址域即采用新生成的地址本指令执行后,模块地址随即固定下来,保持不变。只有清空FLASH才能改变模块地址。本指令执行后,所有数据包都得用该生成的地址。

(22) 端口控制 GR_Port_Control

功能说明 :对于UART协议,该命令对USB通讯端口进行开关控制。

                   对于USB协议,该命令对UART端口进行开关控制。

输入参数 :控制码

                   控制码0代表关闭端口

                   控制码1代表开启端口

返回参数 :确认字

指令代码 :17H

注:确认码=00H表示端口操作成功;

确认码=01H表示收包有错;

确认码=1dH表示端口操作失败;

sum指校验和

(23) 写记事本 GR_WriteNotepad

功能说明 :模块内部为用户开辟了256bytes的FLASH 空间用于存放用户数据,该存储空间称为用户记事本,该记事本逻辑上被分成 16 个页,写记事本命令用于写入用户的32bytes数据到指定的记事本页 。

输入参数 :NotePageNum,user content

返回参数 :确认字

指令代码 :18H

注:确认码=00H表示OK;

确认码=01H表示收包有错;

sum指校验和

(24) 读记事GR_ReadNotepad

功能说明 :读取FLASH用户区的128bytes数据

输入参数 :none

返回参数 :确认字 + 用户信息

指令代码 :19H

指令包格式:

注:确认码=00H表示OK;

确认码=01H表示收包有错;

sum指校验和

(25) 高速搜索GR_HighSpeedSearch

功能说明 :以CharBuffer1或CharBuffer2中的特征文件高速搜索整个或部分指纹库。

                   若搜索到,则返回页码。 该指令对于的确存在于指纹库中,且登录时质量

                   很好的指纹,会很快给 出搜索结果。

输入参数:BufferID, StartPage(起始页),PageNum(页数)

返回参数 :确认字,页码(相配指纹模板)

指令代码 :1bH

注:确认码=00H表示搜索到;

确认码=01H 表示收包有错;

确认码=09H表示没搜索到;此时页码与得分为0

sum指校验和

(26) 生成细化指纹图像 GR_GenBinImage

功能说明 :对图像缓冲区中的指纹图像进行处理并生成细化指纹图像

输入参数 :BinImgTpye

                   0:二值化图像

                   1:不含特征点标识的细化图像

                   2或其他:带有特征点标识的细化图像

返回参数 :确认字

指令代码 :1cH

注:确认码=01H表示收包有错;

确认码=15H 表示无效指纹图像

确认码= 07 H表示没有足够特征信息

确认码=06 H表示图像质量太差    sum指校验和

(27) 读有效模板个数 GR_ValidTempleteNum

功能说明 :读有效模板个数

输入参数 :none

返回参数 :确认字,有效模板个数ValidN

指令代码 :1dH

注:确认码=00H表示读取成功;

确认码=01H表示收包有错;

sum指校验和

相关文章:

R306指纹识别模块指令系统

一:指令集 1. GR_GetImage 指令代码:01H 功能:从传感器上读入图像存于图像缓冲区 2. GR_GenChar 指令代码:02H 功能:根据原始图像生成指纹特征存于 CharBuffer1 或 CharBuffer2 3. GR_Match 指令代码&#xff…...

redis的搭建及应用(三)-Redis主从配置

Redis主从配置 为提升Redis的高可用性,需要搭建多个Redis集群以保证高可用性。常见搭建方式有:主从,哨兵集群等,本节我们搭建一主二从的多Redis架构。 redis主从安装1主2从的方式配置,以端口号为redis的主从文件夹。 主…...

Java学习,一文掌握Java之SpringBoot框架学习文集(1)

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…...

javaWeb学生信息管理系统2

一、学生信息管理系统SIMS 一款基于纯Servlet技术开发的学生信息管理系统(SIMS),在设计中没有采用SpringMVC和Spring Boot等框架。系统完全依赖于Servlet来处理HTTP请求和管理学生信息,实现了信息的有效存储、检索和更新&#xf…...

Linux Shell 019-文本行处理工具sed

Linux Shell 019-文本行处理工具sed 本节关键字:Linux、Bash Shell、文本行处理工具 相关指令:sed、 sed介绍 sed是Stream Editor(流编辑器)的缩写,简称流编辑器;用来处理文件的。sed是一行一行读取文件…...

Ubuntu中fdisk磁盘分区并挂载、扩容逻辑卷

Ubuntu中fdisk磁盘分区并挂载、扩容逻辑卷 一:fdisk磁盘分区并挂载1.查看磁盘分区信息2.分区3.强制系统重新读取分区(避免重启系统)4.格式化分区5.创建挂载目录6.设置开机自动挂载:7.验证并自动挂载(执行了该命令不需要重启系统)8.查看挂载007.异常情况处…...

【leetcode】栈与队列总结

本文内容来自于代码随想录 栈 用栈实现队列 两个栈实现队列。思路:两个栈分别表示入栈和出栈。 入队:直接入栈出队: a. 出栈为空,先把入栈中的元素全部放到出栈中(相当于反过来,这样在出栈的时候先进的元…...

[EFI]HP Spectre 13 v102nl电脑 Hackintosh 黑苹果efi引导文件

硬件型号驱动情况主板 HP Spectre 13 v102nl 处理器Intel Core i7-7500U (7th gen - Kaby Lake)已驱动内存8 GB LPDDR3-1866 SDRAM已驱动硬盘512 GB Toshiba NVMe™ M.2 SSD已驱动显卡Intel HD Graphics 620已驱动声卡Conexant CX8200 (0x2008)已驱动网卡I1211 Gigabit Etherne…...

【Pytorch】学习记录分享8——PyTorch自然语言处理基础-词向量模型Word2Vec

【Pytorch】学习记录分享7——PyTorch自然语言处理基础-词向量模型Word2Vec 1. 词向量模型Word2Vec)1. 如何度量这个单词的?2.词向量是什么样子?3.词向量对应的热力图:4.词向量模型的输入与输出![在这里插入图片描述](https://img-blog.csdni…...

【Kotlin 】协程

Kotlin协程 背景定义实践GlobalScope.launchrunBlocking业务实践 背景 在项目实践过程中,笔者发现很多异步或者耗时的操作,都使用了Kotlin中的协程,所以特地研究了一番。 定义 关于协程(Coroutine),其实…...

用Xshell连接虚拟机的Ubuntu20.04系统记录。虚拟机Ubuntu无法上网。本机能ping通虚拟机,反之不能。互ping不通

先别急着操作,看完再试。 如果是:本机能ping通虚拟机,反之不能。慢慢看到第8条。 如果是:虚拟机不能上网(互ping不通),往下一直看。 系统是刚装的,安装步骤:VMware虚拟机…...

人机对话--关于意识机器

人机对话–关于意识机器 这段内容是我和《通义千问》的对话。这本身展示的是人工智能的效果,同时这里面的内容也有人工智能相关,与各位分享。 我:阿尼尔赛斯 《意识机器》这本书写的是什么? 通义千问: 阿尼尔赛斯教…...

八股文打卡day16——计算机网络(16)

面试题:TCP连接是如何确保可靠性的? 我的回答: 1.数据分块控制。应用数据被分成被认为最适合传输的数据块大小,再发送到传输层,数据块被称为数据报文段或数据段。 2.序列号和确认应答。TCP为每一个数据包分配了一个序…...

Java Object浅克隆深克隆

对象克隆 把A对象的属性值完全拷贝给B对象,也叫对象拷贝,对象复制。 实现Cloneable接口,表示当前类的对象就可以被克隆,反之,表示当前类的对象就不能克隆。 如果一个接口里面没有抽象方法,表示当前的接口…...

概率的 50 个具有挑战性的问题 [8/50]:完美的桥牌

一、说明 我最近对与概率有关的问题产生了兴趣。我偶然读到了弗雷德里克莫斯特勒(Frederick Mosteller)的《概率论中的五十个具有挑战性的问题与解决方案》)一书。我认为创建一个系列来讨论这些可能作为面试问题出现的迷人问题会很有趣。每篇…...

自动驾驶学习笔记(二十四)——车辆控制开发

#Apollo开发者# 学习课程的传送门如下,当您也准备学习自动驾驶时,可以和我一同前往: 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo开放平台9.0专项技术公开课》免费报名—>传送门 文章目录 前言 控制算法 控制标定 控制协议…...

【起草】【第十二章】定制ChatGPT数字亲人

身为普普通通的我们,不知道亲人们在哪一天就要离开这个世界 ? 作为普普通通的程序员,我们可以为我们的亲人做点什么 ? 让他们以数字资产形式留在人世间 ? 对话|6岁女孩病逝捐器官,妈妈:她去…...

MySQL数据库索引

索引的定义 索引是一个排序的列表,包含索引字段的值和其对应的行记录的数据所在的物理地址 索引的作用 加快表的查询速度,还可以对字段排序 索引的副作用 会额外占用磁盘空间;更新包含索引的表会花费更多的时间,效率会更慢 …...

【LLM 】7个基本的NLP模型,为ML应用程序赋能

在上一篇文章中,我们已经解释了什么是NLP及其在现实世界中的应用。在这篇文章中,我们将继续介绍NLP应用程序中使用的一些主要深度学习模型。 BERT 来自变压器的双向编码器表示(BERT)由Jacob Devlin在2018年的论文《BERT:用于语言…...

数字人私人定制

数字人是什么? 在回答这个问题之前,我们先回答另一个问题,人如何与人工智能交流?目前可以通过文字、语音、电脑屏幕、手机屏幕、平板、虚拟现实设备等和人工智能交流,为了得到更好的交流体验,人工智能必然…...

CollectionUtils

使用 CollectionUtils 类的常用方法 在Java开发中,我们经常需要对集合进行各种操作,而Apache Commons Collections库提供了一个方便的工具类 CollectionUtils,其中包含了许多实用的方法。在这篇博客中,我们将深入了解一些常用的方…...

很想写一个框架,比如,spring

很想写一个框架,比如,spring。 原理很清楚,源码也很熟悉。 可惜力不从心,是不是可以找几个小弟一起做。...

Java集合/泛型篇----第五篇

系列文章目录 文章目录 系列文章目录前言一、说说LinkHashSet( HashSet+LinkedHashMap)二、HashMap(数组+链表+红黑树)三、说说ConcurrentHashMap前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通…...

ACES 增强版不丹水稻作物地图(2016-2022 年)

ACES 增强版不丹水稻作物地图(2016-2022 年) 用于改善粮食安全决策的 2016-2022 年年度作物类型稻米地图仍然是不丹的一项挑战。这些地图是与不丹农业部和 SERVIR 合作开发的。通过专注于发展不丹的科学、技术、工程和数学 (STEM),我们共同开…...

【Spark精讲】一文讲透Spark宽窄依赖的区别

宽依赖窄依赖的区别 窄依赖:RDD 之间分区是一一对应的宽依赖:发生shuffle,多对多的关系 宽依赖是子RDD的一个分区依赖了父RDD的多个分区父RDD的一个分区的数据,分别流入到子RDD的不同分区特例:cartesian算子对应的Car…...

nacos2.3.0配置中心问题处理

问题&#xff1a;Error to process server push response: {"headers":{},"abilityTable":{"supportPersistentInstanceByGrpc":true},"module":"internal"} 处理办法&#xff1a; 将pom.xml中 <!-- nacos服务注册/发…...

Apollo自动驾驶系统:实现城市可持续交通的迈向

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 ChatGPT体验地址 文章目录 前言引言&#xff1a;1. 什么是微服务架构&#xff1f;2. 微服务架构的组成要素3. 微服务架构的挑战和解决方案4. 微服务架构的可扩展性和弹性 第二部分&#x…...

【WPF.NET开发】附加事件

本文内容 先决条件附加事件语法WPF 如何实现附加事件附加事件方案处理附加事件定义自定义附加事件引发 WPF 附加事件 Extensible Application Markup Language (XAML) 定义了一种语言组件和称为附加事件的事件类型。 附加事件可用于在非元素类中定义新的 路由事件&#xff0c…...

java浅拷贝BeanUtils.copyProperties引发的RPC异常 | 京东物流技术团队

背景 近期参与了一个攻坚项目&#xff0c;前期因为其他流程原因&#xff0c;测试时间已经耽搁了好几天了&#xff0c;本以为已经解决了卡点&#xff0c;后续流程应该顺顺利利的&#xff0c;没想到 人在地铁上&#xff0c;bug从咚咚来~ 没有任何修改的服务接口&#xff0c;抛出…...

【pynput】鼠标行为追踪并模拟

文章目录 前言基本思路安装依赖包实时鼠标捕获捕获鼠标位置捕获鼠标事件记录点击内容效果图 实时按键捕获控制按键操作捕获按键事件组合键记录区间设置 用户操作记录与回溯基本思路完整代码效果图 利用本文内容从事的任何犯法行为和开发与本人无关&#xff0c;请理性利用技术服…...

docker小白第十天

redis集群主从容错切换案例 3主3从的redis集群&#xff0c;某个主机宕机了&#xff0c;需要对应的从机补位。 docker exec -it redis-node-1 /bin/bash # 进入容器1的命令行 redis-cli -p 6381 # 进入节点1的命令行 cluster nodes # 查看集群信息可以看到1号和6号对应是主从关…...

Apache SSI 远程命令执行漏洞

一、环境搭建 二、访问upload.php 三、写shell <!--#exec cmd"id" --> 四、访问 如图所示&#xff0c;即getshell成功&#xff01;​...

阿里云30个公共云地域、89个可用区、5个金融云和政务云地域

阿里云基础设施目前已面向全球四大洲&#xff0c;公共云地域开服运营30个公共云地域、89个可用区&#xff0c;此外还拥有5个金融云、政务云地域&#xff0c;并且致力于持续的新地域规划和建设&#xff0c;从而更好的满足用户多样化的业务和场景需求。伴随着基础设施的加速投入和…...

Linux驱动开发之杂项设备注册和Linux2.6设备注册

目录 一、杂项设备注册 杂项设备注册简介 杂项设备注册特点: 杂项设备注册相关API misc_register() misc_deregister() 杂项设备注册相关例程 例程简介 源码分享 二、Linux 2.6设备注册 Linux2.6设备注册简介 Linux 2.6设备注册特点 Linux2.6设备注册流程 ​Linu…...

javafx写一个文档编辑器

文本编辑器是一种用于编辑纯文本文件的工具。它具有基本的文本编辑功能,如插入、删除、复制、粘贴等。文本编辑器通常不具备格式化文本、排版和图形编辑等高级功能,专注于纯文本的编辑。常见的文本编辑器包括记事本(Notepad)、Sublime Text、Visual Studio Code、Atom、Emacs…...

PHP与Angular详细对比 帮助你选择合适的项目技术

开发可有效扩展并提供诺克斯堡级安全性的Web应用程序和网站是每个开发人员的梦想。而使用这样的产品是每个用户的愿望。因此&#xff0c;为您的项目选择最合适和可靠的技术非常关键。 虽然PHP和Angular是完全不同的技术——PHP与JavaScript是一个更恰当的比较——但它们都广泛…...

基于立锜RTQ7882,支持全协议及DP显示功能的PD快充方案

在上一篇文章【基于RTQ7882的车载PD快充方案 - 大大通 &#xff08;wpgdadatong.com&#xff09;】中&#xff0c;已经对立锜科技&#xff08;Richtek&#xff09;及主打产品RTQ7882的基本功能作了介绍。 本文将分享RTQ7882近期新增的功能&#xff0c;以及其Cost Down版本。 旨…...

2023-12-25 LeetCode每日一题(不浪费原料的汉堡制作方案)

2023-12-25每日一题 一、题目编号 1276. 不浪费原料的汉堡制作方案二、题目链接 点击跳转到题目位置 三、题目描述 圣诞活动预热开始啦&#xff0c;汉堡店推出了全新的汉堡套餐。为了避免浪费原料&#xff0c;请你帮他们制定合适的制作计划。 给你两个整数 tomatoSlices …...

JavaScript 基础通关

快速熟悉 JavaScript 的基础语法&#xff0c;比较高级的比如事件放在后面的笔记中。 JavaScript 1. JavaScript 介绍 1.1 JavaScript 基本介绍 JavaScript 是一门运行在客户端&#xff08;浏览器&#xff09;的编程语言&#xff0c;实现人机交互的效果。实现网页特效、表单验…...

目标检测损失函数:IoU、GIoU、DIoU、CIoU、EIoU、alpha IoU、SIoU、WIoU原理及Pytorch实现

前言 损失函数是用来评价模型的预测值和真实值一致程度&#xff0c;损失函数越小&#xff0c;通常模型的性能越好。不同的模型用的损失函数一般也不一样。损失函数主要是用在模型的训练阶段&#xff0c;如果我们想让预测值无限接近于真实值&#xff0c;就需要将损失值降到最低…...

今年努力输出的嵌入式Linux视频

今年努力了一波&#xff0c;几个月周六日无休&#xff0c;自己在嵌入式linux工作有些年头&#xff0c;结合自己也是一直和SLAM工程师对接&#xff0c;所以输出了一波面向SLAM算法工程师Linux课程&#xff0c;当然嵌入式入门的同学也可以学习。下面是合作的官方前面发的宣传文章…...

python非常好用的文件系统监控库

如果你不想使用Watchdog库&#xff0c;而是自己编写代码来监视文件系统的变化&#xff0c;可以使用Python的内置模块os和time来实现。 下面是一个简单的示例代码&#xff0c;演示如何使用os和time模块来监视文件系统中文件的变化&#xff1a; pythonimport osimport timedef m…...

基于SpringBoot的电影购票系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的电影购票系统,java项目…...

Spring系列:Spring如何解决循环依赖

❤ 作者主页&#xff1a;欢迎来到我的技术博客&#x1f60e; ❀ 个人介绍&#xff1a;大家好&#xff0c;本人热衷于Java后端开发&#xff0c;欢迎来交流学习哦&#xff01;(&#xffe3;▽&#xffe3;)~* &#x1f34a; 如果文章对您有帮助&#xff0c;记得关注、点赞、收藏、…...

netty源码:(40)ReplayingDecoder

ReplayingDecoder是ByteToMessageDecoder的子类&#xff0c;我们继承这个类时&#xff0c;也要实现decode方法&#xff0c;示例如下&#xff1a; package cn.edu.tju;import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.netty.handle…...

Apache Doris (五十五): Doris Join类型 - Colocation Join

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录 1. Colocation Join原理...

计算机组成原理复习7

内存管理 文章目录 内存管理存储器概述存储器的分类按在计算机中的作用&#xff08;层次&#xff09;分类按存储介质分类按存取方式分类按信息的可保存性分类 存储器的性能指标存储容量单位成本存储速度&#xff1a;数据传输率数据的宽度/存储周期 存储器的层次化结构多级存储系…...

python使用openpyxl操作excel

文章目录 前提读取已有excel创建一个excel工作簿对象创建excel工作簿中的工作表获取工作表第一种&#xff1a;.active 方法第二种&#xff1a;通过工作表名获取指定工作表​​​​​​第三种&#xff1a;.get_sheet_name() 修改工作表的名称数据操作写入数据按单元格写入通过指…...

使用keepalived时虚拟IP漂移注意事项

什么是Keepalived服务 keepalived是一个开源的软件项目&#xff0c;用于实现高可用性&#xff08;HA&#xff09;的网络服务器负载均衡和故障转移。它允许将多台服务器组合在一起&#xff0c;形成一个虚拟服务器集群&#xff0c;实现负载均衡和故障转移。 keepalived的核心功…...

32阵元 MVDR和DREC DOA估计波束方向图对比

32阵元 MVDR和DREC DOA估计波束方向图对比 一、原理 MVDR原理&#xff1a;https://zhuanlan.zhihu.com/p/457528114 DREC原理&#xff08;无失真响应特征干扰相消器&#xff09;&#xff1a;http://radarst.ijournal.cn/html/2019/3/201903018.html 主要参数&#xff1a; 阵…...