当前位置: 首页 > news >正文

单片机学习笔记---串口通信(1)

目录

通信的基本概念

通信的方式

1.按照数据传送的方式,可分为串行通信和并行通信。

1.1串行通信

1.2并行通信

2.按照通信的数据同步方式,又可以分为异步通信和同步通信。

2.1 异步通信

2.2同步通信

3.按照数据的传输方向,又可以分为单工通信,半双工通信,还有全双工通信。

3.1单工通信

3.2半双工通信

3.3全双工通信

4.总线

通信速率

串口通信简介  

串口通信

串口

接口标准和接口种类

接口标准

接口种类

常见通信接口

接口上的引脚定义

逻辑电平

串口数据收发线:交叉连接

通信协议


通信的基本概念

随着单片机的系统的广泛应用和计算机网络的技术普及,单片机的通信功能越来越重要。 像在WiFi、蓝牙、GPS、GSM和GPRS这些应用当中,充分体现了串口通信的重要性。 学习51单片机的重点难点,主要体现在51的中断、定时计数器、以及串口通信这些功能。中断、定时计数器再前四节已经搞定,本节就来学习一下串口通信。

下面我们就来看一下串口通信相关的一些基本概念。 我们知道51单片机不仅可以实现串口通信还可以通过IO口模拟实现多种其他的一些通信,比如SPI,IIC等等,学习这些通信前,我们就很有必要了解一下通信的一些基本概念。

通信的方式

可以分为很多种:

按照数据传送的方式,可分为串行通信和并行通信。

按照通信的数据同步方式又可以分为异步通信和同步通信。 按照数据的传输方向,又可以分为单工通信,半双工通信,还有全双工通信。

下面就逐个来介绍。

1.按照数据传送的方式,可分为串行通信和并行通信。

1.1串行通信

在串行通信当中,是指使用一条数据线将数据一位一位的一次进行传输,每一位数据占据固定的时间长度。只需要很少的几条线就可以在系统之间进行数据交换,特别适用于计算机与计算机,计算机与外部设备的远距离的传输,这样,可以大大的节约成本,因为它只需要很少的线。

那像在数据传输过程当中,它的数据是依靠一根线来进行一位一位的传输,它优先传输低位(D0),最后在传输高位(D7),字节的数据就通过8次传输到接收设备当中。

串行通信它有一个特点就是传输线很少,从这张图当中也可以看到,它只需要一根线,对于长距离传输的这些应用,它的成本是非常低的。 可以利用电话线,或者是一些网线这些现成的设备来进行传输,但是传输的控制,以及稳定性就相对来说要复杂一些。 因为你这个数据要在一条数据线上面进行传输,你需要对它的数据进行处理,一位的一位的发送,那相比于并行通信来说,相对来说要复杂一点。

1.2并行通信

那我们再来看一下并行通信。

它通常是将这个数据的字节的各个位(一个字节为8位)按照多条数据线同时进行传输,通常是有8位,16位,32位的数据一起传输。

那像我们这张图当中,要传输一个字节的数据,那这里就有8根并行线接到接收设备,一个字节就是通过每一根线传输一位,总共就8位,一次性传输过去。

这种通信方式的特点,是控制简单,传输速度快。一个字节一下就传过去了,不需要一位一位的传。

我们前面的串行通信是一个字节分8次,一次一位的传输,而我们并行通信是8位同时传输,这样的速度,比串行通信肯定是更快的。

但是如果说由于这个传输线比较多,那对于长距离传输的一些应用就增加了比较大的成本。

比如说我们在长距离传输的时候,如果使用串行通信的时候,它只要一根数据线,而这个并行通信,它需要8根,所以成本相对于串行通信来说比较高的。并且,我们长距离传输的时候,接收方的各位同时接收存在困难,所以它的抗干扰能力,就要差一些。

2.按照通信的数据同步方式又可以分为异步通信和同步通信。

2.1 异步通信

异步通信:通信双方各自约定通信速率

异步通信是指通信的发送和接收设备使用各自的时钟控制数据的发送和接收过程,为了使双方收发协调,要求发送的设备和接收的设备的时钟尽可能一致。

这是什么意思?因为它们要使用各自的时钟来控制它的数据发送和接收,如果说你们这两个设备发送设备和接收设备的时钟都不相同的话,那么它接收的数据也可能是错的或者是乱的,所以在异步通信的过程当中,要求发送设备和接收设备它的时钟尽可能要一致。

