草庐IT

esp32 cam不使用官方示例完成视频内网穿透

刚才给大家讲解了esp32cam使用arduinoide官方示例内网穿透的方法,因目前免费的内网穿透软件无法完成公网ip的两个端口映射,因此作者去学习了另一个不使用官方示例也可以内网穿穿透的方法。在此先介绍b站王铭东老师,我是在这位老师的基础上学习的,还有csdn上的这位老师,我仅学习借鉴代码思路部分,这两位老师都很厉害,大家可以看看相关博客和视频。接下来便给大家讲解thonny实现内网穿透,目前有两种方法,第一种,使用thonny在esp32cam上烧录代码通过socket通信udp协议,将视频流传输到pycharm上接收,使用flask框架做web,再使用cpolar或花生壳完成内网穿透。

详解IP安全:IPSec协议簇 | AH协议 | ESP协议 | IKE协议_ipsec esp

目录IP安全概述IPSec协议簇IPSec的实现方式AH(AuthenticationHeader,认证头)ESP(EncapsulatingSecurityPayload,封装安全载荷)IKE(InternetKeyExchange,因特网密钥交换)IKE的两个阶段IP安全概述大型网络系统内运行多种网络协议(TCP/IP、IPX/SPX和NETBEUA等),这些网络协议并非为安全通信设计。而其IP协议维系着整个TCP/IP协议的体系结构,除了数据链路层外,TCP/IP的所有协议的数据都是以IP数据报的形式传输的。TCP/IP协议族有两种IP版本:版本4(IPv4)和版本6(IPv6),IPv

【C++练级之路】【Lv.12】继承(你真的了解菱形虚拟继承吗?)

快乐的流畅:个人主页个人专栏:《C语言》《数据结构世界》《进击的C++》远方有一堆篝火,在为久候之人燃烧!文章目录一、继承的概念及定义1.1继承的概念1.2继承的定义1.3继承方式和访问限定符1.4继承基类成员访问方式的变化二、基类和派生类对象赋值转换三、继承中的作用域四、派生类的默认成员函数4.1构造函数4.2拷贝构造函数4.3赋值重载函数4.4析构函数五、继承与友元六、继承与静态成员七、菱形继承及虚拟继承7.1菱形继承7.2虚拟继承7.2.1解决方法7.2.2原理八、继承的总结与反思一、继承的概念及定义1.1继承的概念继承(inheritance),是面向对象的三大特性之一。它是面向对象编

学习阶段单片机买esp32还是stm32?

最近看到一个问题,原话如下:如果为后面找工作的做铺垫的话,闭眼冲STM32,更通用。ESP32适合工作用到了WiFi和蓝牙功能需求时,再针对性学习。从行业应用来说,STM32更加广泛,不管是工业控制,汽车电子,还是消费电子。如果项目需要用到WiFi+蓝牙功能,那用ESP32会很合适。如果对于找工作来说,其实掌握哪种单片机都无所谓,最主要的是你做过哪些具体的行业应用(项目),这才是核心竞争力。如果学STM32的话,我建议直接通过项目学,效率高一点。就像开车一样,不一定非要把车所有功能都摸透,才能把车开走,知道挂挡、踩油门、踩刹车、控方向都够了。随着不同的路段,不同的需求,再针对性去学习别的功能,

基于ESP32+Platformio的物联网RTOS_SDK-CC_Device

本项目基于ESP32以及Platformio平台开发,请自行查阅如何配置这个环境开源gitee地址:cc_smart_device如果愿意贡献项目or提出疑问和修改的,请在gitee上提issue项目里的mqtt服务器是公共的请大家最好换成私有的否则容易收到其他用户的错误数据文章目录1基本介绍2基本架构3中间件3.1RTOS部分3.1.1互斥锁3.1.2信号量3.1.3消息队列3.1.4软件定时器3.1.5线程3.1.5.1自动初始化机制3.1.6内存分配与回收3.1.7条件变量3.1.8内存池3.2日志接口3.3Shell命令行3.3.1简单介绍3.3.2常用命令介绍3.4Msg消息层3.4

