stm32f103r6最小系统原理图_超强PCB布线设计经验谈附原理图

在当今激烈竞争的电池供电市场中,由于成本指标限制,设计人员常常使用双面板。尽管多层板(4层、6层及8层)方案在尺寸、噪声和性能方面具有明显 优势,成本压力却促使工程师们重新考虑其布线策略,采用双面板。在本文中,我们将讨论自动布线功能的正确使用和错误使用,有无地平面时电流回路的设计策 略,以及对双面板元件布局的建议。
自动布线的优缺点以及模拟电路布线的注意事项
设计PCB(https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.1ee81debQP4jiF&ft=t&id=615542809917)时,往往很想使用自动布线。通常,纯数字的电路板(尤其信号电平比较低,电路密度比较小时)采用自动布线是没有问题的。但是,在设计模拟、混合信号或高速电路板时,如果采用布线软件的自动布线工具,可能会出现一些问题,甚至很可能带来严重的电路性能问题。
例如,图1中显示了一个采用自动布线设计的双面板的顶层。此双面板的底层如图2所示,这些布线层的电路原理图如图3a和图3b所示。设计此混合信号电路板时,经仔细考虑,将器件手工放在板上,以便将数字和模拟器件分开放置。
采 用这种布线方案时,有几个方面需要注意,但最麻烦的是接地。如果在顶层布地线,则顶层的器件都通过走线接地。器件还在底层接地,顶层和底层的地线通过 电路板最右侧的过孔连接。当检查这种布线策略时,首先发现的弊端是存在多个地环路。另外,还会发现底层的地线返回路径被水平信号线隔断了。这种接地方案的 可取之处是,模拟器件(12位A/D转换器MCP3202和2.5V参考电压源MCP4125)放在电路板的最右侧,这种布局确保了这些模拟芯片下面不会 有数字地信号经过。
图3a和图3b所示电路的手工布线如图4、图5所示。在手工布线时,为确保正确实现电路,需要遵循一些通用的设计 准则:尽量采用地平面作为电流回路;将模拟地平面和数字地平面分开;如果地平面被信号走线隔断,为降低对地电流回路的干扰,应使信号走线与地平面垂直;模 拟电路尽量靠近电路板边缘放置,数字电路尽量靠近电源连接端放置,这样做可以降低由数字开关引起的di/dt效应。
这两种双面板都在底层布有地平面,这种做法是为了方便工程师解决问题,使其可快速明了电路板的布线。厂商的演示板和评估板通常采用这种布线策略。但是,更为普遍的做法是将地平面布在电路板顶层,以降低电磁干扰。

9d554cebb54ba0f028d877fe2fb338fb.png

图 1 采用自动布线为图3所示电路原理图(https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.1ee81debQP4jiF&ft=t&id=615542809917)设计的电路板的顶层

9d554cebb54ba0f028d877fe2fb338fb.png

图 2 采用自动布线为图3所示电路原理图设计的电路板的底层

69c9f90c74ab184721b303ed28c51d4b.png

图 3a 图1、图2、图4和图5中布线的电路原理图

99cee75c8e1443b4be6c1df770f68f5e.png

图 3b 图1、图2、图4和图5中布线的模拟部分电路原理图

