NIIETCM4 PD  v0.8.0
Драйвер периферии для микроконтроллеров на базе ядра ARM Cortex-M4
niietcm4_userflash.h
См. документацию.
1 
29 /* Define to prevent recursive inclusion -------------------------------------*/
30 #ifndef __NIIETCM4_USERFLASH_H
31 #define __NIIETCM4_USERFLASH_H
32 
33 #ifdef __cplusplus
34  extern "C" {
35 #endif
36 
37 /* Includes ------------------------------------------------------------------*/
38 #include "niietcm4.h"
39 
56 #define USERFLASH_OPERATION_TIMEOUT ((uint32_t)10000000)
57 
62 #define USERFLASH_MAGIC_KEY ((uint32_t)0xA4420000)
63 
68 #define USERFLASH_PAGE_SIZE_BYTES ((uint32_t)256)
69 #define USERFLASH_PAGE_TOTAL ((uint32_t)256)
70 #define USERFLASH_TOTAL_BYTES (USERFLASH_PAGE_SIZE_BYTES*USERFLASH_PAGE_TOTAL)
76 #define IS_USERFLASH_PAGE_NUM(PAGE_NUM) (PAGE_NUM < USERFLASH_PAGE_TOTAL)
77 
86 #define USERFLASH_INFO_PAGE_SIZE_BYTES USERFLASH_PAGE_SIZE_BYTES
87 #define USERFLASH_INFO_PAGE_TOTAL ((uint32_t)2)
88 #define USERFLASH_INFO_TOTAL_BYTES (USERFLASH_PAGE_SIZE_BYTES*USERFLASH_PAGE_TOTAL)
94 #define IS_USERFLASH_INFO_PAGE_NUM(PAGE_NUM) (PAGE_NUM < USERFLASH_INFO_PAGE_TOTAL)
95 
112 typedef enum
113 {
114  USERFLASH_Status_None = ((uint32_t)0),
115  USERFLASH_Status_Complete = ((uint32_t)1),
116  USERFLASH_Status_Error = ((uint32_t)3)
118 
123 #define IS_USERFLASH_STATUS(STATUS) (((STATUS) == USERFLASH_Status_None) || \
124  ((STATUS) == USERFLASH_Status_Complete) || \
125  ((STATUS) == USERFLASH_Status_Error))
126 
135 void USERFLASH_Init(uint32_t SysClkFreq);
138 void USERFLASH_ITCmd(FunctionalState State);
139 
144 uint32_t USERFLASH_Read(uint32_t Address);
145 void USERFLASH_Write(uint32_t Address, uint32_t Data);
146 void USERFLASH_PageErase(uint32_t PageNum);
147 void USERFLASH_FullErase();
148 
157 uint32_t USERFLASH_Info_Read(uint32_t Address);
158 void USERFLASH_Info_Write(uint32_t Address, uint32_t Data);
159 void USERFLASH_Info_PageErase(uint32_t PageNum);
160 
169 #ifdef __cplusplus
170 }
171 #endif
172 
173 #endif /* __NIIETCM4_USERFLASH_H */
174 
183 /******************* (C) COPYRIGHT 2015 NIIET *****END OF FILE****/
FunctionalState
Описывает логическое состояние периферии. Используется для операций включения/выключения периферийных...
Definition: niietcm4.h:157
uint32_t USERFLASH_Read(uint32_t Address)
Чтение байта из основной области пользовательской флеш.
void USERFLASH_ITCmd(FunctionalState State)
Включение прерывания по завершению чтении/записи/стирания.
void USERFLASH_Init(uint32_t SysClkFreq)
Инициализирует тайминги доступа для контроллера пользовательской флеш.
void USERFLASH_OperationStatusClear()
Очищает статус работы контроллера пользовательской флэш.
void USERFLASH_Write(uint32_t Address, uint32_t Data)
Запись байта в основную область пользовательской флеш по указанному адресу.
USERFLASH_Status_TypeDef
Статус работы контроллера пользовательской флеш-памяти.
uint32_t USERFLASH_Info_Read(uint32_t Address)
Чтение байта из информационной области пользовательской флеш.
USERFLASH_Status_TypeDef USERFLASH_OperationStatus()
Статус работы контроллера пользовательской флэш.
Это главный заголовочный файл драйвера, обычно включаемый в main.c.
void USERFLASH_Info_Write(uint32_t Address, uint32_t Data)
Запись байта в информационную область пользовательской флеш по указанному адресу. ...
void USERFLASH_PageErase(uint32_t PageNum)
Стирание указнной страницы основной области пользовательской флеш.
void USERFLASH_FullErase()
Полная очистка основной области пользовательской флеш.
void USERFLASH_Info_PageErase(uint32_t PageNum)
Стирание указнной страницы информационной области пользовательской флеш.