LM2596/LM2596S多路降压稳压DC-DC开关电源芯片详解(第二部分:电路设计)(12V转5V、12V转3.3V、任意电压转任意电压)

目录一、固定电压(3.3/5/12V)模块设计实例1.设计条件:VOUT=5V,VIN(MAX)=12V,ILOAD(MAX)=3A2.设计步骤:(1)电感的选择(L1)(2)输出电容的选择(COUT)(3)吸纳二极管的选择(D1)(4)输入电容的选择(CIN)(5)100nf电容(C1、C2)二、可调电压(ADJ)模块设计实例1.设计条件:VOUT=20V,VIN(max)=28V,ILOAD(max)=3A,F=开关频率(为固定值150KHz)2.设计步骤:(1)输出电压值的计算(2)电感的选择(L1)(3)输出电容的选择(COUT)(4)前馈电容(CFF)(5)吸纳二极管的选择(D1)(

解决日常问题的12个Python Pro Snippets

在今天的内容中,我将分享12个PythonProSnippet代码,让你感觉自己是一名专业开发人员。这篇文章是你的Python工具箱,你可以在其中复制粘贴代码到你的项目中,所以收藏好它,并开始使用Python吧。1.多参数功能使Python成为顶级编程语言的一件事是它为程序员提供了自由,你可以在函数调用中传递无限的参数,而无需在函数参数中声明它们,看看下面的代码示例。# Multi Arg Functiondef test(*arg):    print(arg) # (1, 3, 60, 23, 435)test(1, 3, 60, 23, 435)2.MultipleInput你可以获取多

Ubuntu环境中Stable Diffusion的roop插件安装(8.12更新)

roop插件是一款换脸神器,可以在StableDiffusion中实现一键换脸,现在已经有了基于automatic1111的web-ui开源项目上的插件。windows版本上的安装教程已经很多了,这边就不说了。下面是ubuntu中的安装过程。1.roop的核心组件是insightface,但insightface只提供源码,没有wheel的安装包,所以需要先有编译环境支持:   sudoaptinstallbuild-essential2.安装扩展   启动webui后,打开界面,在扩展里安装roop插件,这边就不详述了。3.关闭webui后,重新启动,如果你运气好的话,会自动安装所有需要的部

12、全文检索 -- Elasticsearch -- 为 Elasticsearch 安装并测试 IK 中文分词器(用指定分词器创建 index 索引库,并通过命令和postman工具测试分词器)

目录为Elasticsearch安装并测试IK分词器安装IK中文分词器命令安装分词器插件(失败)github下载分词器(成功)1、官网下载2、解压到..\plugins\ik文件夹里面3、重启elasticsearch失败4、删除压缩包,重启成功用指定分词器创建Index(索引库)指定分词器创建索引库模板官方文档介绍通过postman来指定分词器创建Index索引库查看所有索引库查看指定索引库创建默认索引库对比测试IK中文分词器命令测试postman测试为Elasticsearch安装并测试IK分词器安装IK中文分词器命令安装分词器插件(失败)Elasticsearch提供了插件机制,该机制可

运维系列(亲测有效):Debian12安装保姆级教程

Debian12安装保姆级教程准备安装接入刻录好Debian系统的U盘到计算机后,通过快速启动选择U盘启动进入到系统安装界面,选择Graphicalinstall选择系统使用语言:English选择地区:HongKong选择键盘模式:AmericanEnglish系统加载和扫描中为计算机命名:可自定义为计算机设置域名:可不填写为计算机超级管理员root设置密码:为计算机设置一个普通用户,设定用户全名为计算机设置普通用户的账户为计算机普通用户账户设置密码等待设定磁盘磁盘分区方式选择本文使用:Guided-useentirediskandsetupLVM选择磁盘选择磁盘空间分区划分本文单独设置ho