有无地平面时的电流回路设计
对于电流回路,需要注意如下基本事项:
1. 如果使用走线,应将其尽量加粗
PCB上的接地连接如要考虑走线时,设计应将走线尽量加粗。这是一个好的经验法则,但要知道,接地线的最小宽度是从此点到末端的有效宽度,此处“末端”指距离电源连接端最远的点。
2. 应避免地环路
3. 如果不能采用地平面,应采用星形连接策略(见图6)
通过这种方法,地电流独立返回电源连接端。图6中,注意到并非所有器件都有自己的回路,U1和U2是共用回路的。如遵循以下第4条和第5条准则,是可以这样做的。
4. 数字电流不应流经模拟器件
数 字器件开关时,回路中的数字电流相当大,但只是瞬时的,这种现象是由地线的有效感抗和阻抗引起的。对于地平面或接地走线的感抗部分,计算公式为V = Ldi/dt,其中V是产生的电压,L是地平面或接地走线的感抗,di是数字器件的电流变化,dt是持续时间。对地线阻抗部分的影响,其计算公式为V= RI, 其中,V是产生的电压,R是地平面或接地走线的阻抗,I是由数字器件引起的电流变化。经过模拟器件的地平面或接地走线上的这些电压变化,将改变信号链中信 号和地之间的关系(即信号的对地电压)。
5. 高速电流不应流经低速器件
与上述类似,高速电路的地返回信号也会 造成地平面的电压发生变化。此干扰的计算公式和上述相同,对于地平面或接地走线的感抗,V = Ldi/dt ;对于地平面或接地走线的阻抗,V = RI 。与数字电流一样,高速电路的地平面或接地走线经过模拟器件时,地线上的电压变化会改变信号链中信号和地之间的关系。

9d554cebb54ba0f028d877fe2fb338fb.png

图 4 采用手工走线为图3所示电路原理图设计的电路板的顶层

10b6cbde82a52eb2d1b86e77a75a43f4.png

图 5 采用手工走线为图3所示电路原理图设计的电路板的底层

ca80fbae279f7e97a8eb3779735f01c1.png

图 6 如果不能采用地平面,可以采用“星形”布线策略来处理电流回路

8f4950ce38862f2cb09b2e6b6b734837.png

图 7 分隔开的地平面有时比连续的地平面有效,图b)接地布线策略比图a) 的接地策略理想


6. 不管使用何种技术,接地回路必须设计为最小阻抗和容抗
7. 如使用地平面,分隔开地平面可能改善或降低电路性能,因此要谨慎使用
分开模拟和数字地平面的有效方法如图7所示
图7中,精密模拟电路更靠近接插件,但是与数字网络和电源电路的开关电流隔离开了。这是分隔开接地回路的非常有效的方法,我们在前面讨论的图4和图5的布线也采用了这种技术。
超强PCB布线设计经验谈附原理图(二)
工 程领域中的数字设计人员 和数字电路板设计专家在不断增加,这反映了行业的发展趋势。尽管对数字设计的重视带来了电子产品的重大发展,但仍然存在,而且还会一直存在一部分与模拟或 现实环境接口的电路设计。模拟和数字领域的布线策略有一些类似之处,但要获得更好的结果时,由于其布线策略不同,简单电路布线设计就不再是最优方案了。本 文就旁路电容、电源、地线设计、电压误差和由PCB布线引起的电磁干扰(EMI)等几个方面,讨论模拟和数字布线的基本相似之处及差别。
模拟和数字布线策略的相似之处
旁路或去耦电容
在布线时,模拟器件和数字器件都需要这些类型的电容,都需要靠近其电源引脚连接一个电容,此电容值通常为0.1mF。系统供电电源侧需要另一类电容,通常此电容值大约为10mF。
这些电容的位置如图1所示。电容取值范围为推荐值的1/10至10倍之间。但引脚须较短,且要尽量靠近器件(对于0.1mF电容)或供电电源(对于10mF电容)。
在 电路板上加旁路或去耦电容,以及这些电容在板上的位置,对于数字和模拟设计来说都属于常识。但有趣的是,其原因却有所不同。在模拟布线设计中,旁路电容通 常用于旁路电源上的高频信号,如果不加旁路电容,这些高频信号可能通过电源引脚进入敏感的模拟芯片。一般来说,这些高频信号的频率超出模拟器件抑制高频信 号的能力。如果在模拟电路中不使用旁路电容的话,就可能在信号路径上引入噪声,更严重的情况甚至会引起振动。

72d9a9bca37d03806a53cd2319381763.png

图 1 在模拟和数字PCB设计中,旁路或去耦电容(1mF)应尽量靠近器件放置。供电电源去耦电容(10mF)应放置在电路板的电源线入口处。所有情况下,这些电容的引脚都应较短

