当 TAMPER引脚上的信号从 0变成1或者从 1变成 0(取决于备份控制寄存器
BKP_CR的 TPAL位),会产生一个侵入检测事件。侵入检测事件将所有数据备份
寄存器内容清除。 
 
然而为了避免丢失侵入事件,侵入检测信号是边沿检测的信号与侵入检测允许位
的逻辑与,从而在侵入检测引脚被允许前发生的侵入事件也可以被检测到。 
 
●  当 TPAL=0 时:如果在启动侵入检测 TAMPER引脚前(通过设置 TPE位)该
引脚已经为高电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件
(尽管在 TPE位置 1后并没有出现上升沿)。

●  当 TPAL=1 时:如果在启动侵入检测引脚 TAMPER前(通过设置 TPE位)该
引脚已经为低电平,一旦启动侵入检测功能,则会产生一个额外的侵入事件
(尽管在 TPE位置 1后并没有出现下沿)。

在一个侵入事件被检测到并被清除后,侵入检测引脚 TAMPER应该被禁止。

然后,在再次写入备份数据寄存器前重新用 TPE位启动侵入检测功能。

这样,可以阻止软件在侵入检测引脚上仍然有侵入事件时对备份数据寄存器进写操作。

这相当于对侵入引脚 TAMPER进电平检测。 
 
注:当 VDD电源断开时,侵入检测功能仍然有效。

为避免不必要的复位数据备份寄存器,TAMPER引脚应该在片外连接到正确的电平。

为实现防放拆机功能, 确保机壳未打开时, 开关S1处于闭合状态. 当机壳被打开后, 开关S1处于断开状态.

当机壳未打开时, TMAPER引脚上拉到 VBAT 为高电平.

当机壳被打开后, TAMPER 引脚为低电平, 内部TAMPER检测电路被触发, 备份数据被清除.

C1 和 R2 组成充放电电路, 防止开关 S1 抖动. D1 防止电流倒灌到电池BT1. R1 防止外部干扰.

TAMPER 配置为当 TAMPER引脚上的信号从 1 变成 0时, 产生一个侵入检测事件.

侵入检测事件将所有数据备份寄存器内容清除。

备份控制寄存器BKP_CR的 TPAL位 = 1 : 下降沿或者低电平触发检测电路.

STM32的TAMPER-RTC管脚作为Tamper使用 - 防拆机的更多相关文章

  1. 转载 STM32 使用Cubemx 建一个USB(HID)设备下位机,实现数据收发

    STM32 使用Cubemx 建一个USB(HID)设备下位机,实现数据收发  本文转载自 https://www.cnblogs.com/xingboy/p/9913963.html 这里我主要说一 ...

  2. STM32的TAMPER-RTC管脚作为Tamper的使用[转]

    问题一: 当 TAMPER引脚上的信号从 0变成1或者从 1变成 0(取决于备份控制寄存器BKP_CR的 TPAL位),会产生一个侵入检测事件.侵入检测事件将所有数据备份寄存器内容清除.   然而为了 ...

  3. STM32 使用Cubemx 建一个USB(HID)设备下位机,实现数据收发

    这里我主要说一下如何做一个USB下位机,这里主要分3部分:1.建立工程:2.添加报文描述符:3.数据的传输.这里就不讲USB的理论知识了,有想要了解的自行百度一下就可以了. 建立工程:工程建立参考:h ...

  4. Bypass 360主机卫士SQL注入防御(附tamper脚本)

    0x01 前言 在测试过程中,经常会遇到一些主机防护软件,对这方面做了一些尝试,可成功bypass了GET和POST的注入防御,分享一下姿势. 0x02 环境搭建 Windows Server 200 ...

  5. 使用sqlmap中的tamper脚本绕过waf

    使用sqlmap中tamper脚本绕过waf 脚本名:0x2char.py 作用:用UTF-8全角对应字符替换撇号字符 作用:用等价的CONCAT(CHAR(),...)对应替换每个(MySQL)0x ...

  6. Tamper Data 安装与使用

    Tamper Data概览   注意:我将会讲述一些有关Tamper Data的基本常识,包括它的基本功能,如何安装等. Tamper Data是什么?   Tamper Data 的真实含义,即&q ...

  7. STM32的PA15、PB3、 PB4管脚作普通管脚的解决办法

      最近做了一个板子,使用的是SWD方式进行下载程序,仅仅使用到SWDIO(PA13) 和SWCLK(PA14)两个管脚.我将PA15(JTDI)和PB3(JTDO)管脚用于他用(用于点LED使用), ...

  8. Sqlmap过waf命令tamper各脚本的适用环境

    0x00 相信很多小伙伴和我一样感同身受,站上明明有注入可是被万恶的WAF拦截了或者过滤了,这时候就需要用到SQLMAP强大的tamper了. 0x01 使用方法--tamper xxx.py apo ...

  9. sqlmap tamper脚本备忘录与tamper脚本编写

    查看sqlmap全部脚本 $ python sqlmap.py --list-tampers 使用方法 --tamper=TAMPER 2019.9更新后翻译 * apostrophemask.py- ...

随机推荐

  1. 在Linux上安装多Jboss个需要修改的端口

    如果在一台机器上部署了多个jboss server,需要修改相关端口以避免端口冲突.目前确认需要修改的配置如下一.vi $JBOSS_HOME/server/default/conf/jboss-se ...

  2. php的header()大全

    <?php /*** Function: PHP header() examples (PHP) ** Desc: Some examples on how to use the header( ...

  3. invalid initialization of non-const reference of type与discards qualifiers

    参数传递          函数参数的传递是初始化语义:用调用者的实参去初始化函数的形参,如果参数是对象,需要调用该类的拷贝构造函数,如果没有显式定义的拷贝构造函数,则执行默认的按成员拷贝      ...

  4. PHP如何返回json格式的数据

    我们常见一些网站在做ajax时返回JSON格式的数据: 返回的是json格式的数据 这有什么好处那?很显然前端在接到返回的数据时可以直接使用,而不用再用eval('(+ returnString +) ...

  5. OTG_FS_ID功能及引申

    1. 概要   OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,充当USB Host,A-Device始终为总线   提供电力,ID悬空被称作为B-Devi ...

  6. C#拼音转换,将简体中文转换成拼音

    1. 要进行拼音转换操作,首先要引入几个文件,也就是用于操作拼音转换的文件,就是微软提供给开发者的一个类库 Microsoft Visual Studio International Pack 1.0 ...

  7. jQuery对select标签的常用操作

    1.获取当前选中项的value. $("#selector").val(); 2.获取当前选中项的text. $("#selector").find(" ...

  8. WMI使用的WIN32_类库名

    WMI使用的WIN32_类库名 包括:硬件类.操作系统类.安装应用程序类.WMI服务管理类.性能计数器类1.硬件类冷却类别Win32_Fan--风扇Win32_HeatPipe--热管Win32_Re ...

  9. WCF配置文件全攻略

    參考:http://www.cnblogs.com/wayfarer/archive/2007/08/24/867987.html http://www.cnblogs.com/scy251147/a ...

  10. ACM2050前传

    n在一个平面上有一个圆和n条直线,这些直线中每一条在圆内 同其他直线相交,假设没有3条直线相交于一点,试问这些直线 将圆分成多少区域.   使用递归 F(1)=2; F(n) = F(n-1)+n; ...