异步通信是以字符为单位进行传输的,字符与字符之间的间隙是任意的。但每个字符中的个位是以固定的时间传输,也就是说字符之间的间隔时间或者说间隙是任意的。

但是,它字符之间不一定有位间隔的整数倍关系,但是同一个字符内的各个位之间的间隙是位间隔的整数倍关系。

我们来看一下,对于异步通信来说,字符帧的格式是这样的。

有起始位,然后紧接着跟着八个数据位,它也有校验位和停止位,这是一帧一帧的字符数据,总共是11个,也就是说字符帧通常含有11个位。

异步通信的特点是不要求收发双方的时钟严格一致,实现容易。

比如说我们发送设备的时钟的频率假设是11.0592,那这个接收设备不是说一定要按照11.0592兆,它可以有一定的有误差范围,这样对于我们接收设备来说,实现这么大的时钟就比较容易一点,而不是精确,设备开销也较小,因为它采用的是一位一位的进行传输,但每个字符之间要附加2~3个位,用来作为起始、校验,停止这些位。 各帧与各帧之间因为有了间隔,所以它的传出效率不是很高。

因为我们可以看到这张图,在每一个字符与字符之间,这个间隔时间是不同的。因为有了这个间隔,所以在传输数据的时候,它的效率就不是很高。

2.2同步通信

同步通信:通信双方靠一根时钟线来约定通信速率

同步通信是要建立发送方时钟对接收方时钟直接的控制,从这张图当中我们可以看到,比如说我们这里计算机甲是发送方,计算机乙是接收方,那么发送方的时钟是直接控制接收方的,所以,让我们这双方的时钟完全相同,也就是同步这就是同步通信此时,传输数据的位之间的距离是位间隔的整数倍。

同时传输的字符间是不留间隙的,也就保持了这个同步的关系。

发送方对接收方的同步可以通过两种方式来实现,像这像下面这两张图。

一种是外同步,一种是自同步。

外同步是通过发送方的时钟来控制接收方的时钟,这就可以达到外同步。

然后,自同步的话是通过发送方控制发送的数据和时钟实现自同步。

通俗来讲,外同步就是时钟线传输时钟信号,数据线传输数据信号。自同步就是一条线上同时传输了时钟和数据信号。

异步和同步的概念,可以说同步就像两人打电话,异步就是发短信。这种同步通信我们用的不是很多,主要是异步通信那一块,像串口通信,它就是异步的通信。

3.按照数据的传输方向,又可以分为单工通信,半双工通信,还有全双工通信。

3.1单工通信

单工通信是指数据传输仅按照方向来进行传输,它不能实现反向的传输

从这张图当中我们也可以看得到,发送方是按照发送方到接收方的这个数据传输方向,不能实现反方向的传输,所以,它是单工的通信。

3.2半双工通信

半双工的通信是数据传输可以按照两个方向进行传输,一个是发送,一个是接收但它是需要进行分时才能进行发送和接收,那从这张图我们也可以看到。

假如在时间1这个点是处于发送的状态,就是从发送设备到接收设备传输数据,如果在时间2的时候,要接收数据,那从接收设备来发送数据到我们的发送设备,从而接收。所以,在发送和接收这一块,它的时间点是不一样的,也就进行了分时进行传输。

3.3全双工通信

全双工的通信是指数据可以同时进行两个方向的传输

比如说我们从这张图当中可以看到,它可以既可以作为发送,又可以作为接收,可以同时进行。

补充:

4.总线

总线就是连接各个设备的数据传输线路(类似于一条马路,把路边各住户连接起来,使住户可以相互交流)

通信速率

下面我们来介绍概念:通信速率。

衡量通信性能的重要指标参数就是这个通信的速率,通常也叫比特率。 比特率是每秒钟传输二进制代码的位数,它的单位是位/秒。 比如说我们每秒钟传输240个字符。按照前面的格式,字符它包含起始位、停止位,然后中间有八个数据位,假如没有校验位的话,那么1字符的一帧数据含有10个位,那比特率是多少?结果是2400bps。

  在后面我们还会遇到一个概念,就是波特率。 通常我们接触比较多的是波特率,我们可以把它看成是比特率。

波特率表示每秒钟传输了多少个码元(串口通信的速率(发送和接收各数据位的间隔时间))。而比特率是每秒钟传输二进制代码的位数。 这个码元是通信信号调试的概念,通信中常用的时间间隔相同的符号表示二进制的数字,这样的信号称为码元。

