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
@@ -0,0 +1,33 @@
/********************************** (C) COPYRIGHT *******************************
* File Name : Internal_Flash.c
* Author : WCH
* Version : V1.0.0
* Date : 2022/08/08
* Description : Internal Flash program
*********************************************************************************
* 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.
*******************************************************************************/
#include "ch32v20x.h"
#include "Internal_Flash.h"
#include "ch32v20x_flash.h"
void IFlash_Prog_512(uint32_t address,uint32_t *pbuf)
{
if (address < IFLASH_UDISK_START_ADDR || (address + 511) > IFLASH_UDISK_END_ADDR )
{
printf("Error Address %x\n",address);
return;
}
address &= 0x00FFFFFF;
address |= 0x08000000;
__disable_irq();
FLASH_Unlock_Fast();
FLASH_ErasePage_Fast(address);
FLASH_ProgramPage_Fast(address, pbuf);
FLASH_ErasePage_Fast(address + INTERNAL_FLASH_PAGE_SIZE);
FLASH_ProgramPage_Fast(address+ INTERNAL_FLASH_PAGE_SIZE, pbuf + INTERNAL_FLASH_PAGE_SIZE/4);
FLASH_Lock_Fast();
__enable_irq();
}