배우고픈 공돌이
STM32 내부 Flash Memory에 쓰기&읽기 본문
stm32f427vi 프로세서에서 플래시 섹터 확인.
코어에서 메모리에 쓰는 시간(클럭) 계산.
쓰기
HAL_FLASH_Unlock();
__HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP | FLASH_FLAG_OPERR |
FLASH_FLAG_WRPERR | FLASH_FLAG_PGAERR | FLASH_FLAG_PGSERR );
FLASH_Erase_Sector(FLASH_SECTOR_11, VOLTAGE_RANGE_3);
for(int i=0; i<16;++i)
HAL_FLASH_Program(TYPEPROGRAM_BYTE, K_16B_addr+i, K[i]);
HAL_FLASH_Lock();
읽기
uint32_t viewer = *(uint32_t*) K_16B_addr;
-샘플 코드
map 파일을 열어서 확인한 결과, sector 1부터 차례대로 코드가 삽입된다.
그렇단 이야기는 마지막 sector 11의 구석탱이에 써도 1024K Byte의 프로그램 사이즈가 안된다면 안심하고 써도 된다.
Comments