d5c306cc9ad1d32fad61a2e9ac3aecab.png

图 2 在此电路板上,使用不同的路线来布电源线和地线,由于这种不恰当的配合,电路板的电子元器件和线路受电磁干扰的可能性比较大

e9d0d8bf8ad8c547f6f669bef5a68e95.png

图 3 在此单面板中,到电路板上器件的电源线和地线彼此靠近。此电路板中电源线和地线的配合比图2中恰当。电路板中电子元器件和线路受电磁干扰(EMI)的可能性降低了679/12.8倍或约54倍


对 于控制器和处理器这样的数字器件,同样需要去耦电容,但原因不同。这些电容的一个功能是用作“微型”电荷库。在数字电路中,执行门状态的切换通常需要 很大的电流。由于开关时芯片上产生开关瞬态电流并流经电路板,有额外的“备用”电荷是有利的。如果执行开关动作时没有足够的电荷,会造成电源电压发生很大 变化。电压变化太大,会导致数字信号电平进入不确定状态,并很可能引起数字器件中的状态机错误运行。流经电路板走线的开关电流将引起电压发生变化,电路板 走线存在寄生电感,可采用如下公式计算电压的变化:V = LdI/dt
其中,V = 电压的变化;L = 电路板走线感抗;dI = 流经走线的电流变化;dt =电流变化的时间。
因此,基于多种原因,在供电电源处或有源器件的电源引脚处施加旁路(或去耦)电容是较好的做法。
电源线和地线要布在一起
电源线和地线的位置良好配合,可以降低电磁干扰的可能性。如果电源线和地线配合不当,会设计出系统环路,并很可能会产生噪声。电源线和地线配合不当的PCB设计示例如图2所示。
此电路板上,设计出的环路面积为697cm2。采用图3所示的方法,电路板上或电路板外的辐射噪声在环路中感应电压的可能性可大为降低。
模拟和数字领域布线策略的不同之处
地平面是个难题
电 路板布线的基本知识既适用于模拟电路,也适用于数字电路。一个基本的经验准则是使用不间断的地平面,这一常识降低了数字电路中的dI/dt(电流随时 间的变化)效应,这一效应会改变地的电势并会使噪声进入模拟电路。数字和模拟电路的布线技巧基本相同,但有一点除外。对于模拟电路,还有另外一点需要注 意,就是要将数字信号线和地平面中的回路尽量远离模拟电路。这一点可以通过如下做法来实现:将模拟地平面单独连接到系统地连接端,或者将模拟电路放置在电 路板的最远端,也就是线路的末端。这样做是为了保持信号路径所受到的外部干扰最小。对于数字电路就不需要这样做,数字电路可容忍地平面上的大量噪声,而不 会出现问题。

43ad1aaefba06da7bdee0069940a5e5f.png

图 4 (左)将数字开关动作和模拟电路隔离,将电路的数字和模拟部分分开。 (右) 要尽可能将高频和低频分开,高频元件要靠近电路板的接插件

6d3e703cc261e8266679e939875d4a4e.png

图 5 在PCB上布两条靠近的走线,很容易形成寄生电容。由于这种电容的存在,在一条走线上的快速电压变化,可在另一条走线上产生电流信号

d8027e2a002c7b8077fcaed09f7d66c9.png

图 6 如果不注意走线的放置,PCB中的走线可能产生线路感抗和互感。这种寄生电感对于包含数字开关电路的电路运行是非常有害的


