AT89S52单片机
目录
一.AT89S52单片机的硬件组成
1.CPU(微处理器)
(1)运算器
(2)控制器
2.数据存储器 (RAM)
(1)片内数据存储器
(2)片外数据存储器
3.程序存储器(Flash ROM)
4.定时器/计数器
5.中断系统
6.串行口
7.P0口、P1口、P2口和P3口
8.特殊功能寄存器 (SFR)
常用的特殊功能寄存器:
(1)堆栈指针SP
(2)寄存器B
(3)AUXR寄存器
(4)数据指针DPTR0和DPTR1
(5)AUXR1寄存器
9.1个看门狗定时器WDT
二.各类存储器的结构如下
三.单片机的引脚
引脚按其功能可分为如下3类:电源及时钟引脚,控制引脚,I/O引脚电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。
控制引脚:PSEN*,ALE/PROG*,EA*Vpp,RST
I/O口引脚:P0,P1,P2,P3,为4个8位I/O
一.AT89S52单片机的硬件组成
1.CPU(微处理器)
8位的CPU,与通用CPU基本相同,同样包括了运算器和控制器两大部分,还有面向控制的位处理功能。
(1)运算器
对操作数进行算术、逻辑和位操作运算。主要包括算术逻辑运算单元ALU、累加器A、位处理器、程序状态字寄存器(PSW)及两个暂存器等。
算术逻辑运算单元ALU
可对8位变量逻辑运算 (与、或、异或、循环、求补和清零)还可算术运算(加、减、乘、除),ALU还有位操作功能,对位变量进行位处理,如置“1”、清“0”、求补、测试转移及逻辑“与”、“或”等
累加器A
使用最频繁的寄存器,可写为Acc。位于片内的特殊功能寄存器区
(1)ALU单元的输入数据源之一,又是ALU运算结果存放单元。
(2)数据传送大多都通过累加器A,相当于数据的中转站。为解决“瓶颈堵塞”问题,AT89S52增加了一部分可以不经过累加器的传送指令。
A的进位标志Cy是特殊的,因为它同时又是位处理机的位累加器。
程序状态字寄存器PSW
PSW(Program Status Word)位于片内特殊功能寄存器区字节地址为D0H。
包含了程序运行状态的信息,其中4位保存当前指令执行后的状态,供程序查询和判断。
(1) Cy (PSW.7) 进位标志位
可写为C。在算术和逻辑运算时,若有进位/借位,Cy=1;否则,Cy=0。在位处理器中,它是位累加器。
(2) Ac (PSW.6) 辅助进位标志位
在BCD码运算时,用作+进位调整。即当D3位向D4位产生进位或借位时Ac=1;否则,Ac=0。
(3) F0 (PSW.5) 用户设定标志位
由用户使用的一个状态标志位,可用指令来使它置1或清0,控制程序的流向。用户应充分利用。
(4) RS1、RS0 (PSW.4、PSW.3) 4组工作寄存器区选择
选择片内RAM区中的4组工作寄存器区中的某一组为当前工作寄存区。
(5) 0V (PSw.2) 溢出标志位
当执行算术指令时,用来指示运算结果是否产生溢出。如果结果产生溢出,0V=1;否则,0V=0。
(6) PSW.1位:保留位
(7) P (PSW.0) 奇偶标志位
指令执行完,累加器A中“1”的个数是奇数还是偶数。
P=1,表示A中“1”的个数为奇数
P=0,表示A中“1”的个数为偶数
此标志位对串行通信有重要的意义,常用奇偶检验的方法来检验数据串行传输的可靠性。
(2)控制器
控制器包括:程序计数器、指令寄存器、指令译码器、定时及控制逻辑电路等。功能是控制指令的读入、译码和执行从而对各功能部件进行定时和逻辑控制。
程序计数器PC:
程序计数器PC是一个独立的16位计数器,不可访问。单片机复位时,PC中内容为0000H,从程序存储器0000H单元取指令,开始执行程序。
注:如果片内存储器是8K,那么片外扩展+片内最多只能到64K,因为PC计数器是16位的,2的16次方是64K,所以PC指针最多能指向64K存储单元。
PC工作过程:
CPU读指令时,PC的内容作为所取指令的地址程序存储器按此地址输出指令字节,同时PC自动加1。
PC中内容变化轨迹决定程序流程。当顺序执行程序时自动加1。执行转移程序或子程序、中断子程序调用时,自动将其内容更改成所要转移的目的地址。
PC的计数宽度决定了程序存储器的地址范围。PC为16位,故可对64KB (=216B) 寻址。
2.数据存储器 (RAM)
(1)片内数据存储器
AT89S52的片内数据存储器 (RAM)共有256个单元,字节地址为00H~FFH。图为AT89S52片内RAM的结构。地址为80H~FFH为特殊功能寄存器区,与片内的高128B的RAM单元(S51没有这一RAM单元)统一编址,但它是另一专用空间区域。
对这两个具有相同地址区域进行访问时,是由不同的指令寻址方式来区分,对地址为80H~FFH的RAM区,只能采用间接寻址方式访问,而对地址为80H~FFH的特殊功能寄存器区访问只能采用直接寻址方式。但是对于低128B (地址00H~7FH)的RAM区,即可采用直接寻址方式也可采用间接寻址方式来访问。
(2)片外数据存储器
当片内256B的RAM不够用时,需外扩,最多可外扩64KB的RAM。注意片内RAM与片外RAM两个空间是相互独立的,片内RAM与片外RAM的低256B的地址是相同的,但由于使用的是不同的访问指令,所以不会发生冲突。
3.程序存储器(Flash ROM)
用来存储程序和表格之类的固定常数。分为片内和片外两部分:
片内4KB Flash ,编程和擦除完全是电气实现。可用通用编程器对其编程,也可在线编程 (ISP)
当片内Flash存储器不够用时,可片外扩展,最多可扩展至64KB程序存储器。访问片内的还是片外的程序存储器,由EA*引脚电平决定:
EA*=1时,CPU从片内0000H开始取指令,当PC值没有超出1FFFH时,只访问片内Flash 存储器,当PC值超出1FFFH自动转向读片外程序存储器空间2000H~FFFFH内的程序。
EA*=0时,只能执行片外程序存储器(0000H~FFFFH)中的程序。不理会片内4KBFlash 存储器。
AT89S51片内有4KB的FLASH存储器,AT89S52 片内有8KB的Flash存储器,地址为0000H~1FFFH,AT89S53/AT89S54/AT89S55片内集成了12KB/16KB/20KB的Flash存储器,如果片内程序存储器容量不够,片外最多可外扩至64KB(0000H~FFFFH)程序存储器,即“片内+片外”的程序存储器总容量不超过64KB
注:程序存储器某些固定单元用于各中断源终端服务程序入口。
64KB程序存储器空间中有6个特殊单元分别对应于5个中断源的中断入口地址。
通常这5个中断入口地址处都放一条跳转指令跳向对应的中断服务子程序,而不是直接存放中断服务子程序。
每个中断地址之间差8个地址单元,一般是不够用的,因此多采用跳转
4.定时器/计数器
片内有3个16位的定时器/计数器,具有4种工作方式
5.中断系统
具有6个中断源(S51单片机只有5个),2级中断优先权。
6.串行口
1个全双工的异步串行口,4种工作方式。可进行串行通信扩展并行I/O口,可与多个单片机构成多机系统。
7.P0口、P1口、P2口和P3口
4个8位并行I/O口。(转单片机引脚处有详细介绍)
8.特殊功能寄存器 (SFR)
共有32个特殊功能寄存器(S51单片机有27个),用于CPU对片内各外设部件进行管理、控制和监视。特殊功能寄存器实际上是片内各外设部件的控制寄存器和状态寄存器,这些特殊功能寄存器映射在片内RAM区的80H~FFH的地址区间内。
特殊功能寄存器映射在片内RAM的 80H~FFH 区域中,共32个。
下表展示了SFR的名称及其分布,有些还可位寻址,位地址如下:
与AT89S51相比,新增加了6个特殊功能寄存器: T2CON、T2MODRCAP2L、RCAP2H、TL2和TH2,已在表中标出。
凡是可位寻址的SFR,字节地址末位只能是0H或8H。另外,若读/写未定义单元,将得到一个不确定的随机数。
常用的特殊功能寄存器:
(1)堆栈指针SP
堆栈只能设在片内的RAM区,SP指示堆栈顶部在内部RAM块中的位置堆栈结构一向上生长型。单片机复位后,SP为07H,使得堆栈实际上从08H单元开始,由于08H~1FH单元分别是属于1~3组的工作寄存器区,最好在复位后把SP值改置为60H或更大的值,避免堆栈与工作寄存器冲突,因为复位后,SP是07H,也就是从08H开始工作,如果工作寄存器的第1组工作寄存器区正在工作,就会发生冲突。
堆栈是为子程序调用和中断操作而设,用来保护断点和现场。
两种操作:数据压入 (PUSH) 堆栈,数据弹出 (POP) 堆栈。数据压入堆栈,SP自动加1;数据弹出堆栈,SP自动减1。
(2)寄存器B
为执行乘法和除法而设。在不执行乘、除法操作的情况下,可把它当作个普通寄存器来使用。
乘法,两乘数分别在A、B中,执行乘法指令后,乘积在BA中。
除法,被除数取自A,除数取自B,商存放在A中,余数存B中。
(3)AUXR寄存器
AUXR是辅助寄存器,其格式如图:
DISALE: ALE的禁止/允许位。
0: ALE有效,发出脉冲;
1:ALE仅在执行MOVC和MOVX类指令时有效,不访问外部存储器时,ALE不输出脉冲信号
DISRT0:禁止/允许WDT溢出时的复位输出
0:WDT溢出时,在RST引脚输出一个高电平脉冲
1:RST引脚仅为输入脚
WDIDLE:WDT在空闲模式下的禁止/允许位
0:WDT在空闲模式下继续计数;
1:WDT在空闲模式下暂停计数
(4)数据指针DPTR0和DPTR1
双数据指针寄存器,便于访问数据存储器
DPTR0: AT89C51单片机原有的数据指针;
DPTR1:新增加的数据指针。
AUXR1的DPS位用于选择两个数据指针。当DPS=0时,选用DPTR0:当DPS=1时,选用DPTR1。
数据指针可作为一个16位寄存器来用,也可作为两个独立的8位寄存器DP0H(或DP1H)和DP0L (或DP1L)来用。
(5)AUXR1寄存器
AUXR1是辅助寄存器,格式如图:
数据指针寄存器选择位DPS:
0:选择数据指针寄存器DPTR0;
1:选择数据指针寄存器DPTR1。
注:程序存储器空间,数据存储器空间,特殊功能寄存器 (SFR),还有位地址空间
位地址空间:
共有219个可寻址位,构成了位地址空间。位于片内RAM区字节地址20H~2FH(共128位)
和特殊功能寄存器区(片内RAM区字节地址80H~FFH区间内)
共定义了91个可寻址位:
9.1个看门狗定时器WDT
当单片机由于干扰而使程序陷入死循环或跑飞状态时,可引起单片机复位,使程序恢复正常运行。
WDT包含一个14位计数器和看门狗定时器复位寄存器----WDTRST
当CPU由于干扰,程序陷入死循环或跑飞状态时,WDT提供了一种使程序恢复正常运行的有效手段。
注:AT89S52完全兼容AT89C51/AT89S51单片机,使用AT89C51/AT89S51单片机的系统,在保留原来软硬件的基础上,可用AT89S52直接代换。
二.各类存储器的结构如下
三.单片机的引脚
引脚按其功能可分为如下3类:电源及时钟引脚,控制引脚,I/O引脚
电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。
(1)电源引脚
•Vcc(40脚) : +5V电源
•Vss(20脚) : 数字地。
(2)时钟引脚
•XTAL1 (19脚) : 片内振荡器反相放大器和时钟发生器电路输入端。用片内振荡器时,该脚接外部石英晶体和微调电容。外接时钟源时,该脚接外部时钟振荡器的信号。
•XTAL2 (18脚) : 片内振荡器反相放大器的输出端。当使用片内振荡器,该脚连接外部石英晶体和微调电容。当使用外部时钟源时,本脚悬空。
控制引脚:PSEN*,ALE/PROG*,EA*Vpp,RST
(1) RST(RESET,9脚)
复位信号输入,在引脚加上持续时间大于2个机器周期的高电平,可使单片机复位。正常工作,此脚电平应<0.5V。
当看门狗定时器溢出输出时,该脚将输出长达96个时钟振荡周期的高电平。
(2)EA*/VPP(Enable Address/Voltage Pulse of Programing,31脚)
EA*:引脚第一功能:外部程序存储器访问允许控制端。
EA*=1,在PC值不超出1FFFH(即不超出片内8KB Flash存储器的地址范围)时,单片机读片内程序存储器(8KB) 中的程序,但PC值超出IFFFH(即超出片内8KB Flash地址范围) 时,将自动转向读取片外 (2000H-FFFFH)程序存储器空间中的程序。
EA*=0,只读取外部的程序存储器中的内容,读取的地址范围为0000H~FFFFH,片内的4KBFlash 程序存储器不起作用。
Vpp:引脚第二功能,对片内Flash编程,接编程电压。
(3) ALE/PROG*(Address Latch Enable/PROGramming,30脚)
ALE为地址锁存控制信号端,为第一功能。由于引脚数目有限,P0口是作为低8位地址总线与8位数据总线分时复用的,P2口作为高8位地址总线,当单片机访问外部程序存储器或外部数据存储器时,ALE的负跳变将单片机P0口先发出的低8位地址锁存在P0口外接的地址锁存器中,然后P0口再作为8位数据总线使用。
此外,单片机正常运行时,ALE端一直有正脉冲信号输出,此频率为时钟频率的1/6。可用作外部定时或触发信号。
注意,每当AT89S52访问外部RAM时 (执行MOVX类指令),要丢失一个ALE脉冲。
如不需要ALE端输出脉冲信号,可将特殊功能寄存器AUXR(地址为8EH将在后面介绍)的第0位 (ALE禁止位)置1,来禁止ALE操作,但执行访问外部程序存储器或外部数据存储器指令“MOVC”或“MOVX”时ALE仍然有效。即ALE禁止位不影响对外部存储器的访问。
PROG*:引脚第二功能,对片内Flash编程,为编程脉冲输入脚
(4) PSEN*(Program Strobe ENable,29脚)
片外程序存储器读选通信号,低电平有效。
I/O口引脚:P0,P1,P2,P3,为4个8位I/O
4个双向的8位并行I/O端口,分别记为P0、P1、P2和P3,其中输出锁存器属于特殊功能寄存器。端口的每一位均由输出锁存器、输出驱动器和输入缓冲器组成,4个端口按字节输入/输出外,也可位寻址。
(1) P0口: P0.7~P0.0引脚
作为总线口时,为漏极开路的8位并行双向I/O口,具有悬浮高阻态,作为输出口时,每个引脚可驱动8个LS型TTL负载。
P0口是一个双功能的8位并行端口,字节地址为80H,位地址为80H~87H端口的各位具有完全相同但又相互独立的电路结构。
当P0口用作地址/数据总线口使用时,是一个真正的双向口,用作与外部扩展的存储器或I/O连接,输出低8位地址和输出/输入8位数据
当P0口作通用I/O口使用时,各引脚需要在片外接上拉电阻,此时端口不存在高阻抗的悬浮状态,因此是一个准双向口。
准双向口与双向口的差别:
准双向口仅有两个状态。而PO口作为总线使用,口线内无上拉电阻,处于高阻“悬浮”态。故P0口为双向三态I/0口。另外,准双向口作通用IO的输入口使用时,一定要向该口先写入“1”。
P0口某一位的位电路结构:
(1)P0口用作系统的地址/数据总线用:
作为地址/数据总线输出;作为数据总线输入
(2) P0口用作通用I/O口使用:
P0口用作通用I/O口输出;
P0口作为通用I/O口输入时,有两种读入方式:“读锁存器”和“读引脚”(指令区别读锁存器还是读引脚,读锁存器,实际是“读-改-写”的过程。)
(2) P1口: P1.7~P1.0引脚
准双向I/O口(因为内部有固定的上拉电阻,输入时需要提前写入1的准备动作,所以称为准双向口) ,可驱动4个LS型TTL负载
P1口某些引脚的第二功能如下:
P1.0/T2:T2脚为定时器T2的外部计数信号输入端T2。
P1.1/T2EX: T2EX为T2的捕捉/重新装载触发及方向控制T2EX。
P1.5/MOSI:MOSI用于对片内Flash存储器串行编程和校验
P1.6/MISO:MISO用于对片内Flash存储器串行编程和校验
P17/SCK:SCK用于对片内Flash存储器的串行编程和校验的移位脉冲输入引脚。
注意:
AT89S51与AT89S52引脚的差别仅仅是在1脚 (P1.0)与2脚(P1.1)上,AT89S52的1脚 (P1.0)与2脚(P1.1)分别增加了定时器/计数器T2的两个外部引脚T2和T2EX的复用功能。当AT89S52单片机不使用片内的T2的两个引脚T2 (P1.0)和T2EX (P1.1)的复用功能时,AT89S51以及各种8051兼容机与AT89S52的引脚功能则完全相同,它们的外围硬件接口电路是完全相互通用的。
但是如果使用定时器T2的外部计数输入T2(P1.0)和“捕捉”输入T2EX (P1.1)的功能时,则AT89S52的P1.0脚和P1.1脚就不能作为通用I/O使用,这是AT89S52与AT89S51(或AT89C51) 在外围接电路设计上的微小差别
P1口为通用I/O端口字节地址为90H(P1),位地址为90H~97H(P1.0,P1.2)。位电路结构如图:
P1口工作原理:
P1口只作为通用I/O口使用。
P1口作为输出口时,若CPU输出1,Q=1,Q*=0,场效应管截止,P1.x引脚的输出为1;若CPU输出0,Q=0,Q*=1,场效应管导通P1.x引脚的输出为0。
P1口作为输入口时,分为“读锁存器”和“读脚”两种方式“读锁存器”时,锁存器的输出端O的状态经输入缓冲器BUF1进入内部总线;“读引脚”时,先向锁存器写1,使场效应管截止,P1.引脚上的电平经输入缓冲器BUF2进入内部总线
(3) P2口: P2.7~P2.0引脚
准双向I/O口,引脚内部接有上拉电阻,可驱动4个LS型TTL负载,当AT89S52访问外部存储器及I/O口时,P2口作为高8位地址总线使用,输出高8位地址。与P0口输出并经锁存器的锁存的低8位地址一起构成16位地址,共可寻址64KB的片外地址空间。当P2口作为高8位地址输出口时,输出锁存器的内容保持不变。
当P2口不作为高8位地址总线时,可作为通用的I/O口使用。
一般情况下,P2口大多作为高8位地址总线口使用,这时就不能再作为通用I/O口。如果不作为地址总线口使用,可作为通用IO口使用。
双功能口,字节地址为AOH位地址为A0H~A7H。P2口某一位的位电路结构如图:
P2口的工作原理:
(1) P2口用作高8位地址总线口
在内部控制信号作用下,MUX与“地址”接通。当“地址”线为0时场效应管导通,P2.引脚输出0;当“地址”线为1时,场效应管截止,P2.x引脚输出1。
(2) P2口用作通用I/O口
在内部控制信号作用下,MUX与锁存器的Q端接通。
CPU输出1时,Q=1,场效应管截止,P2.x引脚输出1;CPU输出0时,Q=0,场效应管导通,P2.x引脚输出0。
输入时,分为“读锁存器”和“读引脚”两种方式。“读锁存器”时,Q端信号经输入缓冲器BUF1进入内部总线:“读引脚”时,先向锁存器写1,使场效应管截止,P2.x引脚上的电平经输入缓冲器BUF2进入内部总线。
(4) P3口: P3.7~P3.0
准双向I/O口,具有内部上拉电阻,P3口的第一功能是作为通用的I/O口使用,可驱动4个LS型TTL负载,由于引脚数目有限,在P3口增加了第二功能。每1位都可以分别定义为第二输入功能或第二输出功能。P3口字节地址为B0H,位地址B0H~B7H。P3口某一位的位电路结构如下:
由于P3口每一引脚有第一功能与第二功能,究竟是使用哪个功能,完全是由单片机执行的指令控制来自动切换的,用户不需要进行任何设置。
引脚输入部分有两个缓冲器,第二功能的输入信号取自缓冲器BUF3的输出端,第一功能的输入信号取自缓冲器BUF2的输出端。
P3口的工作原理:
(1) P3口用作第二输入/输出功能
当选择第二输出功能时,该位的锁存器需要置“1”,使“与非门”为开启状态。当第二输出为1时,场效应管截止,P3.x引脚输出为1;当第二输出为0时,场效应管导通,P3.x引脚输出为0。
当选择第二输入功能时,该位的锁存器和第二输出功能端均应置1,保证场效应管截止,P3.x引脚的信息由输入缓冲器BUF3的输出获得
(2) P3口用作第一功能-通用I/O口
当P3口用作通用I/0的输出时,“第二输出功能”端应保持高电平“与非门”为开启状态。CPU输出1时,Q=1,场效应管截止,P3.x引脚输出为1;CPU输出0时,Q=0,场效应管导通,P3.x引脚输出为0。
当P3口用作通用I/O的输入时,P3.x位的输出锁存器和“第二输出功能”端均应置1,场效应管截止,P3.x引脚信息通过输入BUF3和BUF2进入内部总线,完成“读引脚”操作。
当P3口用作通用I/O的输入时,也可执行“读锁存器”操作,此时Q端信息经过缓冲器BUF1进入内部总线。
注:除了P0能驱动8个LS型TTL负载之外,其他只能驱动4个LS型TTL负载,这是因为P0没有上拉电阻,带负载能力比较强
以下是单片机引脚分布:
内容太多啦,后续深入学习会继续更新,若有错误,请佬们不吝赐教!!💖💖💖
相关文章:

AT89S52单片机
目录 一.AT89S52单片机的硬件组成 1.CPU(微处理器) (1)运算器 (2)控制器 2.数据存储器 (RAM) (1)片内数据存储器 (2)片外数据存储器 3.程序存储器(Flash ROM) 4.定时器/计数器 5.中断系统 6.串行口 7.P0口、P1口、P2口和P3口 8.特殊功能寄存器 (SFR) 常用的特殊功…...

数字孪生智慧校园 Web 3D 可视化监测
当今,智慧校园发展阶段亟需推动信息可视化建设与发展,将大数据、云计算、可视化等高新技术相融合,为校园师生创造科学智能的学习环境,并实现教学资源最大化和信息服务智能化。帮助学校更好地应用校园可视化技术,提升校…...

Python Web框架的三强之争:Flask、Django和FastAPI
JetBrains 公布 2022 Python 开发者调查结果。 完整报告地址:https://lp.jetbrains.com/zh-cn/python-developers-survey-2022/ 这是由 Python 软件基金会 (PSF) 和 JetBrains 共同开展的第六次官方年度 Python 开发者调查,回复于 2022 年 10 月至 12 …...
本地缓存与分布式缓存
一、缓存的概念 在服务端编程当中,缓存主要是指将数据库的数据加载到内存中,之后对该数据的访问都在内存中完成,从而减少了对数据库的访问,解决了高并发场景中数据库容易成为性能瓶颈的问题;以及基于内存的访问速度高…...

