stm32_ota/ABM开发板(DTU透传APP源码)/YcOS版本/APPV4.0/HARDWARE/LOGFLASH/logflash.h

47 lines
1.5 KiB
C
Raw Permalink Normal View History

2024-12-17 20:03:43 +08:00
#ifndef __LOGFLASH_H
#define __LOGFLASH_H
#include "stm32f10x.h"
#include "flash.h"
/*****************************************
*<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
****************************************/
typedef struct
{
uint32_t head ; //<2F>̶<EFBFBD><CCB6><EFBFBD>0x50505050
uint32_t writeOffset ; //д<><D0B4><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ƫ<EFBFBD>Ƶ<EFBFBD>ַ
uint16_t overflowCounter ; //FLASH<53><48><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint32_t readOffset ; //<2F><><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ƫ<EFBFBD>Ƶ<EFBFBD>ַ
uint32_t tail ; //<2F>̶<EFBFBD><CCB6><EFBFBD>0x05050505
}LogFlash_s ; //LogFlash<73><68>Ϣ<EFBFBD><EFBFBD><E1B9B9>
typedef union
{
LogFlash_s sLogFlash ; //LogFlash<73><68>Ϣ<EFBFBD><EFBFBD><E1B9B9>
uint8_t bytes[sizeof(LogFlash_s)] ;
}LogFlash_u ; //LogFlash<73><68>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*****************************************
*<EFBFBD><EFBFBD><EFBFBD>ⲿʹ<EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
****************************************/
extern LogFlash_u uLogFlash ; //LogFlash<73><68>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>uLogFlash<73><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD>logflash<73><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
#define LOGFLASH_INFO_ADDRESS LOG_AREA_ADDR //0x8040000 //<2F><>129ҳ
#define LOGFLASH_START_ADDRESS (LOGFLASH_INFO_ADDRESS+FLASH_PAGE_SIZE) //0x8040800
#define LOGFLASH_SIZE (FLASH_BASE+FLASH_SIZE-LOGFLASH_START_ADDRESS)
/*****************************************
*<EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
****************************************/
void ReadLogFromFlash(uint32_t readAddr, uint32_t length) ;
void Refresh_LogFlash_Info(void) ;
/*****************************************
*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿں<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
****************************************/
extern void LogFlash_Init(void) ;
extern void Erase_LogFlash(void) ;
extern void WriteLogToFlash(char *buffer) ;
#endif