Sam Shi / Mbed 2 deprecated unytefont

Dependencies:   Adafruit_GFX_customizedfont BLE_API USBDevice mbed

Fork of mbed-os-example-mbed5-blinky by mbed-os-examples

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers flc.h Source File

flc.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002 * Copyright (C) 2014 Maxim Integrated Products, Inc., All Rights Reserved.
00003 *
00004 * Permission is hereby granted, free of charge, to any person obtaining a
00005 * copy of this software and associated documentation files (the "Software"),
00006 * to deal in the Software without restriction, including without limitation
00007 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
00008 * and/or sell copies of the Software, and to permit persons to whom the
00009 * Software is furnished to do so, subject to the following conditions:
00010 *
00011 * The above copyright notice and this permission notice shall be included
00012 * in all copies or substantial portions of the Software.
00013 *
00014 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00015 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00016 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
00017 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
00018 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
00019 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
00020 * OTHER DEALINGS IN THE SOFTWARE.
00021 *
00022 * Except as contained in this notice, the name of Maxim Integrated 
00023 * Products, Inc. shall not be used except as stated in the Maxim Integrated 
00024 * Products, Inc. Branding Policy.
00025 *
00026 * The mere transfer of this software does not imply any licenses
00027 * of trade secrets, proprietary technology, copyrights, patents,
00028 * trademarks, maskwork rights, or any other form of intellectual
00029 * property whatsoever. Maxim Integrated Products, Inc. retains all 
00030 * ownership rights.
00031 *******************************************************************************
00032 */
00033 
00034 /* $Revision: 2905 $ $Date: 2014-08-05 17:18:09 -0500 (Tue, 05 Aug 2014) $ */
00035 
00036 #ifndef _FLASH_H
00037 #define _FLASH_H
00038 
00039 #ifdef __cplusplus
00040 extern "C" {
00041 #endif
00042 
00043 #include "flc_regs.h"
00044 
00045 /**
00046  * @file  flc.h
00047  * @addtogroup flash Flash Controller
00048  * @{
00049  * @brief This is the high level API for the internal flash controller module
00050  *        of the MAX32600 family of ARM Cortex based embedded microcontrollers.
00051  */
00052 
00053 /**
00054  * @brief This function will erase a single page of flash, 1 page is
00055  * 2K bytes.  Keys needed for flash are in the hardware specific
00056  * register file "flc_regs.h" 
00057  *
00058  * @param address     Start address that needs to be erased, must be aligned with 0x800
00059  * @param erase_code  Flash erase code; defined as 'MXC_V_FLC_ERASE_CODE_PAGE_ERASE' for page erase
00060  * @param unlock_key  Key necessary for accessing flash; defined as 'MXC_V_FLC_FLSH_UNLOCK_KEY' 
00061  *
00062  * @return 0 => Success. Non zero => error condition.
00063  */
00064 int32_t FLC_Erase(uint32_t address, uint8_t erase_code, uint8_t unlock_key);
00065 
00066 /**
00067  * @brief This function writes data to the flash device through flash controller
00068  *
00069  * @param address     Start address that needs to be written, must be aligned with 4 bytes
00070  * @param data        Pointer to the buffer containing data to write
00071  * @param length      Size of the data to write in bytes, must be multiple of 4 bytes
00072  * @param unlock_key  Key necessary for accessing flash; defined as 'MXC_V_FLC_FLSH_UNLOCK_KEY'
00073  *
00074  * @return 0 => Success. Non zero => error condition.
00075  */
00076 int32_t FLC_WriteBlock(uint32_t address, const void *data, uint32_t length, uint8_t unlock_key);
00077 
00078 /**
00079  * @}
00080  */
00081 #ifdef __cplusplus
00082 }
00083 #endif
00084 
00085 #endif
00086