自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (4)
  • 收藏
  • 关注

原创 leecode-12整数转化为罗马数字C版

题目描述:https://leetcode-cn.com/problems/integer-to-roman/代码:解题思路:输入一个整数,整数分别与特殊节点的数(romavalue)来比较大小,将对应的罗马数字加入res中,减去节点值,继续比较。#include <stdio.h>#include <stdlib.h>#include <string.h>char * intToRoman(int num){ const int romavalue

2021-10-05 16:54:56 236

原创 leecode-8字符串转化为整数C版

1.字符串转换整数 (atoi)请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:1.读入字符串并丢弃无用的前导空格2.检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。3.读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步

2021-09-30 21:49:46 230

原创 leecode-11盛最多水的容器C版-双指针的使用

1. 盛最多水的容器描述:给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组[1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。输入:hei

2021-09-30 17:27:26 224

原创 leecode-3无重复字符串的最长子字符串C版-滑动窗口

要求:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1: 输入:s = “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3示例 2: 输入:s = “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。解法利用滑动窗口。模式说明:输入一个数组或者字符串。求解的结果是觉有某种特征的子数组或者子字符串。这种情况下就可以利用滑动窗口求解。滑动窗口思想如下滑

2021-09-30 15:09:35 161

原创 数据结构-二叉树、搜索树、平衡二叉树详解及C语言实现

1、 树概念及结构1.1、树的概念树是一种数据结构,它是由n(n≥1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点外,每个子节点可以分为多个不相交的子树。1.2、树的定义树(Tree) :n (n>=0) 个结点构成的有限集合。当n=0时,称为空树;对于任一棵非空树(n>0),它具备以下性质:树

2021-08-19 21:20:19 509

原创 STM32F103红外遥控

1 、 红外遥控简介红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低,易实现等显著优点,被诸多电子设备特别是家用电器广泛采用,并越来越多的应用到计算机系统中。由于红外线遥控不具有像无线电遥控那样穿过障碍物去控制被控对象的能力,所以,在设计红外线遥控器时,不必要像无线电遥控器那样,每套(发射器和接收器)要有不同的遥控频率或编码(否则,就会隔墙控制或干扰邻居的家用电器),所以同类产品的红外线遥控器,可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况。这对于大

2021-08-13 22:55:12 3919 3

原创 C语言 链式栈和顺序栈的实现

1、简介:栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。术语解释:栈顶(Top) :允许数据插入和删除的端,即栈的顶端。栈底(Bottom):固定并且不允许进行插入和删除操作的一端,即栈底。栈空:即不含有任何元素的栈。进栈、入

2021-08-12 18:06:37 955 1

原创 C语言 几种排序方法(冒泡、选择、插入、归并、快速)

1.冒泡排序它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。执行过程:# include <s

2021-08-11 18:11:11 9435 18

原创 通过AT指令控制ESP8266

简介用到的软件:网络调试助手串口调试助手硬件:esp8266 usb转TTLESP8266 模块用到的指令1.串口无线 WIFI(COM-WIFI AP)串口无线 WIFI(COM-WIFI AP)模式,模块作为无线 WIFI 热点,允许其他 WIFI 设备连接到本模块。1.1串口无线 WIFI AP 模式,TCP 服务器配置发送指令作用AT+CWMODE=2设置模块 WIFI 模式为 AP 模式AT+RST重启生效AT+CWSAP=”SSID”,”

2021-07-27 19:43:48 6938

原创 STM32F103_SPI读写外部FLASH

目录1、SPI简介1. SPI协议简介2.SPI物理层的特点2.1.SPI 的内部简明图2.2.物理层3.SPI的协议层3.1.SPI基本通讯过程3.2. 通讯的起始和停止信号3.3.数据有效性3.4.CPOL/CPHA及通讯模式4.STM32 的 SPI 特性及架构4.1.通讯引脚:4.2. 时钟控制逻辑(波特率发生器)4.3.数据控制逻辑4.4.整体控制逻辑4.5.通讯过程5.SPI 初始化结构体详解6.SPI-读写串行FLASH6.1.[FLASH简介](https://editor.csdn.net

2021-07-21 21:55:56 4326 1

原创 FLASH芯片(W25Q128)

简介W25Q128FV (128M-bit)串行闪存为有限的空间、引脚和电源系统提供了存储解决方案。25Q系列提供的灵活性和性能远远超过普通的串行Flash设备。执行代码直接从双/四 SPI (XIP)和存储声音,文本和数据。该设备在2.7V到3.6V的电压上运行,电流消耗低至4mA活跃和1 A断电。所有设备都以节省空间的包装提供。W25Q128FV阵列被组织成65,536个可编程页,每个页256字节。一次最多可编程256字节。可按16组(4KB扇区擦除)、128组(32KB块擦除)、256组(64KB块

2021-07-21 18:11:32 17930 1

原创 IIC软件模拟-读写EEPROM

1.IIC简介IIC和EEPROM详解IIC(Inter-Integrated Circuit)总线是一种由 PHILIPS 公司开发的两线式串行总线,用于连接微控制器及其外围设备。它是由数据线 SDA 和时钟 SCL 构成的串行总线,可发送和接收数据。在 CPU 与被控 IC 之间、IC 与 IC 之间进行双向传送,高速 IIC 总线一般可达 400kbps 以上。I2C 总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答信号。开始信号:SCL 为高电平时,SDA 由高电

2021-07-20 19:37:12 3057

原创 STM32F103_ADC-DMA通道采集

DMA简介ADC简介单通道采集简介:ADC采集数据通过DMA通道发送到内存.c文件#include "adc.h"uint16_t ADC_ConvertedValue; //ADC通道1或通道3数据16位void GPIO_Config(void){ RCC_APB2PeriphClockCmd(ADC_GPIO_RCC, ENABLE); GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Pin = AD

2021-07-17 20:23:20 930

原创 STM32F103_I2C硬件模拟

I2C简介I2C 通讯协议(Inter-Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。I2C物理层的特点1.它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在一个I2C通讯总线中,可连接多个I2C通讯设备,支持多个通讯主机及多个通讯从机。2.一个I2C总线只使用两条总线线路,一条双向串行数据线(SDA) , 一条串行时钟线

2021-07-16 14:42:39 3055 9

原创 STM32F103_DMA控制器

1.简介直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。两个DMA控制器有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。2.DMA的特性12个独立的可配置的通道(请求):DMA1有7个通道,DMA2有5个通道每个通道都直接连接专用的硬件DMA请求,每个通道都同样支持

2021-07-14 21:23:17 1561 6

原创 STM32_ADC初始化参数说明以及常用的固件库

typedef struct{u32 ADC_Mode;FunctionalState ADC_ScanConvMode;FunctionalState ADC_ContinuousConvMode;u32 ADC_ExternalTrigConv;u32 ADC_DataAlign;u8 ADC_NbrOfChannel;} ADC_InitTypeDefADC_Mode 工作模式定义单独使用ADC1或者ADC2或者ADC3时ADC_Mode_Independent ADC1 .

2021-07-13 00:41:52 2281

原创 STM32F103_ADC电压采集

ADC寄存器1 、STM32 ADC 简介STM32 的 ADC 是 12 位逐次逼近型的模拟数字转换器。 它有 18 个通道,可测量 16 个外部和 2 个内部信号源。各通道的A/D 转换可以单次、连续、扫描或间断模式执行。ADC 的结果可以左对齐或右对齐方式存储在 16 位数据寄存器中。模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。STM32F103 系列最少都拥有 2 个 ADC,我们选择的 STM32F103ZET 包含有 3 个 ADC。STM32 的 ADC

2021-07-12 18:13:51 21632 2

原创 STM32F103_DDWG窗口看门狗

简介:独立看门狗限制喂狗时间在0-x内,x由相关寄存器决定。喂狗时间不能过晚。而窗口看门狗喂狗时间有个上下限的范围(称为窗口),课以通过设定相关的寄存器,设定其上限时间(下限固定)。喂狗时间不能过晚也不能过早。1.WWDG主要特性● 可编程的自由运行递减计数器 ● 条件复位 ─ 当递减计数器的值小于0x40,(若看门狗被启动)则产生复位。 ─当递减计数器在窗口外被重新装载,(若看门狗被启动)则产生复位。● 如果启动了看门狗并且允许中断,当递减计数器等于0x40时产生早期唤醒中断(EWI),它可

2021-07-09 21:03:23 305 1

原创 STM32F103_IWDG独立看门狗

1.STM32 独立看门狗简介STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然 有效。这里需要注意独立看门狗的时钟是一个内部RC 时钟,所以并不是准确的 40Khz,而是 在 30~60Khz 之间的一个可变化的时钟,只是我们在估算的时候,以 40Khz的频率来计算,看 门狗对时间的要求不是很精确,所以,时钟有些偏差,都是可以接受的。首先我们得讲解一下看门狗的原理。这个百度百科里面有很详细的解释。我们总结一下:单片机系统在外界的干扰下会出现程序跑飞的现象

2021-07-09 14:42:55 499

原创 STM32F103_EXTI外部中断

1.外部中断简介这里我们首先 STM32 IO 口中断的一些基础概念。STM32 的每个 IO 都可以作为外部中断的中断输入口,这点也是 STM32 的强大之处。STM32F103 的中断控制器支持 19 个外部中断/事件请求。每个中断设有状态位,每个中断/事件都有独立的触发和屏蔽设置。STM32F103 的19 个外部中断为:线 0~15:对应外部 IO 口的输入中断。线 16:连接到 PVD 输出。线 17:连接到 RTC 闹钟事件。线 18:连接到 USB 唤醒事件。STM32 供

2021-07-09 11:41:13 1815

原创 STM32F103_步进电机

1、步进电机电路图2、管脚作用用于控制转向的控制管脚。顾名思义,控制转向就是控制电机的正转和反转。电机正反转,再通过传动轨道,就可以实现窗帘的开启和关闭。用于控制转速的管脚。该管脚是用于控制电机的转速。通过MCU输出一个PWM来调节电机的转速,如果要窗帘的开合要做到流畅的话,最好的办法是,电机要慢慢启动转动,然后匀速,然后当窗帘即将闭合时,电机速度慢慢降低,然后到速度变为0,使得开关窗帘更加优雅。用于测速的输入管脚:主要用于检测电机转了多少圈。窗帘如果要实现自定义“停位点”,则必须知道当前电机

2021-06-27 11:50:01 1891 1

原创 STM32F103_RGB彩灯

1

2021-06-27 10:48:25 4988

原创 STM32通用定时器输出PWM

1 、TIMx简介通用定时器是一个通过可编程预分频器驱动的16位自动装载计数器构成。它适用于多种场合,包括测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和 PWM)。使用定时器预分频器和RCC时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个 毫秒间调整。2 、TIMx主要功能通用TIMx (TIM2、TIM3、TIM4和TIM5)定时器功能包括: ● 16位向上、向下、向上/向下自动装载计数器 ●16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~6

2021-06-23 22:45:51 830

原创 STM32F103 TIM4定时器

1、通用定时器(TIM)通用定时器是一个通过可编程预分频器驱动的16位自动装载计数器构成。它适用于多种场合,包括测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和PWM)。使用定时器预分频器和RCC时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。每个定时器都是完全独立的,没有互相共享任何资源。通用定时器框图2、配置流程1 、开定时器4的时钟2、 定时器4初始化3 、打开更新中断(NVIC开关和定时器外设的中断源开关)4、定时器45、编写中断服务函数

2021-06-23 21:22:56 4583

原创 STM32F103系统滴答计时器

1. SysTick概述SysTick即为系统定时器,又称嘀嗒定时器,是Cortex-M3内核的一个外设,集成在NVIC中。Systick定时器是一个24位的倒计数定时器,从预装值(自己设置的)一直计数到0时,然后再将从重装载寄存器中自动重装载定时初值。只要不把它使能位清除,那么它就永远不停,即使在芯片在睡眠模式下也能工作。每计数一次的时间为1/SYSCLK分别是内部时钟(FCLK 自由运行时钟,等于系统总线时钟HCLK72MHZ)和外部时钟(STCLK Cortex系统定时器时钟,等于系统总线时钟HCL

2021-06-22 22:09:14 1868 3

原创 STM32F103串口收发

常用的通信协议:串口:标准串口 异步串行全双工 通信速度由波特率决定IIC : 同步串行半双工 3.4MHZSPI: 同步串行全双工 20MHZ同步通信:通信设备之间共用同一条时钟线,通信双方通信速度由时钟线决定。异步通信:通信双方不共用同一条时钟线,双方通信速度由自己决定(通信需要双方的通信速度保持一致)串行通信:通信双方只有一条数据线并行通信:通信双方可以有多条数据线,通信速度更快,但是数据线越多,占用硬件资源越多,成本越高。全双工通信:任意时刻,通信双方可以发送与接收数据。双线单

2021-06-22 21:14:21 2026

原创 STM32F103--DHT11的配置

1.开GPIOB时钟和AFIO时钟2.释放PB3(禁止JTAG启用SW)3.PB3配置为开漏输出4.主机发送开始信号5.等待DHT11响应信号6.跳过测量时间去读取DHT11输出的数据(一次性需要读取40bit数据)7.检验

2021-06-21 22:25:46 2970 1

原创 STM32F4温湿度

目录前言一、项目介绍1.1 项目名称1.2 项目设计思路二、硬件准备2.1 STM32F407ZGT6三、软件准备3.1 Keil53.2 STM32f407固件库3.3 STM32CudeMx3.4 STM32CudeMx的f407软件包四、项目实施4.1 硬件平台开发4.1.1 keil5安装4.1.2 STM32CudeMx安装4.1.3 BSP工程项目创建4.1.4 BSP工程项目开发4.2 硬件平台接线五、项目总结前言一、项目介绍本项目作为入门STM32

2021-06-15 10:36:53 335

转载 Mind+上传模式的第三方Arduino用户库实现 -DHT11温湿度模块

Mind+上传模式的第三方Arduino用户库实现——DHT11模块读取温湿度前言Mind+是一款拥有自主知识产权的国产青少年编程软件,支持Arduino、micro:bit、掌控板等各种开源硬件,兼容Scratch3.0,支持AI与IoT功能,只需要拖动图形化程序块即可完成编程,还可以使用Python/C/C++等高级编程语言,让大家轻松体验创造的乐趣。Mind+支持三大主流开源硬件平台(Arduino,micro:bit,掌控板esp32),均可以使用基于arduinoC的库,因此只需要编写一

2021-05-12 22:24:17 1610

转载 飞桨PaddleHub实现皮影戏

飞桨(PaddlePaddle)是集深度学习核心框架、工具组件和服务平台为一体的技术先进、功能完备的开源深度学习平台,已被中国企业广泛使用,深度契合企业应用需求,拥有活跃的开发者社区生态。提供丰富的官方支持模型集合,我们这里将要使用到其中的骨骼节点检测模型,通过PaddleHub提供的人体骨骼关键点检测预训练模型,我们就可以快速实现皮影戏的效果。这里说一下这个项目的大体实现流程,先将现有的视频按帧剪切为一张张的图片,并保存到本地,使用PaddleHub提供的人体骨骼关键点检测预训练模型来获取每张图片里人物

2021-05-06 21:57:50 207

原创 MQTT进阶:web端远程控制LED灯

前言本篇教程是MQTT的进阶篇,在云服务器搭建好了MQTT服务器后,使用网页连接MQTT服务器,并发布相关的控制信息到服务器指定的Topic,ESP32在本地连接WIFI,订阅相同的Topic,收到控制信息后开启关闭响应的灯光。该项目主要有四个步骤1.控制端网页的编写以及连接MQTT2.硬件实现部分3.实现效果4.资源下载一、网页的编写网页使用Bootstrap进行界面布局,再使用jQuery监测按钮时间,使用Bootstrap编写的网页是响应式网页,可以在不同的客户端自适应,显得较为美观

2021-04-27 23:44:54 1848 1

原创 MQTT基础:本地网页控制LED灯(SIOT+MQTT+掌控板)

前言该项目是在本地搭建一个MQTT服务器,网页连接MQTT客户端,并发布消息到对应topic到MQTT服务器,掌控板连接WiFI,与SIOT处于同一局域网。当网页的topic发布消息(按键交互之类的),掌控板开启关闭掌控板LED的状态。该项目有四个步骤:...

2021-04-27 19:58:12 1156

原创 Mind+实时模式智能问答机器人

效果描述:当按下空格时,提问问题,机器人重复你的问题,并询问重复的是否正确,如果回答正确的话,就会与指令库的指令配对,如果指令库有该指令,就回答与之相对于答案库里面的答案。 如果指令库没有对应的指令,机器人就会询问是否学习该指令,如果回答是,机器人就会询问这个问题的答案,并把相应的指令加入指令库,答案加入答案库。下次问问这个问题时就能回答相应的答案。 如果询问重复的是否正确,回答不正确的话,机器人就会再次让你提问,知道机器人重复你的问题正确。具体流程图主体代码:详细代码...

2021-04-23 11:09:09 1179 2

原创 arduino uno &掌控板实现数据上传到阿里云平台

实验原理:arduino uno采集数据,通过UART接口发送数据到掌控板,掌控板连接阿里云,发送数据到阿里云。硬件:arduino unoMind+软件平台:arduino ideMind+二、代码:arduino端: #include <SoftwareSerial.h> int i;SoftwareSerial softwareSerial1(3, 6);//定义一个软串口 softwareSerial1(rx,tx)void setup(){

2021-04-23 10:17:49 813 1

原创 (esp32+MQTT+云服务器+MySQL)实现物联网温湿度数据采集到云端数据库MySQL

前言之前物联网硬件采集数据一直都是通过阿里云实现数据的可视化,没有将硬件采集到的数据存入云数据库,没有进一步利用数据进行操作。本文一共有五个步骤:1.esp32通过arduino平台和硬件DHT11温湿度模块采集数据2.创建EMQ X Cloud MQTT云服务器或者本地部署EMQ X企业版MQTT服务器(这里展示云与服务器)3.云服务器通过宝塔创建MySQL数据库或本地虚拟机内宝塔MySQL数据库(这里展示云MySQ)4.利用MQTT将硬件采集到的数据送入云服务器MySQL存储5.效果展示

2021-04-20 18:56:25 9433 4

原创 python tcp多个客户端连接服务器

一、传输层**该层为两台主机上的应用程序提供端到端的通信。传输层有两个传输协议:TCP(传输控制协议)和 UDP(用户数据报协议)。其中,TCP是一个可靠的面向连接的协议,udp是不可靠的或者说无连接的协议。二、TCP的特点:TCP是面向运输层的协议。使用TCP协议之前,必须先建立TCP连接,在传输完成后,必须释放已经建立的TCP连接。每条TCP连接只能有两个端,每一条TCP连接只能是点对点的。TCP提供可靠的交付的服务。通过TCP连接传输的数据,无差错、不丢失、不重复,并且按序到达。TCP提供

2021-04-17 17:09:23 2755 1

原创 python制作一个简单的udp聊天器

UDP协议英文名:User Datagram Protocol中文名:数据报协议协议说明:UDP是一种面向无连接的传输层通信协议。举例:发短信,不需要双方建立连接,数据报的大小应限制在64k以内特点:效率高,数据传输不安全,容易丢包import socket #引入套接字模块import threading #引入多线程模块import time #引入定时模块flag = 1 #定义个全局变量def receive(): #接收端 global flag

2021-04-14 20:04:38 188 1

原创 计算机网络|UDP用户数据报服务

用户数据报UDPUDP概述:用户是运输层的协议,UPD的主要特点是:1.UPD是无连接的:即发送数据前不需要建立连接,因此减少了开销和发送数据之前的时延。2.UDP是尽最大努力交付的,即不保证交付,因此主机不需要维持复杂的连接状态。3.UDP是面向报文的。发送方的UDP对应用程序交下来得报文,在添加首部后就向下交付交付给IP层。UDP对应用层交下来得报文,即不合并,也不拆分而是保留这些报文的边界。4.UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率下降。并且允许拥塞的时候丢失一些数据,

2021-03-19 19:44:58 581

原创 计算机网络|传输控制协议TCP概述

传输层该层为两台主机上的应用程序提供端到端的通信。传输层有两个传输协议:TCP(传输控制协议)和 UDP(用户数据报协议)。其中,TCP是一个可靠的面向连接的协议,udp是不可靠的或者说无连接的协议。TCP的特点:TCP是面向运输层的协议。使用TCP协议之前,必须先建立TCP连接,在传输完成后,必须释放已经建立的TCP连接。每条TCP连接只能有两个端,每一条TCP连接只能是点对点的。TCP提供可靠的交付的服务。通过TCP连接传输的数据,无差错、不丢失、不重复,并且按序到达。TCP提供全双工通信。

2021-03-18 16:03:33 1359

原创 顺序栈

结构体类型定义typedef struct { int *base; int *top; int stackSize;//可用空间 }SqStack;初始化一个顺序栈int InitStack (SqStack *S){ S->base=(ElemType*)malloc(Maxsize); if(!S->base) { exit(0); } S->top=S->base; S->stackSize=Maxsize;}//压栈 vo

2021-03-17 15:02:44 56

STM32F103_SPI读取FLASH

STM32F103_SPI读取FLASH

2021-07-21

软件模拟IIC读写EEPROM

STM32f103模拟IIC读写EEPROM

2021-07-20

stm32f4+dht11

stm32f4+dht11

2021-06-15

dingzhi.html

111

2021-04-27

空空如也

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

TA关注的人

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