第一种情况:比如常见通信中用0V表示数字0,5V表示数字1,每个码元可以表示两种状态,0和1,所以一个码元也就等于一个二进制的比特位此时,波特率的大小跟比特率的大小是一致的

第二种情况:如果在通信传输过程当中,用0V,2V,4V,6V等等来表示二进制的话,那表示0V就是00,2V是01,4V是10,6V是11,每个码元可以表示四种状态,也就是两个二进制的比特位,00 01 10 11,就是用两个比特位来表示一个码元所以码元是二进制的比特位的一半,这个时候的波特率就是比特率的一半

我们常见的通信当中,码元是表示两种状态,也就是0和1,跟我们的二进制位是一样的。所以,我们也可以把波特率看成是比特率。在我们常见的通信当中,基本上是这样的,所以我们在通信应用当中,我们通常也叫波特率,很少听到比特率这种叫法。大家要知道它们的区别。

串口通信简介  

接下来我们来看一下51单片机的串口的介绍,首先我们来看一下串口通信的简介。

串口通信

是指外设和计算机间通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。

串口

是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信。

单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信,极大的扩展了单片机的应用范围,增强了单片机系统的硬件实力。

51单片机内部自带UART(Universal Asynchronous Receiver Transmitter,通用异步收发器),可实现单片机的串口通信。

串口是一种接口标准。它规定了接口的电器标准,没有规定接口插件的电缆以及使用的协议,它规定的是接口标准,厂家必须按照这个接口标准来做串口的标准接口。

所以,在我们的串口设备当中,通常会见到它的这个接口,比如我们下面这张图当中的DB9或者是DB25的这种标准接口。

不过我们现在应用比较多的是这种DB9的孔。

接口标准和接口种类

接口标准

下面我们来看一下接口标准。

串口通信的结构标准有很多:RS232C、RS232、RS422A、RS485等等,常用的是这种RS232和RS485。

RS232其实就是在RS232C的基础上的改进版本,它的原理是一样的,那所以这里我们就以RS232C这个接口进行讲解。

RS232C是美国电子工业协会在1969年修订的RS232C的标准,定义了数据终端设备与数据通信设备之间的物理接口标准,规定了使用25帧的连接器,我们简称DB25。 连接器的尺寸以及每个插针的排列位置,都有明确的定义,这个就是DB25的接口标准的图。

这个针脚的排序在途中已经标出来了,第一行从左1号开始到13号,第二行从左往右是14~25号。

现在还有一种九针的RS232C非标准连接接口,我们通常也称为DB9。

我们都见到的大多数设备是使用DB9的这种接口,DB25和DB9这种接口的接头有公头和母头之分,其中带针状的是公头,带孔状的这个接头是母头,下面这张图我们可以看到。

公头和母头它的管脚顺序是不一样的,从这张图当中我们可以看得到排序方式正好是相反的。所以,自己在做这个封装图的时候,要注意你的设备是使用公头还是母头。这种接口现在多见于台式电脑。

接口种类

其实现在还有一种常见的接口,叫做VGA接口。VGA接口共有15针,分成3排,每排5个孔,显卡上应用最为广泛的接口类型。VGA接口是传输视频的,英文名叫做Video Graphics Array视频图形阵列和DB9(用来传输数据的)外观长得有点像,但是完全不同的接口,不要搞混了。

现在笔记本电脑大部分都是USB接口

左边插USB,右边就是串口线路,就可以和单片机连接

我们开发板上的这个位置就是USB和串口之间电平的相互转换,转换之后就可以在电脑上使用串口这样的功能了。

然后电脑端也就是STC那个软件上有一个东西叫串口助手来帮助我们收发数据显示。

常见通信接口

在这里总结一下常见通信接口,相互比较一下:

PS:

UART:通用异步收发器串口;异步串口。

可挂载多个设备特点的接口都可以称为总线:

IIC一般都读作 I方C总线

SPI总线

1-Wire读作one-wire(单总线)

CAN总线一般应用在汽车领域(把很多连在一起的传感器用CAN总线挂起来,用差分信号传输,传输距离很远,稳定性也很好)同步的通信方式一般都带有一个时钟线SCL/SCLK,异步的通信方式一般都不带时钟线。

