mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-11-26 18:47:24 +06:00
35 lines
1.5 KiB
C
35 lines
1.5 KiB
C
/*
|
|
* This software is experimental and a work in progress.
|
|
* Under no circumstances should these files be used in relation to any critical system(s).
|
|
* Use of these files is at your own risk.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
|
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
* DEALINGS IN THE SOFTWARE.
|
|
*
|
|
* This files are free to use from http://engsta.com/stm32-flash-memory-eeprom-emulator/ by
|
|
* Artur F.
|
|
*
|
|
* Modifications for QMK and STM32L432 by lalalademaxiya1 & lokher
|
|
*
|
|
* To add a new MCU, please provide the flash page size and the total flash size in Kb.
|
|
* The number of available pages must be at least two. Only one page for the total EEPROM size.
|
|
* It is recommend to set the number of log page to 3~5 times of data page for better wear leveling.
|
|
*
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
typedef unsigned long long uint64_t;
|
|
|
|
uint16_t EEPROM_Init(void);
|
|
void EEPROM_Erase(void);
|
|
uint8_t EEPROM_WriteDataByte(uint16_t Address, uint8_t DataByte);
|
|
uint8_t EEPROM_WriteDataWord(uint16_t Address, uint16_t DataWord);
|
|
uint8_t EEPROM_WriteDataDWord(uint16_t Address, uint32_t DataDWord);
|
|
uint8_t EEPROM_ReadDataByte(uint16_t Address);
|
|
uint16_t EEPROM_ReadDataWord(uint16_t Address);
|