元件的位置
如 上所述,在每个PCB设计中,电路的噪声部分和“安静”部分(非噪声部分)要分隔开。一般来说,数字电路“富含”噪声,而且对噪声不敏感(因为数字电路有 较大的电压噪声容限);相反,模拟电路的电压噪声容限就小得多。两者之中,模拟电路对开关噪声最为敏感。在混合信号系统的布线中,这两种电路要分隔开,如 图4所示。
PCB设计产生(https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.1ee81debQP4jiF&ft=t&id=615542809917)的寄生元件
PCB设计中很容易形成可能产生问题的两种基本寄生元件:寄生电容 和寄生电感。设计电路板时,放置两条彼此靠近的走线就会产生寄生电容。可以这样做:在不同的两层,将一条走线放置在另一条走线的上方;或者在同一层,将一 条走线放置在另一条走线的旁边,如图5所示。在这两种走线配置中,一条走线上电压随时间的变化(dV/dt)可能在另一条走线上产生电流。如果另一条走线 是高阻抗的,电场产生的电流将转化为电压。
快速电压瞬变最常发生在模拟信号设计的数字侧。如果发生快速电压瞬变的走线靠近高阻抗模拟走线,这种误差将严重影响模拟电路的精度。在这种环境中,模拟电路有两个不利的方面:其噪声容限比数字电路低得多;高阻抗走线比较常见。
采 用下述两种技术之一可以减少这种现象。最常用的技术是根据电容的方程,改变走线之间的尺寸。要改变的最有效尺寸是两条走线之间的距离。应该注意,变量 d在电容方程的分母中,d增加,容抗会降低。可改变的另一个变量是两条走线的长度。在这种情况下,长度L降低,两条走线之间的容抗也会降低。
另一种技术是在这两条走线之间布地线。地线是低阻抗的,而且添加这样的另外一条走线将削弱产生干扰的电场,如图5所示。
电 路板中寄生电感产生的原理与寄生电容形成的原理类似。也是布两条走线,在不同的两层,将一条走线放置在另一条走线的上方;或者在同一层,将一条走线放 置在另一条的旁边,如图6所示。在这两种走线配置中,一条走线上电流随时间的变化(dI/dt),由于这条走线的感抗,会在同一条走线上产生电压;并由于 互感的存在,会在另一条走线上产生成比例的电流。如果在第一条走线上的电压变化足够大,干扰可能会降低数字电路的电压容限而产生误差。并不只是在数字电路 中才会发生这种现象,但这种现象在数字电路中比较常见,因为数字电路中存在较大的瞬时开关电流。
为消除电磁干扰源的潜在噪声,最好将“安静”的模拟线路和噪声I/O端口分开。要设法实现低阻抗的电源和地网络,应尽量减小数字电路导线的感抗,尽量降低模拟电路的电容耦合。
结语
数字和模拟范围确定后,谨慎地布线对获得成功的PCB至关重要。布线策略通常作为经验准则向大家介绍,因为很难在实验室环境中测试出产品的最终成功与否。因此,尽管数字和模拟电路的布线策略存在相似之处,还是要认识到并认真对待其布线策略的差别。
超强PCB布线设计经验谈附原理图(https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.1ee81debQP4jiF&ft=t&id=615542809917)(三)
布线需要考虑的问题很多,但是最基本的的还是要做到周密,谨慎。
寄生元件危害最大的情况
印 刷电路板布线产生的主要寄生元件包括:寄生电阻、寄生电容和寄生电感。例如:PCB的寄生电阻由元件之间的走线形成;电路板上的走线、焊盘和平行走线会产 生寄生电容;寄生电感的产生途径包括环路电感、互感和过孔。当将电路原理图转化为实际的PCB时,所有这些寄生元件都可能对电路的有效性产生干扰。本文将 对最棘手的电路板寄生元件类型 — 寄生电容进行量化,并提供一个可清楚看到寄生电容对电路性能影响的示例。

e2be569ca2dbec21afa4e830ceb268ff.png

图1 在PCB上布两条靠近的走线,很容易产生寄生电容。由于这种寄生电容的存在,在一条走线上的快速电压变化会在另一条走线上产生电流信号。

7305d152c1bd70c3c3fbefeee9c875bc.png

图2 用三个8位数字电位器和三个放大器提供65536个差分输出电压,组成一个16位D/A转换器。如果系统中的VDD为5V,那么此D/A转换器的分辨率或LSB大小为76.3mV。

eb3b991af149020aeb03ab714abaf1a4.png

