当 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. Symfony2 学习笔记之内部构件

    Symfony2内部是怎样工作的以及我们如何来扩展它呢?从外部整体上看,symfony2代码是由许多独立的层构成,每一层都是建立在前一层基础之上.其中,自动加载时不受框架直接管理的,它完全是在Univ ...

  2. 纠结的ARC

    xcode不断进步,在xcode4中引入了ARC的概念.您用或者不用它就在那里,于是有了本文:如何在未使用arc的工程中引入一个使用了arc特性的文件,如何在arc工程中引用未使用arc的文件.其实说 ...

  3. Android的Adapter用法

    1.概念 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的View(ListView,GridView)等地方都需要用到Adapter.如下图直 ...

  4. 【C++】统计代码覆盖率(三)

    报告集成到jenkins才是最终目的,因此又进行了部分资料查找,得到html和xml报告集成jenkins的配置如下: 一 集成html报告 这种方式集成在你已经用gcov+lcov生成了html报告 ...

  5. selenium python (五)打印信息及设置等待时间

    #!/usr/bin/python# -*- coding: utf-8 -*-__author__ = 'zuoanvip' #一般情况下我们要验证打开的页面是否正确,可通过网页的Title和Cur ...

  6. SQL Server 2008 备份改进版

    1.Add compressing function with 7-Zip 2.With tool win.rar code so you can change it if you want USE ...

  7. C++11中的右值引用

    原文出处:http://kuring.me/post/cpp11_right_reference May 18, 2015 移动构造函数 C++98中的左值和右值 C++11右值引用和移动语义 强制移 ...

  8. 【2013微软面试题】输出节点数为n的二叉树的所有形态

    转自:http://blog.csdn.net/monsterxd/article/details/8449005 /* *  题意,求节点数为n的二叉树的所有形态,先要想个方式来唯一标示一棵二叉树 ...

  9. with 语句

    with 语句用于设置代码在特定对象中的作用域. 它的语法: with (expression) statement例如: var sMessage = "hello"; with ...

  10. This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决

    在一个Mysql表达式中使用嵌套查询,出现了这个错误.原因是内层select语句带有limit子句.   在网上查了下,有文章指出: 比如这样的语句是不能正确执行的. select * from ta ...