IO阻塞模型(blocking IO)在linux中,默认情况下所有的socket都是blocking,一个典型的读操作流程大概是这样: 所以,blocking IO的特点就是在IO执行的两个阶段(等待数据和拷贝数据两个阶段)都被block了。from socket import *
server = socket(AF_INET,SOCK_STREAM)
server.b
一、概念1.TCP/IP协议简介 TCP/IP (Transmission Control Protocol / Internet Protocol)传输控制协议/网间协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议,由 IETF 的 RFC 793 定义从字面意义上讲,有人可能会认为 TCP/IP 是指 TCP 和 IP 两种协议。
非阻塞IO与阻塞IOIO就是输入—输出操作系统通常提供了两种调用方式,阻塞调用和非阻塞调用阻塞式调用: 调用结果返回之前,当前线程处于阻塞态(阻塞态CPU不会分配时间片),调用线程只有在得到调用结果之后才会继续执行非阻塞式调用:调用执行之后,当线程不会停止执行,只需要过一段时间来检查一下有没有结果返回即可。非阻塞式调用的问题我们没有获取到结果,因为是异步的我们为了得到完整的数据,需要频繁的去确定度
引言: 客户端connect接口, 代表着三次握手, 默认为阻塞模式, 在握手期间, 客户端程序只能处于等待状态, 不能处理其他的业务, 其次,如果握手失败, 还会等connect计时器时间, 大约是在75s左右。一、阻塞connect存在的几大问题。1、阻塞期间不能处理其他业务。 2、如果连接失败, 等待的时间过长。二、实现非阻塞connect的方法1、将创建sockfd设置为阻塞模式int o
使用技术:1 epoll事件驱动机制:使用epoll作为IO多路复用的技术,以高效地管理多个socket上的事件。2 边缘触发(Edge Triggered, ET)模式:epoll事件以边缘触发模式运行,这要求代码必须负责消费所有可用的数据,直到收到EAGAIN或EWOULDBLOCK错误。3 非阻塞IO:通过设置socket为非阻塞模式,确保IO操作不会导致服务器
使用git源码安装arduino+esp32开发环境使用git源码安装arduino+esp32开发环境第一步,创建文件夹第二步,克隆esp32包第三步,安装工具包方法1:用get.exe安装工具包通过esp包下面的tools里的get.exe安装工具包第三步,安装工具包方法2:直接下载 使用git源码安装arduino+esp32开发环境一般教程里的方法安装很慢,一出现网络问题,就会错误所以这
转载
2024-08-11 10:10:25
307阅读
文章目录一、分区表简介1、什么是分区表2、ESP32 内置分区表3、分区表的格式(1) 注释(2) Name —— 分区名(3) Type —— 主类型(4) SubType —— 子类型(5) Offset & Size —— 偏移地址 & 分区大小(6) Flag —— 标记二、通过分区表设置分区1、使用内置分区表2、自定义分区表 一、分区表简介1、什么是分区表分区表是 ES
转载
2024-04-25 10:13:45
277阅读
WiFiWi-Fi 库支持配置及监控 ESP32 Wi-Fi 连网功能。WiFi工作模式基站模式(即 STA 模式或 Wi-Fi 客户端模式),此时 ESP32 连接到接入点 (AP)。AP 模式(即 Soft-AP 模式或接入点模式),此时基站连接到 ESP32。AP-STA 共存模式(ESP32 既是接入点,同时又作为基站连接到另外一个接入点)。上述模式的各种安全模式(WPA、WPA2 及 W
转载
2024-07-28 14:38:46
127阅读
简介HardwareSerial 库是c++编写的,应用于esp32 Arduino应用环境的串口驱动库,我们在安装好ESP32的Arduino开发环境后就已经集成了这个串口操作库,在实际应用时直接引用就可以了。注意:ESP32共有3个UART端口, 其中UART1用于Flash读/写,我们使用串口1时需要注意,需要将串口1映射到其他GPIO上即可,我测试了一下GPIO12、GPIO13,使用串口
转载
2024-03-23 10:33:14
696阅读
ESP32的Ethernet通讯Arduino的Ethernet库Ethernet库库函数介绍总结 Arduino的Ethernet库Arduino很早就支持Ethernet通讯。硬件主要是支持W5100,W5200和W5500以太网通讯模块通过SPI接口与ESP32通讯。在Arduino 1.8.19版本以前,Arduino不支持库的引用位置。比如,在例子中说调用Ethernet.h,但如果想
转载
2024-05-16 08:14:03
335阅读
最近在做一个基于ESP32-PICO-D4的墨水瓶小终端/挂件?的小项目,硬件测试部分耗了我一个下午加晚上,随便总结一下。最终点灯成功 电路设计放在立创开源那边了:ESP32_INK 墨水屏终端or挂件 - 嘉立创EDA开源硬件平台 (oshwhub.com)记录一些问题/想法:1.电路设计时因为嫌16p的typec焊接容易出事,就用了一个microusb和一个6p的typec(仅供电)
转载
2024-05-06 16:13:31
3856阅读
文章目录前言资料参考1 ESP-Moonlight 项目及硬件了解2 ESP-IDF 软件开发基础3 基础组建测试试用4 端云配合 前言小能手在时隔4年后,再次玩起了乐鑫芯片,这次是带语音识别功能的ESP32。目前基于 ESP-Moonlight 开发板记录一系列笔记。月球灯课程将带领爱好者一步步探索利用乐鑫物联⽹开发框架 ESP-IDF 和 ESP32 芯片构建智能终端产品的全过程,最终实现月
转载
2024-05-23 23:48:25
162阅读
智慧家居·万物互联:我的智能花盆DIY之旅0 写在前面1 架构怎么搭?1.1 系统层次1.2 MQTT是什么?1.3 项目流程2 云平台怎么用?2.1 创建设备2.2 设备开发2.3 设备管理3 软件怎么设计?3.1 依赖库配置3.2 引脚定义与连接3.3 WIFI配置3.4 MQTT配置3.5 连接云平台3.6 执行设备4 更进一步 0 写在前面?物联网(Internet of things,
转载
2024-08-06 12:33:03
222阅读
经过前两个帖子的折腾,基本的开发环境已经搭建完毕!我们现在终于可以快乐的写代码、调传感器了!!因为小弟使用的是官方乐鑫原厂的SDK,我在官网也只能找到带freertos的SDK包,因此下面就基于这个原厂SDK来给大家分享一下esp32运行多任务的过程(LED闪烁+串口打印)首先我们把 esp/esp-idf/examples 里面的L
转载
2024-05-12 20:07:07
271阅读
ESP32第一章esp32简介ESP32模块及开发板ESP-IDF ESP32模块及开发板ESP32是乐鑫信息科技(以下简称乐鑫)推出的一块WIFI芯片。ESP32 集成了天线开关、射频 balun、功率放大器、低噪放大器、过滤器和电源管理模块,整个解决方案占用了最少的印刷电路板面积。2.4 GHz Wi-Fi 加蓝牙双模芯片采用 TSMC 低功耗 40nm 技术,功耗性能和射频性能最佳,安全可
转载
2024-02-06 21:29:41
90阅读
NodeMCU-32S简介NodeMCU-32S引脚功能板上资源总结功能特点
NodeMCU-32SNodeMCU-32S是基于 ESP32-32S 模组设计的一款较为经典的ESP32开发板,个人认为较为适合初学ESP32使用,后面学习ESP32的使用时候我们也将使用这块板子。该开发板的设计引出大部分I/O口至两侧的排针,极大的方便了开发者的连接与调试,开发时完全可以根据自己的需求去连
转载
2024-05-23 09:40:53
306阅读
mit your program proposal for the GLAM Wiki Conference [Help with t
原创
2023-07-11 21:53:07
542阅读
文章目录1.OpenOCD 调试硬件准备vscode操作2.system view调试工具下载工作原理调试操作步骤问题分析 1.OpenOCD 调试硬件准备搭建完IDF框架后,OpenOCD已经下载,ESP32S3通过JTAG接口连接使用OpenOCD进行调试。ESP32-S3 内置 JTAG 电路,无需额外芯片即可调试。只需要引出D+/D-连接到电脑usb。 如果出现JTAG报错LIBUSB_
转载
2024-08-12 08:40:06
167阅读
一、GD32系列MCU 由于最近几年的贸易战,科技战,导致MCU价格高到离谱,所以选择国产MCU便成为一种趋势。国内该行业的大厂推出的MCU基本都能满足产品开发需求,性能完全不输STM32。尤其是在航天、电力、军工等关系国计民生的核心产业急需要进行国产化替代以防万一。 &nbs
转载
2024-07-23 12:47:51
57阅读
前言之前我将爱智官方的代码移植到了 arduino 上,详细可见arduino 天下第一(暴论) -- 智能猫眼与 SDDC 连接器移植到 arduino 上
在这过程中我踩了一些坑,在这里和大家分享一下。arduino 操作接口arduino 官方提供demo已经封装很好了,只用调用一个函数就能完成拍摄上传等一系列操作,但是如果这个接口不符合我们的需求,就只能自己同时改改了。通过下面的连接可以看
转载
2023-09-11 16:51:20
236阅读