图3 这是对图2所示电路的第一次布线尝试。此配置在模拟线路上产生不规律的噪声,这是因为在特定数字走线上的数据输入码随着数字电位器的编程需求而改变。


寄生电容的危害
大多数寄生电容都是靠近放置两条平行走线引起的。可以采用图1所示的公式来计算这种电容值。
在混合信号电路中,如果敏感的高阻抗模拟走线与数字走线距离较近,这种电容会产生问题。例如,图2中的电路就很可能存在这种问题。
为 讲解图2所示电路的工作原理,采用三个8位数字电位器和三个CMOS运算放大器组成一个16位D/A转换器。在此图的左侧,在VDD和地之间跨接了两 个数字电位器(U3a和U3b),其抽头输出连接到两个运放(U4a和U4b)的正相输入端。数字电位器U2和U3通过与单片机(U1)之间的SPI接口 编程。在此配置中,每个数字电位器配置为8位乘法型D/A转换器。如果VDD为5V,那么这些D/A转换器的LSB大小等于19.61mV。
这两个数字电位器的抽头都分别连接到两个配置了缓冲器的运放的正相输入端。在此配置中,运放的输入端是高阻抗的,将数字电位器与电路其它部分隔离开了。这两个放大器配置为其输出摆幅限制不会超出第二级放大器的输入范围。

3a2890060e987fa93657ebfa33b36695.png

图 4 在此示波器照片中,最上面的波形取自JP1(到数字电位器的数字码),第二个波形取自JP5(相邻模拟走线上的噪声),最下面的波形取自TP10(16位D/A转换器输出端的噪声)。

eb3b991af149020aeb03ab714abaf1a4.png

图 5 采用这种新的布线,将模拟线路和数字线路隔离开了。增大走线之间的距离,基本消除了在前面布线中造成干扰的数字噪声。

4b11609cd91708794ffaa2cc59a02460.png

图 6 图中示出了采用新布线的16位D/A转换器的单个码转换结果,对数字电位器编程的数字信号没有造成数字噪声。
为 使此电路具有16位D/A转换器的性能,采用第三个数字电位器(U2a)跨接在两个运放(U4a和U4b)的输出端之间。U3a和U3b的编程设定经 数字电位器后的电压值。如果VDD为5V,可以将U3a和U3b的输出编程为相差19.61mV。此电压大小经第三个8位数字电位器R3,则自左至右整个 电路的LSB大小为76.3mV。此电路获得最优性能所需的严格器件规格如表1所示。
此电路有两种基本工作模式。第一种模式可用于获 得可编程、可调节的直流差分电压。在此模式中,电路的数字部分只是偶尔使用,在正常工作时不使用。第二种模式是可以将此电路用作任意波形发生器。在此模式 中,电路的数字部分是电路运行的必需部分。此模式中可能发生电容耦合的危险。
图 2 所示电路的第一次布线如图3所示。此电路是在实验室中快速设计出的,没有注意细节。在检查布线时,发现将数字走线布在了高阻抗模拟线路的旁边。需要强调的是,第一次就应该正确布线,本文的目的是为了讲解如何识别问题及如何对布线做重大改进。
看一下此布线中不同的走线,可以明显看到哪里可能存在问题。图中的模拟走线从U3a的抽头连接到U4a放大器的高阻抗输入端。图中的数字走线传送对数字电位器设置进行编程的数字码。
在测试板上经过测量,发现数字走线中的数字信号耦合到了敏感的模拟走线中,参见图4。
系统中对数字电位器编程的数字信号沿着走线逐渐传输到输出直流电压的模拟线路。此噪声通过电路的模拟部分一直传播到第三个数字电位器(U5a)。第三个数字电位器在两个输出状态之间翻转。解决这个问题的方法主要是分隔开走线,图5示出了改进的布线方案。
改变布线的结果如图6所示。将模拟和数字走线仔细分开后,电路成为非常“干净”的16位D/A转换器。图中的波形是第三个数字电位器的单码转换结果76.29mV。