下面分别介绍表格中的几种通信接口:

51单片机的UART:

STC89C52有1个UART

STC89C52的UART有四种工作模式:

模式0:同步移位寄存器

模式1:8位UART,波特率可变(常用)

模式2:9位UART,波特率固定

模式3:9位UART,波特率可变

接口上的引脚定义

接口上的脚都有明确的定义,我们来看一下。

下面这张图是RS-232C接口标准的引脚定义。

图中带括号的是DB9的脚位,而没有带括号的是DB25的脚位。 这么多脚是不是所有的脚位都用上了?在串口通信当中,我们通常一般只会用到三个脚,哪三个脚?串行发送和接收肯定是必不可少的,2脚和3脚都会用到,然后还有GND,也就是信号地脚(5脚)。

所以通常我们在串口通信当中应用的比较多的三个脚就是2、3、5,也就是TXD、RXD和GND。

尤其是GND,如果由于在做串口通信的时候,它只顾发送和接收这两个脚位的连接,忽略了GND直接会导致通信两设备之间没有共地,通信可能就会出现错误,所以在串口通信当中一定要记住设备之间要进行共地,也就是要连接这个GND 5脚。

逻辑电平

在RS-232C标准当中,它对逻辑电平也进行了规定。

比如,在TXD和RXD数据线上面,

逻辑1电平范围是-3~15V的电压范围。 逻辑0的话,它是3V到15V的电压。

这个跟我们前面学习单片机的高电平1是5V,0是0V是不一样的。

我们单片机通常是TTL的电平,所以我们在使用51单片机的时候,要将TTL电平跟RS-232的电平进行转换的话,它需要转换的东西,就是MAX232电平转换芯片。

因为我们的串口通信是RS232的电平,而我们单片机的串口电平是TTL的电平,所以通过MAX232这个芯片可以将RS232电平跟TTL的电平进行转换,这样就可以实现通信了。

电平标准是数据1和数据0的表达方式,是传输线缆中人为规定的电压与数据的对应关系,串口常用的电平标准有如下三种:

TTL电平:+5V表示1,0V表示0(单片机走的电平)

RS232电平:-3~-15V表示1,+3~+15V表示0(比如DB9接口走的电平)

以上两种电平的传输距离也才十多米。

RS485电平:两线压差(两根线之间的电压差)+2~+6V表示1,-2~-6V表示0(差分信号)

RS485电平能传一千米以上。

串口数据收发线:交叉连接

在串口通信当中,我们还要注意的一点是串口数据收发线要进行交叉的连接。 何为交叉连接?

是指在发送方和接收方发送方的TXD(Transmit exchange data)要连接接收方的接收管脚RXD,我发送的数据才能到达接收设备的接收引脚。

同样的,我们发送方的接收引脚要连接接收方的发送引脚。发送数据就直接传到我们的接收设备当中。

这就是交叉的连接。

还有一点就是要注意:两个设备之间要进行共GND。

简单双向串口通信有两根通信线(发送端TXD和接收端RXD)

TXD与RXD要交叉连接

当只需单向的数据传输时,可以直接一根通信线

当电平标准不一致时,需要加电平转换芯片

PS:VCC是供电的(电源的供电电压),如果设备1和设备2都有独立电源的话,可以不接VCC,如果比如说设备2是一个模块的话,它不会独立供电,那么设备1需要向设备2供电,也就是接个VCC。VCC和GND其实就是电源的正负极,通信就是中间两根线。

通信协议

在前面我们介绍了,RS-232C没有规定协议的标准,但是通常我们做串口通信的时候是按照96-N-8-1的格式。

这个96是代表我们的通信波特率是9600BPS,也就是每秒钟传输的二进制的位数9600 bps。因为通常使用的是异步串口通信,也就是说没有时钟线,两个设备要进行通信的话,必须要保持一致的波特率当然波特率不一定必须要9600,也可以是4800,还可以是115200。当然51单片机它也跑不到这么高,我们是只举例子。比如我们发送方使用的是9600,我们在写程序的时候,接收方的波特率也必须是9600。保持波动率是一致的。

然后这个N代表的是无校验位,由于在串口通信当中,相对更容易受到外部的干扰,导致传输数据出现偏差,可以在传输过程当中加上这个校验位来解决这个问题。

校验方法有奇校验,还有偶校验,以及0校验(也是无校验)。

通常我们在串口通信当中用的比较多的是无校验,也就是N。 然后,

