Files
@ 2ee6c8e67f32
Branch filter:
Location: windsonde/Include/system/flash.h - annotation
2ee6c8e67f32
1005 B
text/plain
Add error handling and vim modelines
0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 0f04af7169be 2ee6c8e67f32 2ee6c8e67f32 | #ifndef flash_h
#define flash_h
// Flash Structure
typedef struct
{
uint16_t Blank;
uint32_t readings[128];
}flash_t;
extern flash_t Flash;
// Flash States
enum flash_type
{
Flash_blank = 1,
Flash_good_cksum = 2,
Flash_bad_cksum = 3,
Flash_error = 4,
Flash_default_value = 5,
Flash_write = 6
};
typedef enum {FAILED = 0, PASSED = !FAILED} TestStatus;
#define PageSize ((uint16_t)0x400)
//#define ENDADDR 0x0801FFFF // Medium density
#define ENDADDR 0x0807FFFF // High density
//------------------------------------------------------------------------------
// Prototypes
//------------------------------------------------------------------------------
void init_FLASH(void);
void flash_load(uint8_t flash_test);
void flash_erase(void);
void flash_read(void);
void flash_write(void);
void flash_checksum(void);
#endif // flash_h
// vim:softtabstop=4 shiftwidth=4 expandtab
|