更多精彩:(https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.1ee81debQP4jiF&ft=t&id=615542809917)
结语
数字和模拟范围确定后,谨慎布线对获得成功的PCB是至关重要的。尤其是有源数字走线靠近高阻抗模拟走线时,会引起严重的耦合噪声,这只能通过增加走线之间的距离来避免

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/367483.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[UE4GamePlay架构(九)GameInstance(转)

GameInstance这个类可以跨关卡存在,它不会因为切换关卡或者切换游戏模式而被销毁。然而,GameMode和PlayController就会再切换关卡或者游戏模式时被引擎销毁重置,这样他们里面的状态就不能被保存。比如,你想再下一个关卡中知道上一…

灵格斯怎么屏幕取词_电脑包尺寸怎么选?手提的好还是双肩的好?比较推荐哪款电脑包?...

在携带笔记本电脑的时候,一般都会用到电脑包,那么电脑包的尺寸该怎么选呢?为了能更好的装下电脑,电脑包的尺寸必须要比笔记本电脑的尺寸大一些,而不能刚刚好。笔记本的尺寸参数一般是指屏幕尺寸,而整个机身…

JSBridge实战

前言 H5 VS Native 一直是前端技术界争执不下的话题。react、vue等技术栈引领着纯H5开发,rn、week则倡导原生体验。但在项目实战中,经常会选择一个中立的方案:混合开发。大众称呼:Hybrid。 本人目前从事新闻类产品研发&#xff…

单元测试Java Hadoop作业

在我以前的文章中,我展示了如何设置一个完整的基于Maven的项目,以用Java创建Hadoop作业。 当然并没有完成,因为它缺少单元测试部分。 在本文中,我将展示如何将MapReduce单元测试添加到我之前开始的项目中。 对于单元测试&#xff…

vue2.0中的:is和is的区别

此文首发于 https://lijing0906.github.io/ 最近,工作之余在翻阅vue.js的官方文档,在查看到动态组件和解析 DOM 模板时的注意事项的时候,讲到一个特殊的is特性,觉得很有意思,就来写一篇自己理解的总结。 现场 写栗子…

mysql复制模式第二部分-----双主模式

双主配置 我在配置主从服务器时,使用了两台服务器:10.19.34.126和10.19.34.91。 1、首先需要在这两台上搭建单独的mysql服务masterA和masterB。 2、配置数据库masterA,要对每一个数据库服务配置唯一标示,参数名为server-id&#x…

pde中微元分析法的主要思想_初中数学常用的思想方法丨所有题型的考试技巧最全整理,高分必备...

【导语】初中数学虽然是基础数学,但是这并不意味着就没有难度,特别是在素质教育下,从培养学生综合素质能力的角度出发,初中数学越来越重视数学思维的培养,因此在很多数学问题的设置上,都进行了相当难度的调…

解决IntelliJ IDEA控制台乱码问题[包含程序运行时的log4j日志以及tomcat日志乱码]...

一、控制台打印的程序运行时的log4j日志中包含中文乱码 在IDEA安装目录的bin目录下找到名为"idea.exe.vmoptions"的文件: 使用文本编译软件(Notepad等)打开此文件,在文件内容从末尾追加一行设置(-Dfile.encodingUTF-8)&…

php识别地址,实现地址自动识别实例(PHP)

具体问题具体分析!代码实现基于laravel完成。一个laravel完整的功能得具备这些:路由route,Model, View, Controller, 我这里用的有依赖注入服务容器等功能,当然,用到地址,你首先要有地址库。。。下面来看看…

kubernetes cpu限制参数说明

docker CPU限制参数 Option Description --cpus<value> Specify how much of the available CPU resources a container can use. For instance, if the host machine has two CPUs and you set --cpus"1.5", the container is guaranteed at most one and …

Java 8备忘单中的可选

Java 8 java.util.Optional<T>是scala.Option[T]和Data.Maybe在Haskell中的较差表亲。 但这并不意味着它没有用。 如果您不熟悉此概念&#xff0c;请将Optional想象为可能包含或不包含某些值的容器。 就像Java中的所有引用都可以指向某个对象或为null &#xff0c; Optio…

让 Chrome 崩溃的一行 CSS 代码

一般的 CSS 代码只会出现 UI 版式或者兼容性方面的小问题。但这里我们要分享一行有趣的 CSS&#xff0c;它可以直接让你的 Chrome 页面挂掉 :) 复现 在 Chrome 里打开一个稍复杂的页面&#xff0c;比如知乎或者掘金打开开发者工具&#xff0c;为页面 <body> 增加样式 s…

用Vue Node从零开始实现拼多多前后端商城项目 — 记录踩坑之旅(上篇)

前言 本人移动端开发妹子工程师一枚 &#xff0c;因为公司项目需要用到前端的技术(主要是vue)&#xff0c;自己自学了一段时间&#xff0c;最近花了半个月在工作之余的时间终于自己完完整整写下来一整个前后端商城项目(当然是跟了一个线上项目直播班&#xff0c;不要嘲笑我)&am…

系统重装助手教你如何在Microsoft Edge中恢复“关闭所有选项卡”警告

在Microsoft Edge中&#xff0c;当您打开多个选项卡时&#xff0c;浏览器将显示“您要关闭所有选项卡吗&#xff1f;” 警告&#xff0c;以防止您意外关闭重要标签。 通常&#xff0c;在没有第二个想法的情况下&#xff0c;您会立即禁用此功能&#xff0c;检查提示中的“始终关…

受JAAS保护的JAX-RS端点

随着RESTFUL&#xff08;JAX-RS&#xff09;作为创建Web服务端点的“首选”方式的问世&#xff0c;很长一段时间以来&#xff0c;我一直想知道人们如何围绕它实现安全机制。 归根结底&#xff0c;我假设JAX-RS的基础实现是servlet&#xff0c;因此其安全性也可能围绕容器&…

前端必须懂的计算机网络知识—(跨域、代理、本地存储)

前端必须懂的计算机网络知识系列文章&#xff1a; DNS服务器和跨域问题计算机网络的分层模型IP地址和MAC地址前端必须懂的计算机网络知识—(跨域、代理、本地存储)前端必须懂的计算机网络知识—(TCP)前端必须懂的计算机网络知识—(HTTP)前端必须懂的计算机网络知识—(XSS、CSR…

php canvas 前端JS压缩,获取图片二进制流数据并上传

<?php if(isset($_GET[upload]) && $_GET[upload] img){//二进制数据流$data file_get_contents ( php://input ); // 不需要php.ini设置&#xff0c;内存压力小if(empty($data)){$data gzuncompress ( $GLOBALS [HTTP_RAW_POST_DATA] ); // 需要php.ini设…

cordova监听事件中调用其他方法_Laravel模型事件的实现原理详解

模型事件在 Laravel 的世界中&#xff0c;你对 Eloquent 大多数操作都会或多或少的触发一些模型事件&#xff0c;下面这篇文章主要给大家介绍了关于Laravel模型事件的实现原理&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;需要的朋友可以参考借鉴。前言Laravel的ORM…

【译】10个有趣的JSCSS库(2018.10)

Tutorialzine每月都会给我们精心挑选优秀的web开发资源&#xff0c;这些资源可以帮助我们解锁最新和最炫酷的网络开发姿势。前端er,让我们一起先睹为快吧&#xff01; WatermelonDB WatermelonDB是用于构建React和React Native应用程序的下一代数据库。快速&#xff0c;高度可…

自定义分页器

好久没来写东西那&#xff01;今天写个自定义分页器给大家参考下吧 首先我们在自己创建的Django项目的app下新建一个utils文件夹&#xff0c;用来放我们的分页器组件 简单说下分页器实现原理&#xff1a; 1.利用ORM查询语句的限制数据条数来确定每页显示的数据 2.设置我们每页显…