TMPM4G9  V1.0.0.0
fc.h
Go to the documentation of this file.
1 
13 /* Define to prevent recursive inclusion -------------------------------------*/
14 #ifndef __FC_H
15 #define __FC_H
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif /* __cplusplus */
20 
21 /* Includes ------------------------------------------------------------------*/
22 #include "txz_driver_def.h"
23 
24 #if defined(__FC_H)
25 
43 typedef enum {
44  FC_SR0_RDYBSY = (0x00000001UL)
45 } fc_sr0_t;
46 
47 /*----------------------------------*/
52 /*----------------------------------*/
53 typedef enum {
54  FC_ERASE_KIND_PAGE = (0x00000040UL),
55  FC_ERASE_KIND_BLOCK = (0x00000030UL),
56  FC_ERASE_KIND_AREA = (0x00000020UL)
58 
59 typedef enum {
93 
95 /* End of group FlashApi_Exported_Types */
96 
101 #define FC_CODE_FLASH_ADDRESS_TOP (0x5E000000UL)
102 #define FC_CODE_DATA_ADDRESS_TOP (0x30000000UL)
103 #define FC_PAGE_SIZE (0x1000)
104 #define FC_BLOCK_SIZE (0x8000)
105 #define FC_AREA_SIZE (0x320000)
106 #define FC_DATA_FLASH_ADDRESS_TOP (0x30000000UL)
107 #define FC_DATA_PAGE_SIZE (0x100)
108 #define FC_DATA_BLOCK_SIZE (0x1000)
109 #define FC_DATA_AREA_SIZE (0x8000)
110 #define FC_DATA_FLASH_WRITE_SIZE (sizeof(uint32_t)*4)
111 #define FC_CODE_FLASH_WRITE_SIZE (sizeof(uint32_t)*4)
113 /* End of group FlashApi_Exported_Constants */
114 
115 
116 
121 extern TXZ_Result fc_write_cdata_flash(uint32_t* src_address, uint32_t* dst_address, uint32_t size);
122 //extern TXZ_Result fc_erase_page_data_flash(fc_data_flash_page_number_t first_page, uint8_t num_of_pages);
123 //extern TXZ_Result fc_erase_page_data_flash(fc_data_flash_page_number_t first_page, uint8_t num_of_pages);
124 //extern TXZ_Result fc_erase_block_data_flash(fc_data_flash_block_number_t first_block, uint8_t num_of_block);
125 //extern TXZ_Result fc_blank_check_block_data_flash(fc_data_flash_block_number_t first_block, fc_data_flash_block_number_t last_block);
126 //extern TXZ_Result fc_erase_area_data_flash(fc_data_flash_area_number_t area);
127 //extern TXZ_Result fc_blank_check_area_data_flash(fc_data_flash_area_number_t area);
128 //extern TXZ_Result fc_write_data_flash(uint32_t* src_address, uint32_t* dst_address, uint32_t size);
129 extern TXZ_Result fc_verify_check(uint32_t* src_address, uint32_t* dst_address, uint32_t size);
130 
131 extern TXZ_Result fc_write_code_flash(uint32_t* src_address, uint32_t* dst_address, uint32_t size);
132 extern TXZ_Result fc_erase_page_code_flash(fc_code_flash_page_number_t first_page, uint8_t num_of_pages);
133 extern TXZ_Result fc_blank_check_page_code_flash(fc_code_flash_page_number_t first_page, fc_code_flash_page_number_t lasr_page);
134 extern TXZ_Result fc_write_user_information_area(uint32_t* src_address, uint32_t size);
136 extern void fc_read_user_information_area(uint32_t* dst_address, uint32_t size);
138 /* End of group FlashApi_Exported_FunctionPrototypes */
139 
140 
142 /* End of group fc */
143 
145 /* End of group Periph_driver */
146 
147 #endif /* defined(__FC_H) */
148 
149 #ifdef __cplusplus
150 }
151 #endif /* __cplusplus */
152 #endif /* __FC_H */
Definition: fc.h:79
Definition: fc.h:87
Definition: fc.h:70
Definition: fc.h:82
Definition: fc.h:85
TXZ_Result
Definition: txz_driver_def.h:43
Definition: fc.h:73
Definition: fc.h:62
TXZ_Result fc_blank_check_page_code_flash(fc_code_flash_page_number_t first_page, fc_code_flash_page_number_t lasr_page)
Checks a blank of the code Flash ROM of specified pages.
Definition: fc.c:503
Definition: fc.h:55
Definition: fc.h:77
Definition: fc.h:74
Definition: fc.h:64
Definition: fc.h:67
TXZ_Result fc_write_user_information_area(uint32_t *src_address, uint32_t size)
Auto write command of the user information area.
Definition: fc.c:564
TXZ_Result fc_write_cdata_flash(uint32_t *src_address, uint32_t *dst_address, uint32_t size)
TXZ_Result fc_erase_page_code_flash(fc_code_flash_page_number_t first_page, uint8_t num_of_pages)
Auro page erase command of the code flash ROM.
Definition: fc.c:461
TXZ_WorkState
Definition: txz_driver_def.h:48
TXZ_Result fc_verify_check(uint32_t *src_address, uint32_t *dst_address, uint32_t size)
Verifies data of the Flash ROM.
Definition: fc.c:319
TXZ_WorkState fc_get_status(fc_sr0_t status)
Get the status of the flash auto operation.
Definition: fc.c:420
fc_code_flash_page_number_t
Definition: fc.h:57
Definition: fc.h:89
void fc_read_user_information_area(uint32_t *dst_address, uint32_t size)
Raed of the user information area.
Definition: fc.c:635
Definition: fc.h:60
All common macro and definition for TXZ peripheral drivers.
Definition: fc.h:58
Definition: fc.h:54
Definition: fc.h:69
Definition: fc.h:81
BSPExInt status
Definition: main.c:140
Definition: fc.h:75
Definition: fc.h:86
Definition: fc.h:44
Definition: fc.h:56
Definition: fc.h:63
TXZ_Result fc_erase_user_information_area(void)
Auro page erase command of the user information area.
Definition: fc.c:599
Definition: fc.h:65
Definition: fc.h:80
Definition: fc.h:66
Definition: fc.h:61
TXZ_Result fc_write_code_flash(uint32_t *src_address, uint32_t *dst_address, uint32_t size)
Auto write command of the code flash ROM.
Definition: fc.c:428
Definition: fc.h:76
fc_sr0_t
Enumerated type definition of the FCSR0 register.
Definition: fc.h:43
fc_erase_kind_t
FC Erase Flash Kind structure definenition.
Definition: fc.h:53
Definition: fc.h:71
Definition: fc.h:59
Definition: fc.h:78
Definition: fc.h:72
Definition: fc.h:88
Definition: fc.h:68
Definition: fc.h:84
Definition: fc.h:83