程序员
文章平均质量分 78
普通网友
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于ONENET云平台数据的MQTT协议的使用及模拟数据和搭建。_mqtt simulate device
订阅和发布是需要两个设备同时进行的,所以我们需要在多添加一个设备,添加完设备以后,我们还需要将新添加的设备也进行登录,但simulate-device每个只能登录一个设备,所以我们需要再打开一个simulate-device来进行登录,登录以后两个设备都处于登录状态以后,我们就可以进行订阅和发布了。我们现在就可以先在设备1中进行订阅了,这个订阅的话题可以理解为一个ID丶一个账号,正因为有了这个ID我们才可以在发布的时候能准确的接收到信息,我们订阅完成以后,就可以用设备二进行发布了。原创 2024-05-15 03:16:30 · 1263 阅读 · 0 评论 -
基于ONENET云平台数据的MQTT协议的使用及模拟数据和搭建。_mqtt simulate device(1)
订阅和发布是需要两个设备同时进行的,所以我们需要在多添加一个设备,添加完设备以后,我们还需要将新添加的设备也进行登录,但simulate-device每个只能登录一个设备,所以我们需要再打开一个simulate-device来进行登录,登录以后两个设备都处于登录状态以后,我们就可以进行订阅和发布了。我们现在就可以先在设备1中进行订阅了,这个订阅的话题可以理解为一个ID丶一个账号,正因为有了这个ID我们才可以在发布的时候能准确的接收到信息,我们订阅完成以后,就可以用设备二进行发布了。原创 2024-05-15 03:15:54 · 1049 阅读 · 0 评论 -
基于CAN总线的汽车诊断协议UDS (网络层 ISO 15765)_15765协议处于can协议哪一层
上个月一个同事Z跳槽去了德赛西威,Z之前是完全不懂诊断的MCU工程师,去德赛后做诊断开发,让我感觉到,汽车嵌入式行业,CAN和诊断工程师还是比较稀缺的。之前我和Z共同负责一个项目,我负责CAN网络和诊断部分,经过4个多月的奋战,我一个人把汽车诊断UDS的系统搭建出来,自认为,完成度很高,代码质量也极好。他跳槽去德赛做诊断开发,我想多少有点受益于我开发的诊断代码,另外我也悉心指导他,讲解相关的知识,他确实也学到不少,即便是现在,他有问题也会打电话向我求助。原创 2024-05-15 03:15:16 · 1289 阅读 · 0 评论 -
基于CAN总线的汽车诊断协议UDS (网络层 ISO 15765)_15765协议处于can协议哪一层(1)
0,SF(单帧)1,FF(首帧)2,CF(连续帧)3,FC(流控帧)4-F,保留定义我在程序中接收到一条诊断报文后,通过一条宏定义获取N_PCItype然后根据pci_type进行不同的处理。(1)单帧的情况下,N_PCI byte第一个字节的低4位为SF_DL(消息长度),范围在1-6(扩展地址和混合地址)或者1-7(普通地址)之间,如果SF_DL错误,网络层应该忽略这条N_PDU。原创 2024-05-15 03:14:36 · 1294 阅读 · 0 评论 -
openmv与stm32通讯实现控制舵机跟随颜色块转动[hal库]_openmv与是stm32二维自由度舵机(1)
uart.init(115200, bits=8, parity=None, stop=1) #8位数据位,无校验位,1位停止位、if blob: #如果找到了目标颜色。#迭代找到的目标颜色区域。原创 2024-05-14 17:51:18 · 558 阅读 · 0 评论 -
NXP的mfgtool镜像烧写工具是如何对EMMC进行分区的_修改emmc分区大小
mmc dev 1 //切换到EMMCmmc part //查看emmc的分区情况。会发现第0个分区识别不出来,是因为第0分区没有格式化,实际上第0个分区是存在的烧过系统的EMMC分区如下:可见EMMC的分区是这样的可以通过下面指令查看EMMC分区里的内容://查看EMMC设备分区1的内容,因为该分区是FAT的,所有需要使用fat相关的命令2、分区的起始地址和大小现在只是知道了EMMC有3个分区,但是这3个分区的起始地址和大小是怎么设置的,能不能修改?原创 2024-05-14 17:50:39 · 1463 阅读 · 0 评论 -
NRF24L01——工作原理(关于发送接收通道地址)解读_nrf24l01地址
(就是说接收端的发送地址寄存器TX_ADDR中存的地址就是发送端TX_ADDR中的地址,而发送端要以又要用通道0来接收应答,所以需要将通道0的地址设置为该地址,即发送端TX_ADDR中的值)。TX_ADD就一个,是发送数据帧格式中发送的地址信息,如上1所示,这个地址指定了向接收端接收数据通道的地址。第二部分的地址,就是接收端接收数据的通道地址,这个地址由发送端TX_ADDR寄存器搞定。,**因此发送端通道0的接收地址要与发送地址端地址相等,**以确保接收到正确的应答信号。2发送:发送应答信号给发送端。原创 2024-05-14 17:50:00 · 961 阅读 · 0 评论 -
Navicat Premium 安装_generating new rsa private key,it may take a long
【代码】Navicat Premium 安装_generating new rsa private key,it may take a long。原创 2024-05-14 17:49:18 · 514 阅读 · 0 评论 -
2024年树莓派4B ubuntu20,腾讯T3团队整理
常见直插LED元件,观察这个元件的2个引脚,长的为正极,短的为负极。如上图左侧为正极,右侧为负极。要驱动LED的话,一般就在LED的正负极加上适当的电压就可以点亮LED了,而要控制其亮灭,就可以用树莓派芯片的引脚,再通过程序控制引脚输出与不输出电压就能实现LED的亮灭了。根据引脚定义,39引脚是GND,40引脚是gpio引脚。我们把40引脚接到LED的正极,39引脚接到LED负极。LED也叫发光二极管,可高效地将电能转化为光能的半导体器件,在现代社会具有广泛的用途,如照明、平板显示、医疗器件等。原创 2024-05-14 08:52:26 · 370 阅读 · 0 评论 -
2024年树莓派4B Python3,2024年最新物联网嵌入式开发面试资料集合
手指方向检测(食指, 可以修改其他手指) 可以直接运行,这里的hands_module是单独检测左手或者右手,test_time检测时间就是超时返回0,last_dire是我项目里需要的参数,这应该是最快速的检测手指指向的方案了,包含了手指的方向以及手指是否直指,(食指一二三关节关键点夹角)这里是手指关节必须大于140度。手指指向判断时候,cvzone手势识别有,手掌21个关键点的三维坐标,所以这里利用的是三维向量判断和对应角度夹角,这里三维向量∠ABC需要满足需求才表示指向某个方向。原创 2024-05-14 08:51:47 · 424 阅读 · 0 评论 -
2024年某平台后台系统存在任意账号密码重置漏洞_月兔后台管理系统漏洞,附物联网嵌入式开发面经
点击“发送验证码”按钮,随便输入验证码和密码 ,此时,我并不知道验证码是多少位的,理论上,少于5位都容易被破解。点击进入“忘记密码页面”,随手输入admin,显示出了 隐藏的手机号,需要发送验证码才能重置密码。由于成功失败返回内容长度一样,当时不知道是否爆破成功,等待片刻,输入重置的密码,发现可以登录。我很轻松重置了超级管理员的密码,可以看到后台系统的任意公功能,并且可以对数据做任意修改删除。我的专业性告诉我,这里可能存在任意密码重置漏洞,于是尝试利用。进入该后台地址,发现有忘记密码入口。原创 2024-05-14 08:51:08 · 557 阅读 · 0 评论 -
2024年机器人技术及其影响(1),全网首发
3. 机器人学的诞生:20世纪40年代,“机器人”一词首次由科幻小说作家艾萨克·阿西莫夫(Isaac Asimov)提出,并成为机械科学和控制系统研究的重要领域。在此期间,研究人员开始开发可编程和自主的机械装置,以执行特定的任务。4. 工业机器人的发展:20世纪60年代,工业机器人成为机器人领域的一个重要分支。首个应用于生产线的工业机器人于1961年在美国问世。随后,工业机器人在制造业中得到广泛应用,用于完成重复性和繁琐的任务。原创 2024-05-14 08:50:25 · 431 阅读 · 0 评论 -
2024年最全Git 操作教程_git-core,2024年最新物联网嵌入式开发开发教程入门
git reset --hard 1094a //这里不能用HEAD而必须使用 commit id ,因为最新版本在之前返回时已经被删除了,1094a就是最新版本的 commit id,可以在之前的代码中查到。$ git commit -m “wrote a readme file” //-m后面输入的是本次提交的说明,可以输入任意内容。Git is free software.//readme.txt //文件返回到了上一个版本。$ git status //查看仓库当前的状态。原创 2024-05-14 04:14:19 · 853 阅读 · 0 评论 -
2024年最全Flash,EEPROM和SRAM的区别_dsp中sram是什么,从物联网嵌入式开发语言到AIDL使用与原理讲解
ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。内存工作原理:内存是用来存放当前正在使用的(即执行中)的数据和程序,我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的"动态",指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。原创 2024-05-14 04:13:40 · 1530 阅读 · 0 评论 -
2024年最全FileUtils 文档详细介绍_fileutil,程序员怎样优雅度过35岁中年危机
(3)按以下顺序查找,并返回"sprite.png"的完整路径(如"C:/Res/xyz/bg.png")。(1)先根据字典替换别名 “sprite.png” --> “bg.png”(2)然后查找"bg.png"(若无字典,直接查找"sprite.png")当然查找之前,先判断filename是否存在文件字典,若有将替换。(4)若未找到,返回"sprite.png"> 搜索路径 (SearchPaths)> 文件字典 (Dictionary)查找 “sprite.png”2.1、设置文件查找路径。原创 2024-05-14 04:13:01 · 158 阅读 · 0 评论 -
2024年最全Excel公式大全加详解_excel公式大全详解(1),2024年最新2024物联网嵌入式开发大厂面试集合
8.Lookup(查找对象,{“对象1”,“对象2”,“对象3”},{“代表对象1”,“代表对象2”,“代表对象3”})常常与Mid()函数一起使用,例如,Lookup(Mid(区域,从第几位开选,选几个),{“01”,“02”,“03”},{“班级一班”,“班级二班”,“班级三班”})10.isodd(对象)函数判断对象为奇数还是偶数,是奇返回ture,否则返回false,常常与IF(isodd(mid()))联合使用,IF(isodd(mid()),“男”,“女”)原创 2024-05-14 04:12:19 · 708 阅读 · 0 评论
分享