LCM — CH32V003 Light Control Module
Light Control Module, I2C slave
Loading...
Searching...
No Matches
user_data.h File Reference
#include <stdint.h>
#include <stddef.h>

Go to the source code of this file.

Macros

#define USER_DATA_FLASH_BASE   ((uint32_t)0x1FFFF800U)
 
#define USER_DATA_FLASH_PAGE_SIZE   64U
 
#define USER_DATA_CAPACITY   26U
 
#define USER_DATA_OFF_DATA0   0U /* официальный байт Data0 */
 
#define USER_DATA_OFF_DATA1   1U /* официальный байт Data1 */
 
#define USER_DATA_OFF_EXT_BASE   2U /* начало расширенной области (Reserved) */
 

Enumerations

enum  UserData_Status {
  USER_DATA_OK = 0 , USER_DATA_ERR_PARAM , USER_DATA_ERR_RANGE , USER_DATA_ERR_FLASH ,
  USER_DATA_ERR_BUSY
}
 

Functions

UserData_Status UserData_Init (void)
 
uint8_t UserData_Capacity (void)
 
UserData_Status UserData_Read (uint8_t offset, uint8_t *buf, uint8_t len)
 
UserData_Status UserData_Write (uint8_t offset, const uint8_t *buf, uint8_t len)
 
UserData_Status UserData_ReadByte (uint8_t offset, uint8_t *value)
 
UserData_Status UserData_WriteByte (uint8_t offset, uint8_t value)
 
UserData_Status UserData_Fill (uint8_t offset, uint8_t len, uint8_t value)
 
UserData_Status UserData_Erase (void)
 
UserData_Status UserData_Commit (void)
 
uint8_t UserData_IsDirty (void)
 
uint8_t * UserData_Buffer (void)
 
const uint8_t * UserData_ConstBuffer (void)
 
UserData_Status UserData_ReadFlashPageRaw (uint8_t *page)
 

Macro Definition Documentation

◆ USER_DATA_CAPACITY

#define USER_DATA_CAPACITY   26U

◆ USER_DATA_FLASH_BASE

#define USER_DATA_FLASH_BASE   ((uint32_t)0x1FFFF800U)

Definition at line 31 of file user_data.h.

Referenced by UserData_Commit(), UserData_LoadFromFlash(), and UserData_ReadFlashPageRaw().

◆ USER_DATA_FLASH_PAGE_SIZE

#define USER_DATA_FLASH_PAGE_SIZE   64U

Definition at line 34 of file user_data.h.

Referenced by UserData_ReadFlashPageRaw().

◆ USER_DATA_OFF_DATA0

#define USER_DATA_OFF_DATA0   0U /* официальный байт Data0 */

Definition at line 40 of file user_data.h.

◆ USER_DATA_OFF_DATA1

#define USER_DATA_OFF_DATA1   1U /* официальный байт Data1 */

Definition at line 41 of file user_data.h.

◆ USER_DATA_OFF_EXT_BASE

#define USER_DATA_OFF_EXT_BASE   2U /* начало расширенной области (Reserved) */

Definition at line 42 of file user_data.h.

Referenced by UserData_Commit(), and UserData_LoadFromFlash().

Enumeration Type Documentation

◆ UserData_Status

Enumerator
USER_DATA_OK 
USER_DATA_ERR_PARAM 
USER_DATA_ERR_RANGE 
USER_DATA_ERR_FLASH 
USER_DATA_ERR_BUSY 

Definition at line 44 of file user_data.h.

Function Documentation

◆ UserData_Buffer()

uint8_t * UserData_Buffer ( void )

Definition at line 572 of file user_data.c.

References s_user_cache.

◆ UserData_Capacity()

uint8_t UserData_Capacity ( void )

Definition at line 458 of file user_data.c.

References USER_DATA_CAPACITY.

◆ UserData_Commit()

◆ UserData_ConstBuffer()

const uint8_t * UserData_ConstBuffer ( void )

Definition at line 577 of file user_data.c.

References s_user_cache.

◆ UserData_Erase()

UserData_Status UserData_Erase ( void )

Definition at line 562 of file user_data.c.

References USER_DATA_CAPACITY, and UserData_Fill().

◆ UserData_Fill()

UserData_Status UserData_Fill ( uint8_t offset,
uint8_t len,
uint8_t value )

Definition at line 544 of file user_data.c.

References s_dirty, s_user_cache, USER_DATA_OK, and UserData_CheckRange().

Referenced by UserData_Erase().

◆ UserData_Init()

UserData_Status UserData_Init ( void )

Definition at line 437 of file user_data.c.

References s_dirty, USER_DATA_ERR_BUSY, USER_DATA_OK, UserData_CacheFillErased(), and UserData_LoadFromFlash().

Referenced by main().

◆ UserData_IsDirty()

uint8_t UserData_IsDirty ( void )

Definition at line 567 of file user_data.c.

References s_dirty.

◆ UserData_Read()

UserData_Status UserData_Read ( uint8_t offset,
uint8_t * buf,
uint8_t len )

Definition at line 488 of file user_data.c.

References s_user_cache, USER_DATA_ERR_PARAM, USER_DATA_OK, and UserData_CheckRange().

Referenced by UserData_ReadByte().

◆ UserData_ReadByte()

UserData_Status UserData_ReadByte ( uint8_t offset,
uint8_t * value )

Definition at line 531 of file user_data.c.

References USER_DATA_ERR_PARAM, and UserData_Read().

Referenced by LCM_LoadConfig().

◆ UserData_ReadFlashPageRaw()

UserData_Status UserData_ReadFlashPageRaw ( uint8_t * page)

◆ UserData_Write()

UserData_Status UserData_Write ( uint8_t offset,
const uint8_t * buf,
uint8_t len )

◆ UserData_WriteByte()

UserData_Status UserData_WriteByte ( uint8_t offset,
uint8_t value )

Definition at line 539 of file user_data.c.

References UserData_Write().