M480 BSP V3.05.005
The Board Support Package for M480 Series
Functions | Variables
fmc.c File Reference

M480 series FMC driver source file. More...

#include <stdio.h>
#include "NuMicro.h"

Go to the source code of this file.

Functions

void FMC_Close (void)
 Disable FMC ISP function. More...
 
int32_t FMC_ConfigXOM (uint32_t u32XomNum, uint32_t u32XomBase, uint8_t u8XomPage)
 Config XOM Region. More...
 
int32_t FMC_Erase (uint32_t u32PageAddr)
 Execute FMC_ISPCMD_PAGE_ERASE command to erase a flash page. The page size is 4096 bytes. More...
 
int32_t FMC_Erase_SPROM (void)
 Execute FMC_ISPCMD_PAGE_ERASE command to erase SPROM. The page size is 4096 bytes. More...
 
int32_t FMC_Erase_Block (uint32_t u32BlockAddr)
 Execute FMC_ISPCMD_BLOCK_ERASE command to erase a flash block. The block size is 4 pages. More...
 
int32_t FMC_Erase_Bank (uint32_t u32BankAddr)
 Execute FMC_ISPCMD_BANK_ERASE command to erase a flash block. More...
 
int32_t FMC_EraseXOM (uint32_t u32XomNum)
 Execute Erase XOM Region. More...
 
int32_t FMC_GetXOMState (uint32_t u32XomNum)
 Check the XOM is actived or not. More...
 
int32_t FMC_GetBootSource (void)
 Get the current boot source. More...
 
void FMC_Open (void)
 Enable FMC ISP function. More...
 
uint32_t FMC_Read (uint32_t u32Addr)
 Execute FMC_ISPCMD_READ command to read a word from flash. More...
 
int32_t FMC_Read_64 (uint32_t u32addr, uint32_t *u32data0, uint32_t *u32data1)
 Execute FMC_ISPCMD_READ_64 command to read a double-word from flash. More...
 
uint32_t FMC_ReadDataFlashBaseAddr (void)
 Get the base address of Data Flash if enabled. More...
 
void FMC_SetBootSource (int32_t i32BootSrc)
 Set boot source from LDROM or APROM after next software reset. More...
 
int32_t FMC_Write (uint32_t u32Addr, uint32_t u32Data)
 Execute ISP FMC_ISPCMD_PROGRAM to program a word to flash. More...
 
int32_t FMC_Write8Bytes (uint32_t u32addr, uint32_t u32data0, uint32_t u32data1)
 Execute ISP FMC_ISPCMD_PROGRAM_64 to program a double-word to flash. More...
 
int32_t FMC_WriteMultiple (uint32_t u32Addr, uint32_t pu32Buf[], uint32_t u32Len)
 Program Multi-Word data into specified address of flash. More...
 
int32_t FMC_Write_OTP (uint32_t otp_num, uint32_t low_word, uint32_t high_word)
 Program a 64-bits data to the specified OTP. More...
 
int32_t FMC_Read_OTP (uint32_t otp_num, uint32_t *low_word, uint32_t *high_word)
 Read the 64-bits data from the specified OTP. More...
 
int32_t FMC_Lock_OTP (uint32_t otp_num)
 Lock the specified OTP. More...
 
int32_t FMC_Is_OTP_Locked (uint32_t otp_num)
 Check the OTP is locked or not. More...
 
int32_t FMC_ReadConfig (uint32_t u32Config[], uint32_t u32Count)
 Execute FMC_ISPCMD_READ command to read User Configuration. More...
 
int32_t FMC_WriteConfig (uint32_t u32Config[], uint32_t u32Count)
 Execute ISP commands to erase then write User Configuration. More...
 
uint32_t FMC_GetChkSum (uint32_t u32addr, uint32_t u32count)
 Run CRC32 checksum calculation and get result. More...
 
uint32_t FMC_CheckAllOne (uint32_t u32addr, uint32_t u32count)
 Run flash all one verification and get result. More...
 
int32_t FMC_SetSPKey (uint32_t key[3], uint32_t kpmax, uint32_t kemax, const int32_t lock_CONFIG, const int32_t lock_SPROM)
 Setup security key. More...
 
int32_t FMC_CompareSPKey (uint32_t key[3])
 Execute security key comparison. More...
 

Variables

int32_t g_FMC_i32ErrCode
 

Detailed Description

M480 series FMC driver source file.

Version
V1.00

SPDX-License-Identifier: Apache-2.0

Definition in file fmc.c.