这个8是指传输的数据位,通常是8位,也就是一个字节。在数据格式前面,我们介绍过异步通信有有5位,也有6位、7位,当然我们用的比较多的是8位,也正好对应我们一个字节。   

然后这个1代表的是停止位,串口通信的数据包从起始信号开始直到停止信号结束,数据包的起始信号是由逻辑电平0这个数据位表示,数据包停止位信号可以是0.511.52两个逻辑1的数据位表示只要双方约定一致就可以了。

我们通常使用的是一个停止位,所以,通常的这个协议标准我们是按照这个96-N-8-1的这种格式。其中96,我们通常可以更改它的波动率,后面的几种我们通常是按照N-8-1。

没讲完下一篇继续.....

单片机学习笔记---串口通信(2)-CSDN博客

相关文章:

单片机学习笔记---串口通信(1)

目录 通信的基本概念 通信的方式 1.按照数据传送的方式,可分为串行通信和并行通信。 1.1串行通信 1.2并行通信 2.按照通信的数据同步方式,又可以分为异步通信和同步通信。 2.1 异步通信 2.2同步通信 3.按照数据的传输方向,又可以分为…...

熔断机制解析:如何用Hystrix保障微服务的稳定性

微服务与系统的弹性设计 大家好,我是小黑,在讲Hystrix之前,咱们得先聊聊微服务架构。想象一下,你把一个大型应用拆成一堆小应用,每个都负责一部分功能,这就是微服务。这样做的好处是显而易见的,更新快,容错性强,每个服务可以独立部署,挺美的对吧?但是,问题也随之而…...

第三节 zookeeper基础应用与实战2

目录 1. Watch事件监听 1.1 一次性监听方式:Watcher 1.2 Curator事件监听机制 2. 事务&异步操作演示 2.1 事务演示 2.2 异步操作 3. Zookeeper权限控制 3.1 zk权限控制介绍 3.2 Scheme 权限模式 3.3 ID 授权对象 3.4 Permission权限类型 3.5 在控制台…...

C# Socket通信从入门到精通(21)——Tcp客户端判断与服务器断开连接的三种方法以及C#代码实现

前言 我们开发的tcp客户端程序在连接服务器以后,经常会遇到服务器已经关闭但是作为客户端的我们不知道,这时候应该应该有一个机制我们可以实时监测客户端和服务器已经断开连接,如果已经断开了连接,我们应该及时报警提示用户客户端和服务器已经断开连接,本文介绍三种可以监…...

vulnhub-->hacksudo-Thor靶机详细思路

目录 1. IP探测2.端口服务扫描3.网站漏洞扫描4.目录扫描5.信息分析6.破壳漏洞(Shellshock)nmap---漏洞检测CVE-2014-6271 7.nc反弹8.提权9.service提权 1. IP探测 ┌──(root㉿kali)-[~] └─# arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:10:3c:9b, IPv4: 19…...

Java外卖小程序管理系统