LabVIEW如何获取波形图上游标所在位置的数值
LabVIEW如何获取波形图上游标所在位置的数值 获取游标所在位置数值的一种方法是利用波形图的游标列表属性。 在VI的程序框图中,右键单击波形图并选择创建引用 ,然后将创建的引用节点放在程序框图上。 在程序框图上放置一个属性节点,并将其…...

八股文面试day6
什么是代理?为什么要用动态代理? 代理模式大概意思是:为其他对象提供一个代理项或者是占位符,以控制对这个对象的访问 代理模式核心思想:创建一个代理对象,在客户端和目标对象之间的一个中介,…...

【Unity】EventSystem.current.IsPointerOverGameObject()对碰撞体起作用
本来我是用 EventSystem.current.IsPointerOverGameObject()来检测是否点击在UI上的,但是发现,他对我的碰撞体也是返回ture,研究半天。。。。找不出问题,然后发现我的相机上挂载了PhysicsRaycaster,去掉之后就好了,至于…...
形态学操作—闭运算
闭运算(Closing)是图像形态学中的一种操作,它结合了膨胀(Dilation)和腐蚀(Erosion)操作。闭运算的原理是先对图像执行腐蚀操作,然后再进行膨胀操作。这个过程能够消除图像中的小孔洞…...
HEVC-SCC rgb file input
关键字 csc allocateCSCBuffer()-> m_apcPicYuvCSC xCheckRDCostIntraCSC():更简单, enum ACTRDTestTypes { ACT_TWO_CLR 0, //two color space ACT_TRAN_CLR 1, //transformed color space ACT_ORG_CL…...

XG916Ⅱ轮式装载机后驱动桥设计机械设计CAD
wx供重浩:创享日记 对话框发送:装载机 获取完整论文报告工程源文件 本次设计内容为XG916Ⅱ装载机后驱动桥设计,大致上分为主传动的设计,差速器的设计,半轴的设计,最终传动的设计四大部分。其中主传动锥齿轮…...

pcr扩增原理中的变性 退火 延申扩增
一、PCR简介 聚合酶链式反应(PCR)是一种用于放大扩增特定的DNA片段的分子生物学技术,它可看作是生物体外的特殊DNA复制,PCR的最大特点是能将微量的DNA大幅增加。 二、PCR原理 1.背景 DNA的半保留复制是生物进化和传代的重要途…...

C语言——输入一个4位正整数,输出其逆数。
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int i,j 0;int a1,a2,a3,a4;printf("输入一个4位正整数:\n");scanf("%d",&i);a1 i/1000; a2 i/100%10; a3 i/10%10; a4 i%10; printf("千位a1%d,百位a…...

jQuery_02 引入jQuery,初试牛刀
引入jquery文件 我们在官网上点击dowmload那个 会发现进入了一个网页,里面全部是代码,你可能还在想为什么下载不了,其实jquery不跟vue一样,整个jquery就是一个js文件而已,所以直接ctrla 全选 ctrlc复制 ,然…...
pandas获取年月第一天、最后一天,加一秒、加一天、午夜时间
Timestamp对象 # ts = pandas.Timestamp(year=2023, month=10, day=15, # hour=15, minute=5, second=50, tz="Asia/Shanghai") ts = pandas.Timestamp("2023-10-15 15:05:50", tz="Asia/Shanghai") # 2023-10-15 15:05…...

Unsupervised Condition GAN
Unsupervised Condition GAN主要有两种做法: Direct Transformation 直接输入domain X图片,经过Generator后生成对应的domain Y的图像。这种转化input和output不能够差太多。通常只能实现较小的转化,比如改变颜色等。 Projection to Commo…...
Crypto(11)HECTF-rsarsa(明文存在线性关系)
题目如下: from functools import reduce from Crypto.Util.number import * import random from secret import flag,hintdef generate_PQ(bits):x getPrime(bits) >> bits//2 << bits//2#右移bit//2位后左移bit//2位while True:p x random.getran…...

论文阅读 Forecasting at Scale (二)
最近在看时间序列的文章,回顾下经典 论文地址 项目地址 Forecasting at Scale 3.2、季节性 3.3、假日和活动事件3.4、模型拟合3.5、分析师参与的循环建模4、自动化预测评估4.1、使用基线预测4.2、建模预测准确性4.3、模拟历史预测4.4、识别大的预测误差 5、结论6、致…...
刷题感悟w
题目很长的一定要慢慢把题目的意思搞清楚 有重复操作不知道怎么办 可以用数组去标记 你好!在C中,replace 函数通常是用于替换容器(例如 std::vector 或 std::string)中的特定元素的函数。以下是 std::replace 函数的一般用法&…...

记一次linux操作系统实验
前言 最近完成了一个需要修改和编译linux内核源码的操作系统实验,个人感觉这个实验还是比较有意思的。这次实验总共耗时4天,从对linux实现零基础,通过查阅资料和不断尝试,直到完成实验目标,在这过程中确实也收获颇丰&…...

java操作富文本插入到word模板
最近项目有个需求,大致流程是前端保存富文本(html的代码)到数据库,后台需要将富文本代码转成带格式的文字,插入到word模板里,然后将word转成pdf,再由前端调用接口下载pdf文件! 1、思…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...

ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...

20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...