first submission

This commit is contained in:
qiyongshuang
2023-02-01 14:19:13 +08:00
parent d534aad004
commit b79c6ac80d
3711 changed files with 745432 additions and 2 deletions
+79
View File
@@ -0,0 +1,79 @@
/********************************** (C) COPYRIGHT *******************************
* File Name : main.c
* Author : WCH
* Version : V1.0.0
* Date : 2021/06/06
* Description : Main program body.
*********************************************************************************
* Copyright (c) 2021 Nanjing Qinheng Microelectronics Co., Ltd.
* Attention: This software (modified or not) and binary are used for
* microcontroller manufactured by Nanjing Qinheng Microelectronics.
*******************************************************************************/
/*
*@Note
BKP routine:
Intrusion detection pin (PC13), when an intrusion detection event occurs, all data
backup register contents are cleared,And trigger the intrusion detection interrupt.
*/
#include "debug.h"
/*********************************************************************
* @fn BKP_Tamper_Init
*
* @brief Initializes the BKP Tamper.
*
* @return none
*/
void BKP_Tamper_Init(void)
{
NVIC_InitTypeDef NVIC_InitStructure = {0};
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
BKP_TamperPinCmd(DISABLE);
PWR_BackupAccessCmd(ENABLE);
BKP_ClearFlag();
BKP_WriteBackupRegister(BKP_DR1, 0x9880);
BKP_WriteBackupRegister(BKP_DR2, 0x5678);
BKP_WriteBackupRegister(BKP_DR3, 0xABCD);
BKP_WriteBackupRegister(BKP_DR4, 0x3456);
printf("BKP_DR1:%08x\r\n", BKP->DATAR1);
printf("BKP_DR2:%08x\r\n", BKP->DATAR2);
printf("BKP_DR3:%08x\r\n", BKP->DATAR3);
printf("BKP_DR4:%08x\r\n", BKP->DATAR4);
BKP_TamperPinLevelConfig(BKP_TamperPinLevel_High); //TPAL:0,PC13 set input-pull-down
// BKP_TamperPinLevelConfig( BKP_TamperPinLevel_Low ); //TPAL:1,PC13 input-pull-up
NVIC_InitStructure.NVIC_IRQChannel = TAMPER_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
BKP_ITConfig(ENABLE);
BKP_TamperPinCmd(ENABLE);
}
/*********************************************************************
* @fn main
*
* @brief Main program.
*
* @return none
*/
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n", SystemCoreClock);
BKP_Tamper_Init();
while(1);
}