技术架构: springboot ssm mysql redis 有需要该项目的小伙伴可以私信我你的Q。 功能描述: 商品管理:新增商品、所有商品 菜单管理:菜单管理、菜单分类 订单管理:订单总览(包括未付款、已付款、已…...

挖掘嵌入式系统在物联网和智能设备中的应用潜力

1. 物联网的发展和嵌入式系统 介绍物联网的定义和特点,以及其在各个领域中的应用。探讨物联网对嵌入式系统的需求,包括低功耗、小型化、实时性等特性,以及对嵌入式系统的数据处理和通信能力的要求。 2. 嵌入式系统在智能设备中的应用 分析…...

用docker 配置scala spark环境

要使用Docker配置Scala和Spark环境,您可以按照以下步骤进行操作。以下是一个基本的示例,您可能需要根据您的具体需求进行调整。 安装Docker: 在您的系统上安装Docker。您可以从Docker官方网站下载并安装适用于您操作系统的版本。 创建Dockerfile: 在您的…...

医疗处方架构设计和实现的实战经验总结

医疗处方是医生开具给患者的药物治疗建议。在现代医疗系统中,设计和实现一个高效而可靠的医疗处方架构至关重要。本文将介绍医疗处方架构的设计原则和关键组件,以及如何实现一个可扩展和安全的处方管理系统。 内容: 1. 引言 - 医疗处方的…...

专业140+总分410+华南理工大学811信号与系统考研经验华工电子信息与通信,真题,大纲,参考书。

23考研已经落幕,我也成功的上岸华工,回首这一年多的历程,也是有一些经验想和大家分享一下。 首先说一下个人情况,本科211,初试成绩400分。专业课140。 整体时间安排 对于考研,很重要的一环就是时间安排&…...

软件测试学习笔记-测试用例的编写

7中测试分类 按照阶段可划分单元测试、集成测试、系统测试、验收测试。代码可见度划分黑盒测试、灰盒测试、白盒测试 单元测试:针对源代码的测试 集成测试:针对接口进行测试 系统测试:针对功能和非功能的测试 验收测试:公测、内测…...

『运维备忘录』之 Kubernetes(K8S) 常用命令速查

一、简介 kubernetes,简称K8s,是用8代替名字中间的8个字符“ubernete”而成的缩写,是一个开源的,用于管理云平台中多个主机上的容器化的应用。kubernetes是基于容器技术的分布式架构解决方案,具有完备的集群管理能力&a…...

Android SDK 上传 Maven 喂奶级教程

最近领导给安排了个任务,让我把我们现有的一个 SDK 上传到 Maven 上去,方便客户直接用 gradle 依赖,不再需要拷贝 jar 和 so 了,此前我也看过一些相关的文章我想问题也不大,觉得工作量也就一两天的事情,主要…...

R语言绘图教程 | 双侧条形图绘制教程

写在前面 双侧条形图在我们的文章中也是比较常见的,那么这样的图形是如何绘制的呢? 以及它使用的数据类型是什么呢? 这些都是我们在绘制图形前需要掌握的,至少我们知道绘图的数据集如何准备,这样才踏出第一步。 今天的教程,我们会从数据的准备,以及数据如何整理,以及…...

ubuntu篇---ubuntu安装python3.9

ubuntu篇—ubuntu安装python3.9 在ubuntu上安装Python有两种方法:在线安装和源码编译安装。 方法1:使用apt在线安装 1.更新软件包列表并安装必备组件: $ sudo apt update $ sudo apt install software-properties-common2.将Deadsnakes PPA添加到系统…...

git初始化一个远程空仓库

目录 1. 仅做简单初始化2. 推送现有的非仓库文件夹3. 推送现有的仓库 git初始化一个远程空仓库主要有以下三种途径: 仅做简单初始化,例如添加 README.md 和 .gitignore。将现有的文件夹(非仓库)推送到远程仓库。将现有的仓库推送…...

装箱问题+宠物小精灵之收服+数字组合——01背包

一、装箱问题 (裸题) 有一个箱子容量为 V&#xff0c;同时有 n 个物品&#xff0c;每个物品有一个体积&#xff08;正整数&#xff09;。 要求 n 个物品中&#xff0c;任取若干个装入箱内&#xff0c;使箱子的剩余空间为最小。 输入 第一行是一个整数 V (0 < V ≤ 20000)&…...

记一次页面接口502问题:“502 Bad Gateway”

接收别人的项目进行迭代&#xff0c;项目部署到服务器上之后&#xff0c;有一个接口数据刷不出来&#xff0c;一直502 后来联想到网关的问题&#xff0c;想通过设置白名单的方式解决&#xff0c;设置之后依旧不行。 查看nginx日志发现报错&#xff1a; *169 connect() failed …...

Oracle systemstate、gdb、dbx介绍

当数据库出现严重的性能问题或者hang了的时候&#xff0c; 可能最常用的办法就是重启数据库&#xff0c;简单有效解决问题&#xff1b;但是重启后如何追踪问题的根本原因成了难题&#xff0c;很多信息随着重启也消失不见了&#xff0c;让追查问题变的十分棘手&#xff0c;这时就…...

Stable Diffusion 模型下载:RealCartoon-Anime - V10

文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十下载地址模型介绍 这个检查点是从 RealCartoon3D 检查点分支出来的。它的目标是产生更多的“动漫”风格,因为我喜欢动漫。:)我知道有很多人做得很好(...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

学校招生小程序源码介绍

基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码&#xff0c;专为学校招生场景量身打造&#xff0c;功能实用且操作便捷。 从技术架构来看&#xff0c;ThinkPHP提供稳定可靠的后台服务&#xff0c;FastAdmin加速开发流程&#xff0c;UniApp则保障小程序在多端有良好的兼…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...