自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

瓜洲的博客

学习笔记,多多指教

  • 博客(76)
  • 资源 (5)
  • 收藏
  • 关注

原创 【openwrt学习笔记】IPV6 ND协议学习和socket编程

(说明:本笔记主要是实现从DAD报文中解析出源mac地址和和请求ipv6地址,原来的程序实现只是过滤NA报文,然后解析数据,但是经常会出现无法及时解析出设备ipv6地址,甚至长时间获取不到的情况,这里增加DAD检测,一开始就保存设备的所有ipv6地址,后续如果更新在将不使用的ipv6地址老化掉。上述修改后的socket使用AF_PACKET和SOCK_RAW创建的套接字,将接收所有的ipv6报文,并未进行过滤,如果在跑流或者组播测试时,一旦有大量的ipv6报文,会很大的占用资源,造成浪费和严重后果。

2023-12-20 16:01:56 1249

原创 【openwrt学习笔记】Dying Gasp功能和pstore功能的配置(高通 ipq95xx)

pstore以文件系统的形式提供用户空间接口,可以通过mount命令挂载到指定目录下边,如xxx\pstore,那么保存的信息将以文件的形式出现在该目录下,可以使用文件读操作获取调试信息,通过删除操作清除调试信息。因为为使得此功能能正常使用的前提是芯片必须还能正常工作,并且要向头端发送一定时间长度的信号,所以在论坛定义的Dying gasp信号有效时间内,供芯片正常工作的各种电源的电压不能小于此芯片规格书所描述的最小工作电压。不同的平台可以提供的存储位置不同,例如有些平台支持硬盘,有些不支持。

2023-10-20 17:46:30 1923

原创 【openwrt学习笔记】新patch的制作和旧patch的修改

(4)将制作好的number-destfile.patch这个补丁文件放到package/package-name/patches目录中,如果patches目录之前不存在,那么创建一个就可以了;使用diff打补丁,适合于对补丁流程熟悉,并且补丁文件个数不多及目录结构简单的情况,有时候单个文件补丁内容过多不变一个个手动修改时使用本节介绍方法也可以让工作更高效。(3)修改补丁内容,修改文件路径,旧文件为a/xxx/xxx,新文件为b/xxx/xxx,文件路径必须和实际的路径层数相同,a,b代表编译包的名称;

2023-09-19 14:28:17 1153

原创 【openwrt学习笔记】miniupnpd学习笔记

(1) 有了NAT以后,内网的主机不在需要申请公网IP地址,只需要将内网主机地址和端口通过NAT映射到网络出口的公网IP即可,然后通信的两端在无感知的情况下进行通信。那TURN协议就是建立在STUN协议之上的,它的协议头和body几乎是一样的,只是里面的一些属性和内容不一样,外壳形式什么的都是一样的,所以很多服务器都是将STUN协议和TURN协议放在一起形成了一个服务器,就是既提供STUN的功能又提供TURN的功能。这样虽然对外隔离了内网主机,但同时又限制了P2P的通信,这也是NAT带来的一大弊端。

2023-09-18 19:09:11 5144 1

原创 【LINUX相关】生成随机数(srand、/dev/random 和 /dev/urandom )

随机数生成器会收集系统环境中各种数据,比如:鼠标的移动,键盘的输入, 终端的连接以及断开,音视频的播放,系统中断,内存 CPU 的使用等等;生成器把收集到的各种环境数据放入一个池子 ( 熵池 ) 中,然后将这些数据进行去偏、漂白,主要目的也是使得数据更加无序,更加难以猜测或者预料得到;有了大量的环境数据之后,每次获取随机数时,从池子中读取指定的字节序列,这些字节序列就是生成器生成的随机数.

2023-08-16 15:57:33 1547

原创 【openwrt学习笔记】dnsmasq源码阅读

(2)当clientIP地址已经用到50%的时间,续租一下,client端就会以单播形式向服务端发送一个DHCP Request包,server没有响应,client会继续使用,当使用到87.5%时,会在续租一次,同时就以广播的方式是发送一个request包,server这时收到响应以后,就会回应一个ACK包,重新约定一个时间。吐槽一下:源代码的格式真是一言难尽,缩进乱七八糟,而且有的空格有的tab看着也难受,格式不标准,有的都不能正确缩放,还是让GPT转化了一下再看的。消息来请求使用先前分配的网络地址。

2023-08-14 18:05:38 1634

原创 路由器中DMZ、UPnP、Port Forwarding等功能介绍与使用

正常情况下,外网设备是无法主动访问内网192.168.1.33,为了能让外网设备访问内网Web Server,可以在路由器上配置一条Port Forwarding规则,将目标为172.25.24.10:80的封包经过DNAT后修改为192.168.1.33:80的封包,这样外网访问172.25.24.10:80就能自动转到内网的Web Server了。自动端口映射:UPnP 可以自动配置路由器上的端口映射,使位于局域网内的设备可以通过互联网访问特定的服务,如在线游戏、远程桌面、P2P 文件共享等。

2023-08-08 17:43:32 8139

原创 【嵌入式笔/面试】嵌入式软件基础题和真题总结——单片机与Linux

【嵌入式笔/面试】嵌入式软件基础题和真题总结——单片机与Linux

2023-05-06 16:03:45 1590 1

原创 【嵌入式笔/面试】嵌入式软件基础题和真题总结——网络相关

【嵌入式笔/面试】嵌入式软件基础题和真题总结——网络相关

2023-04-24 14:34:24 746 1

原创 【嵌入式笔/面试】嵌入式软件基础题和真题总结——操作系统

【嵌入式笔/面试】嵌入式软件基础题和真题总结——操作系统

2023-04-21 16:14:05 1060

原创 计算机笔试/面试常见逻辑题/智力题汇总

计算机笔试面试逻辑题汇总

2023-04-16 12:08:34 2551 1

原创 git常用命令记录和相关问题解决方案

git常用命令和相关问题解决步骤

2022-10-31 11:44:08 227

转载 cJSON的使用方法

cJSON的使用方法

2022-10-13 16:51:12 284

原创 使用VBS编写xshell/SecureCRT自动化脚本

使用VBS编写xshell/secureCRT自动化脚本

2022-08-29 17:09:09 6669 1

原创 力扣——程序员面试金典109题刷题笔记1(数组与字符串)

力扣刷题笔记1

2022-08-09 14:15:10 528 1

原创 图解TCP/IP(第五版)&& 计算机网络 -- 学习笔记和读后感(学习补充中~~~)

图解TCP/IP学习笔记,计算机网络学习笔记。

2022-08-05 11:16:05 694

原创 毕设——基于人脸表情识别的桌面交互精灵设计(分享一下成果,附上人脸表情的数据集和自己训练出来yolov5模型以及基于PYQT5运行yolov5的交互界面)

数据集和yolov5模型分享。

2022-08-05 09:23:50 2565 45

原创 DHCP和PPPoE协议以及抓包分析

DHCP和PPPoE协议学习和使用wireshark对其进行抓包分析

2022-07-26 17:07:06 5945

原创 C语言编程规范学习笔记和总结(附华为编程规范机试参考试题)

C语言编程规范

2022-07-21 11:41:40 3756

原创 第二天 自制数据集,使用yolov5-3.1和yolov5-6.1分别训练对比,验证测试结果

这里写目录标题一、数据集的处理(txt格式和xml格式相互转换)说明txttoxml.py二、正式训练预处理第一步:将图片进行裁剪(不占用过多内存),统一修改后缀为.jpg(方便后续处理)第二步:创建如下四个文件,将图片放入images,将标签放入annotation第三步:将图片和xml文件重命名(不是特别重要,只是为了更加好看)第四步:标签分类第五步:将xml格式标签转换为txt格式标签(如果已经是txt格式标签,这一步省略)xmltotxt.py第六步:创建配置文件第七步:修改models下的配置文件

2022-03-19 11:06:55 3032 6

原创 【嵌入式笔/面试】嵌入式软件基础题和真题总结——C/C++

嵌入式软件面/笔试基础题总结之C/C++基础知识。

2022-03-10 15:45:57 299

原创 第一天 cuda\pytorch\yolov5环境配置

参考链接和说明说明:之前我是使用过YOLOV5的,本来环境也都配好的,但是因为意外内容全部丢失,所以我就索性清空环境从新下载所需的配置。加上之前没有写笔记,隐约记得有很多坑,所以趁着本次毕设之际,重新整理一下整个过程。致谢:感谢其他写博文的博主,以下是我的参考博文(后面的所有文章参考链接我会写在开头以示支持原创者)!想到好名再改——史上最详细yolov5环境配置搭建+配置所需文件Win10安装CUDA 10.2win10系统CUDA10.0安装教程一、基本开发软件(anaconda和pychar

2022-03-04 21:57:26 1961 2

原创 第七天:越疆小车的建图和导航,修改相关参数使得建图无重影无空缺更完整,使用python代码实现自动导航功能

这一篇的建图是后面功能实现的基础,图建不好,会严重影响后面的导航和抓取,所以建图尽量准确,能够省去很多麻烦事。使用gmapping 算法构建地图这里的gmapping算法只做了解,可以不用去深入学习算法本身的知识,有兴趣或者专业的可以深入学习,因为已经写好了launch文件,可以直接调用完成建图工作。Gmapping 是一种高效的 Rao-Blakwellized 粒子滤波器,用于根据激光雷达测距数据来生成 2D栅格地图,ROS gmapping 是 OpenSLAM 下的 GMapping 的再封装

2021-12-22 23:20:01 4866 8

原创 第六天:通过python代码控制越疆机械臂完成抓取投递整个过程

文章目录一、前言二、机械臂的运动逻辑(直接上代码讲解,具体请看注释)三、总结一、前言有很多小伙伴问我怎么样控制机械臂完成整个过程,其实经过上一篇博文的探究,这个问题其实很容易就可以解决。把他们每个位姿连起来执行不过就行了吗,因为我们做这个的场景就是抓取——>放置——>投递,整个场景和动作很固定。 所以我们完全用不上所谓的路径规划,说实话,路径规划这玩意弄起来也不简单。所以这里就不去讨论这块问题。 后面有机会,等我去更加深入的自学一下,有机会可以交流!二、机械臂的运动逻辑(直接上代码讲解,

2021-11-18 01:34:24 7113 6

原创 4.0 树莓派做下位机播放视频、控制电机舵机、超声波检测、paj7620手势传感器控制,树莓派串口通信等程序分析

文章目录一、前言二、Python实现封装打包自己写的代码参考链接我的参考_init_.pysetup.py三、 树莓派的硬件解码播放器——Omxplayer四、树莓派控制舵机,驱动L298N控制电机测试代码motor_main.py(三个电机,两个舵机)moter.py五、树莓派串口通信myserial.pymyserial_main.py六、树莓派检测超声波ultrasonic.py七、paj7620手势传感器paj7620.py八、树莓派检测轻触开关(实际就是检测开关的高低电平, GPIO.add_ev

2021-11-18 00:27:43 6844 3

原创 模块学习4:(2)MQTT协议连接、发布、订阅、心跳、断链等分析和代码实现,并且通过mqtt.fx连接服务器,使用wireshark抓包分析mqtt实现过程

文章目录一、MQTT控制报文的结构(1)固定报头(类型/标志 + 剩余长度)剩余长度(这个要注意下,要注意它的计算方法,有一点特殊)可变报头有效载荷二、下面直接开整各个具体的报文(MQTT有个工程,可以拿来直接用,挺完善的,不过我觉得写的有点乱,所以我就把功能单独拎出来了,封装了自己的函数)CONNECT – 连接服务端CONNACK – 确认连接请求SUBSCRIBE - 订阅主题SUBACK – 订阅确认PUBLISH – 发布消息PUBACK –发布确认PINGREQ – 心跳请求PINGRESP –

2021-11-17 19:39:04 2183 3

原创 模块学习4:(1)通过MQTT协议和电信云平台的通信(内附MQTT协议V3.1.1的原版和中文参考资料)

这里就不对MQTT协议本身作过多的讲解了,网上也有很多更加详细的对MQTT博文的讲解,当然更直接的就是参看协议文件。这里直接贴一篇写的比较完整的博客和菜鸟教材对协议的讲解,可以参考学习。菜鸟教程,MQTT协议入门MQTT协议详解之前买了一块超纬电子出的一款开发板,进行ESP8266、以太网、WiFi和MQTT协议连接云平台相关实验的学习。原本MQTT协议的源代码是一个比较大的的工程,适用于多个平台,所以在使用的时候实际上也只用了一部分功能,它对其进行了单独封装,所以可读性和适用性更强,所以我主要参看

2021-10-25 16:38:13 3096

原创 模块学习3:PTC052A-200串口摄像头拍照等功能编写

这是普泰通信的一个RS485摄像机,主要也是通过相关协议进行一个开发使用。大概就是这样的。相应的摄像头规格和通信协议资料我也相应的贴在资源里面。直接根据协议写功能函数。1、130 万/200 万像素串口摄像头通讯协议(指令的数字均为 16 进制)上电后需要 3s 启动时间,在此期间,发送指令,摄像头没有回应。用户程序在上电延时 3s 后,可发送复位指令,看摄像头是否有响应,如有响应,说明已经初始化完成,串口会输出如下信息,即可正常拍照了。Version:PTC2M0 1.02MEID_Num:0

2021-10-25 15:42:24 829 1

原创 3.0 Maixpy(maixduino)的简单使用、训练的讲解,识别程序和视频播放的讲解(以垃圾分类为例)

注意!!!这篇文章写于2021年10月,但是我使用这个开发板是在2020年8月到12月的期间用的,并且这块板子还是比较新的,也是最近一段时间资料才开始逐渐完善的。 当时我用的时候也是三天两头烧写固件,各种bug不断。但是现在也完善很多了,所以我下面依据的资料,尤其是我的示例代码,可能由于更新,一些方法有所变化。要根据需要查看官方的代码库,有很多示例代码。 但是有一点,我写之前也有用了一些时间查看了最新的WIKI文档,有了很多更新,但是思路是一样,毕竟不可能完全重构是吧。所以在看的时候要学会举一反三,万变不

2021-10-24 23:00:23 7055 12

原创 模块学习2:基于PELCO-D协议对云台进行定点控制

开发手上的一个云台,使用的就是PELCO-D协议。这个协议开始网上找了一圈,发现下载完整版的协议大多是还都要收费,后面在官方下载了一份原版完整版协议的协议内容,配合网上搜索到的资料完成对手上这块云台的配置。 虽然原版的协议支持很多功能,包括摄像头的一些控制,这当然与具体的产品有关,手上的这款只是对云台的控制,包括复位,预置设置,调用和删除等一些基础的功能。由于最终是要结合手上的串口摄像机,完成定时定点进行拍照的功能,所以这里先写云台的功能函数,下面写摄像头模块时再一起结合。先来简单了解一下协议本身。P

2021-10-08 14:14:16 5952 9

原创 模块学习1:通过移位等操作完成各个进制之间的转换代码,crc16校验、奇偶校验、checksum校验和校验(后面用到其他的再补充)

单片机编程的的时候经常会遇到各种进制转换,尤其是二进制,十进制和十六进制之间的转换。所以结合前辈写的功能函数,自己网上找的参考,以及我的对相关函数进行的修改。当然,转换思路和方法远不止如下方法,可能有更多更实用的方式,这里主要是自己的总结和分享,有更好的方法和思路可以进行讨论。二进制、十进制和十六进制之间的转换/********************************************************************名称:unsigned long HextoDec(co

2021-09-29 18:16:09 780

原创 2.0 正式开始整理一下工训赛(全国大学生工程实践和创新能力大赛),智能垃圾桶的制作流程和参赛历程

一点小说明(遗憾+致歉)首先,十分遗憾,由于第一年参赛,尤其是这个赛项,我们当时做的时候网上也完全找不到参考资料,所以最开始一抹黑,硬着头皮从头开始做。最后初赛全省第一、决赛全省第二、国赛选拔赛全省第三,赛制挺迷的,省奖只看决赛成绩,进国赛又只看选拔赛成绩。而整个比赛要求最高最难的反而是初赛的要求。捶胸顿足,遗憾至极。同时由于我们比赛比较早,不知道当时是否能进入决赛,所以我们去年比完就开始了国赛的准备,更新了控制板,更新了识别算法,更新了垃圾分类当时,引入了机械臂,加入了云台,如果省赛这配置,国赛稳稳的,

2021-09-16 01:14:43 9847 29

原创 第五天:了解越疆dobot机械臂,使用python,编写通过ros服务控制机械臂运动程序

一、了解越疆dobot机械臂详细信息可以查看用户手册和API开发手册,以及其它官方提供资料,这里我只列出我在开发过程中遇到的问题,以及需要了解的知识点。(1)坐标系我们可以看到这里涉及的坐标系主要是两种,一种是关节坐标系,一直是笛卡尔坐标系。我们可以通过命令获取到这两组坐标系的值,后面详细说明。#这里是手册里面针对两种坐标系 关节坐标系:以各运动关节为参照确定的坐标系。  若Dobot Magician未安装末端套件,则包含三个关节:J1、J2、J3,且均为旋转关节,逆时针为正。  若

2021-09-07 22:28:00 15506 30

原创 第一天 复旦微FM33G048简单入门学习

1. 复旦微FM33G048基本参数内容参数宽电压范围1.8~5.5V处理器内核ARM Cortex-M0+;最高40MHz主频;SWD调试接口;支持用户/特权模式;支持中断向量表重定向(VTOR)低功耗技术平台典型运行功耗180uA/MHz存储器256KB Flash空间; 24KB RAM空间引脚最大支持73个GPIO,最多24个外部引脚中断,最多8个异步唤醒引脚外设11-bit低功耗∑-△ADC,最大支持9个外部通道 ;UART6 ;78

2021-08-25 11:36:37 2008

原创 第四天:在ubuntu16.04中安装pycharm(同时配置好ros环境),重新修改usb摄像头串口映射,通过命令控制机械臂

在ubuntu16.04中安装pycharm机械臂USB绑定USB串口#运行这个launch文件启动机械臂的时候,出现一个报错,读报错信息可以看到是串口的问题,roslaunch dobot DobotServer.launch#输入这个质量可以查看ttyUSB的识别映射信息#可以看到ttyUSB2没有进行串口映射,当然通过插拔可以得知这个口确实是机械臂的USBls -l /dev |grep ttyUSB#由于这个系统说的出厂进行了映射,说明映射失效了,我们进去看一下上面原因cd

2021-08-12 04:33:30 1246 1

原创 第三天:通过ssh连接到小车,尝试建图,配置PaddleOCR环境(花费时间最长,踩坑记录,python2.7安装paddle解决相关报错)

这个搁置了几天,今天开始正式调车。之前看那些文档资料以为只是使用rosstudio进行开发呢,结果理解错误,那个也就真的只像是前面写的用来玩玩而已,后面还是通过一些列命令行进行调试写代码。后面的博文还是会一直写的,如果涉及到一些代码可能先不会贴出来,毕竟是备赛,等后续比赛结束我会贴出来大家一起分享,开整。连接eaibot小车设置中继路由器(1)电脑连上了小车的WIFI,就不能进行上网了,这就十分影响后续开发了。不过小车内置了路由器,通过资料显示是使用了(hi-link路由模块),可以通过这个路由器,

2021-07-20 15:19:10 2742 9

原创 第二天:Ubuntu16.04双屏设置,RosStudio简单的使用

Ubuntu16.04双屏设置前两天装系统的时候一直只用的笔记本,今天接上了扩展显示器,发现没反应。首先我尝试了设置——>屏幕,发现无法检测到另外一块屏幕。我想应该是驱动的问题,查了一下用xrandr命令查了一下只有我的主屏幕。开始百度搜索解决办法,下面贴出最直接的办法。驱动更新(1)首先更新一下驱动(网上有人说更新驱动会有问题,但是我没出现,其次也不用想有的博文写的修改其它什么配置文件,因为这根本也找不到那个文件。好,往下走。)sudo add-apt-repository ppa:gra

2021-07-11 21:37:09 1532 1

原创 第一天:安装Ubuntu16.04双系统,ROS环境配置,移动抓取和自动驾驶环境配置,RosStdio的安装

写在前面:这几天开始准备计算机设计大赛国赛,所以开始重头开始弄这个机器人。初赛主要是在虚拟机上操作,一切都还顺利。不过决赛需要连接实物,首先是需要通过WIFI连接到小车。不过虚拟机里面遇到的问题是搜索不到WIFI,我一直以为是有什么问题,试了许多方法,下载驱动呀,更新内核呀,都是不行。后面查了一些资料,想了想应该是虚拟机本身就无法单独使用WIFI,还是通过物理机进行联网的。这次仔细看了NAT模式和桥接模式,算有了更深的认识,昨天花了那么多时间搞,也主要是记得之前在虚拟机使用拨号连接校园网,主机的网会断开,

2021-07-09 22:41:11 1770 4

原创 数据挖掘概念与技术复习

选择题下面不属于数据挖掘迭代序列的是( C )A、数据清理 B、数据集成 C、数据删除 D、数据变换属性(attribute)是一个数据字段,表示数据对象的一个特征。下面不属于典型的属性分类的是( D )A、标称属性(nominal) B、二元属性(binary) C、序数属性(ordinal) D、单值属性(Single-Valued)注释:类型: 标称属性(nominal)二元属性(binary)序数属性(ordinal)数值属性(numeric)区间标度属性(i

2021-06-25 22:39:59 4802 5

原创 嵌入式系统开发(STM32)复习笔记

模拟习题为主。考60分简答题,40分编程加程序设计题。以下习题答案为自己做的,并非参考答案,如有错误,还请指正!简答题CM3内核寄存器包含R0-R15,这些寄存器的字长是多少?说明各个寄存器的用途答:R0-R7是低组寄存器,所有指令都能访问;R8-R12是高组寄存器,16位指令不能访问,32位指令不受限制;R0-R12字长全为32位;R13是堆栈指针;R14是链接寄存器;R15是程序计数器什么是嵌入式系统?嵌入式系统一般由哪几部分构成?答:(1)是一种嵌入受控器件内部,为特定应

2021-06-25 21:55:32 7533 14

计算机论文查重和降重相关资料,以及一些查重和降重阮软件

计算机论文查重和降重相关资料,以及一些查重和降重阮软件。 了解知网查重原理,一些比较常用的降重方法。

2023-03-31

基于人脸表情识别的桌面交互精灵设计(YOLOV5)

详细信息见博文:https://blog.csdn.net/GUA8122HOU/article/details/126168609 人脸表情的数据集和自己训练出来yolov5模型以及基于PYQT5运行yolov5的交互界面 包括源代码和模型,数据集见博文网盘自取。

2023-03-17

DHCP和pppoe报文格式

博文中插入表格有点麻烦,所以在word总结好以后直接截的图。有需要可以下载。对应的博文在网络相关——>DHCP和PPPoE协议以及抓包分析。

2022-07-26

MQTT中英文协议和协议注释.zip

包含MQTT V3.1.1原版文档、中文文档和中文注释文档,可以配合我的博文一同学习。

2021-10-25

PTC052-200 摄像头资料包.rar

PTC052-200 摄像头资料包,包括产品规格书、通讯协议文档和测试工具,配合相应博文一同使用

2021-10-25

PELCO.zip(模块学习二:基于PELCO-D协议对云台进行定点控制配套资源)

具体请看这边博客,包括PELCP-D和PELCO-P的完整版协议,以及一个测试上位机。

2021-10-08

C语言下的冰箱出入库管理系统.txt

c语言下的冰箱出入库管理系统,自己写的程序设计实践实验,能够实现冰箱出入库的增加删除修改查找等功能,添加了管理员登录界面和对文件的操作,实现文件的读取和写入。

2019-07-10

空空如也

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

TA关注的人

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