首页 > 其他分享 >STM32中PC13引脚可以当做普通引脚使用吗?如何配置STM32的TAMPER?

STM32中PC13引脚可以当做普通引脚使用吗?如何配置STM32的TAMPER?

时间:2024-07-17 09:27:26浏览次数:16  
标签:引脚 TAMPER PC13 STM32 侵入 GPIO

1.STM32中PC13引脚可以当做普通引脚使用吗?

在STM32单片机中,PC13引脚可以作为普通IO使用,但需要进行一定的配置。PC13通常与RTC侵入检测功能(TAMPER)复用,因此需要关闭TAMPER功能才能将其作为普通IO使用。

如果PC13被用作侵入检测引脚(TAMPER),则需要禁用侵入检测功能,否则会导致备份寄存器数据丢失。具体操作是调用BKP_TamperPinCmd(DISABLE);来关闭TAMPER功能。同时,还需要确保VBAT在关机时不掉电,否则也可能导致数据丢失。

对于JTAG调试占用的情况,可以通过调用以下代码,来禁用JTAG功能,这样PA13、PA14、PA15以及PB3、PB4等引脚都可以作为普通IO使用。

GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);

2.如何配置STM32的TAMPER?

配置STM32的TAMPER需要进行多个步骤,包括禁用侵入检测功能、配置相关时钟和引脚模式等。具体如下:

  • 禁用侵入检测功能:使用BKP_TamperPinCmd(DISABLE);来关闭TAMPER引脚的侵入检测功能。
  • 配置相关时钟:通过RCC_APB2PeriphClockCmd函数使能PORTC时钟和AFIO时钟。例如:
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_AFIO, ENABLE);
  • 配置引脚模式:将PC13配置为普通IO引脚。可以使用GPIO_InitTypeDef结构体进行配置,示例代码如下:
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOC, &GPIO_InitStructure);
  • 关闭LSE:如果使用了LSE(低速外部时钟信号),需要将其关闭,才能将PC14和PC15作为普通IO使用。可以通过RCC_LSEConfig函数实现。例如:
RCC_LSEConfig(RCC_LSE_OFF);
  • 允许修改备份区:使用PWR_BackupAccessCmd(ENABLE);命令来允许对RTC和后备寄存器的修改。
  • 清除侵入事件:在侵入检测事件被检测到并清除后,应该禁止侵入检测引脚TAMPER,然后再重新写入备份数据寄存器前用TPE位启动侵入检测功能,以防止在仍有侵入事件时对备份数据寄存器进行写操作。

        综上所述,配置STM32的TAMPER功能涉及禁用侵入检测、配置时钟和引脚模式等多个步骤,以确保正确实现所需功能。通过遵循上述步骤,可以成功将PC13引脚配置为普通IO使用,并有效管理侵入检测事件。

标签:引脚,TAMPER,PC13,STM32,侵入,GPIO
From: https://blog.csdn.net/2201_75797484/article/details/140484600

相关文章

  • STM32通讯方式总结
    STM32通讯方式总结1.SPI通信(SerialPeripheralinterface,串行外围设备接口)是一种高速的,全双工,同步的串行通信总线功能:SPI接口主要应用于EEPROM,FLASH,各种传感器,AD转换器等W25Q32(芯片)是一种使用SPI通讯协议的NORFLASH存储器——案例:SPI外设读写Flash2.串口通信——通信......
  • stm32用spi开发W25Q128(Flash闪存芯片)
    前提提要spi概念目录stm32用spi开发W25Q128(Flash闪存芯片)开发流程W25Q128(Flash闪存芯片)介绍内存分布引脚说明指令介绍(1) 写使能指令0x06(2) 读状态寄存器0x35(3) 写失能指令0x04(4) 擦除扇区指令0x20(5) 读取厂商和设备ID0x90代码stm32用spi开发W25Q128(Flash闪存芯片)开发......
  • STM32入门教程:智能洗衣机控制
    智能洗衣机是目前流行的智能家居设备之一,它能够自动完成洗衣过程,并且能够根据衣物的种类和数量进行智能调整。在本教程中,我们将使用STM32微控制器来实现一个简单的智能洗衣机控制系统。硬件准备首先,我们需要准备以下硬件材料:STM32开发板(如STM32F407Discovery)液晶显示器(LCD)......
  • 使用STM32实现智能电子秤
    智能电子秤是一种基于微控制器的测量仪器,能够通过传感器测量物体的重量,并将结果显示在液晶屏上。本文将详细介绍如何使用STM32微控制器实现一个简单的智能电子秤。首先,我们需要准备的硬件设备有:STM32开发板(例如STM32F103C8T6)HX711模块(AD转换芯片)串行LCD模块或OLED模块(用于显......
  • STM32第二十课:FreeRTOS任务管理和信号量
    目录一、任务管理方式二、任务堆栈溢出检测三、二值信号量(任务同步)四、计数信号量五、互斥信号量六、队列一、任务管理方式1.任务创建成功后会添加到就绪链表中,开启调度器,此时任务调度器会去就绪链表中找优先级最高的任务执行。若优先级一样则按照创建任务的先后来......
  • STM32智能农业监测系统教程
    目录引言环境准备智能农业监测系统基础代码实现:实现智能农业监测系统4.1数据采集模块4.2数据处理与控制模块4.3通信与网络系统实现4.4用户界面与数据可视化应用场景:农业监测与管理问题解决方案与优化收尾与总结1.引言智能农业监测系统通过STM32嵌入式系统结合各种......
  • STM32标准库函数功能介绍————EXTI库
    1.voidEXTI_DeInit(void);函数解释:EXTI的反初始化函数,即恢复默认状态。参数解释:无参数2.voidEXTI_Init(EXTI_InitTypeDef*EXTI_InitStruct);函数解释:EXTI的初始化函数参数解释:注意要加&号3.voidEXTI_StructInit(EXTI_InitTypeDef*EXTI_InitStruct);函数解释:将EXTI......
  • STM32F103控制0.96寸OLED显示
            OLED支持IIC通信,IIC通信的详细知识在(http://t.csdnimg.cn/VALuO)中可以查看,STM32通过IIC将要显示的数据传输到OLED屏幕上。        除了需要显示的信息需要传输外,还有显示的坐标也需要传输。那么具体的操作如下所示:1.首先配置IIC通信的时钟线与数据线......
  • 【STM32本科毕业设计】基于STM32的心电采集系统
    基于STM32的心电采集系统一.概述二.设计方案1.前端模拟放大电路2.负电源产生电路3.心电放大电路4.电压抬升电路三.单片机部分1.主控单元选取2.信号的采集与传输3.定时器配置PWM输出关键代码4.干扰来源分析5.数字陷波滤波器的设计6.数字高通滤波器的设计7.......
  • STM32H750XBH6使用LTDC点亮7英寸LCD(1024*600)
    起因最近画的板子回来了,正好试验一下画的LCD接口是否有问题,买的正点原子的7寸lcd屏幕,使用Cubemx去配置LTDC点亮lcd。工程配置首先打开Cubemx,选好芯片型号(我用的是STM32H750XBH6),配置高速外部时钟;时钟树配置主频为400MHz(时钟速度按照自己需求来,我一般开到400M完全够用);打开......