Nol.A SDK Library  24.11.0
For IoT System Software Development
Public Member Functions | List of all members
STM32F4xxFlashSector Class Reference

STM32F4xx MCU의 내부 플래시 섹터에 데이터를 읽고 쓰기 위한 클래스 More...

#include <STM32F4xxFlashSector.hpp>

Inheritance diagram for STM32F4xxFlashSector:
Storage

Public Member Functions

 STM32F4xxFlashSector (uint32_t sectorAddress, uint32_t sectorSize)
 STM32F4xx MCU의 내장 flash 영역을 선언합니다. (섹터 단위) More...
 
void begin ()
 저장공간을 활성화합니다.
 
uint64_t length ()
 저장공간의 크기를 구합니다. (단위:바이트)
 
uint8_t read (uint64_t addr)
 저장공간의 데이터를 1-바이트 읽습니다. More...
 
error_t read (void *dst, uint64_t addr, uint32_t len)
 저장공간의 데이터를 len 바이트 읽습니다. More...
 
error_t write (const uint8_t *buf, uint64_t addr, uint32_t len)
 저장공간에 데이터를 len 바이트 씁니다. More...
 
error_t write (uint64_t addr, uint8_t value)
 저장공간에 데이터를 1-바이트 씁니다. More...
 

Detailed Description

STM32F4xx MCU의 내부 플래시 섹터에 데이터를 읽고 쓰기 위한 클래스

관련 예제

Constructor & Destructor Documentation

◆ STM32F4xxFlashSector()

STM32F4xxFlashSector::STM32F4xxFlashSector ( uint32_t  sectorAddress,
uint32_t  sectorSize 
)

STM32F4xx MCU의 내장 flash 영역을 선언합니다. (섹터 단위)

Parameters
sectorAddress섹터 주소
sectorSize섹터 크기 (단위: bytes)
Note
주소 및 크기는 반드시 하나의 섹터여야 합니다.

다음 예제와 같이 선언할 수 있습니다.

섹터의 주소 및 크기는 STM32F4xx MCU의 Reference Manual (RM0090) 및 세부 datasheet의 memory-map을 참고하시기 바랍니다.

Member Function Documentation

◆ read() [1/2]

uint8_t STM32F4xxFlashSector::read ( uint64_t  addr)
virtual

저장공간의 데이터를 1-바이트 읽습니다.

Parameters
addr읽을 데이터의 주소 (0 ~ length())
Returns
읽은 데이터. addr 이 범위를 벗어난 경우, 0을 반환합니다.

Implements Storage.

◆ read() [2/2]

error_t STM32F4xxFlashSector::read ( void *  dst,
uint64_t  addr,
uint32_t  len 
)
virtual

저장공간의 데이터를 len 바이트 읽습니다.

Parameters
dst읽은 데이터를 저장할 포인터
addr읽을 데이터의 주소 (0 ~ length())
len읽을 데이터의 크기 (단위: 바이트)
Returns
  • ERROR_SUCCESS : 성공
  • ERROR_INVALID_ARGS : dst 가 NULL 이거나, addr 이 범위 밖이거나, len 이 0

Implements Storage.

◆ write() [1/2]

error_t STM32F4xxFlashSector::write ( const uint8_t *  buf,
uint64_t  addr,
uint32_t  len 
)
virtual

저장공간에 데이터를 len 바이트 씁니다.

Parameters
buf쓸 데이터의 포인터
addr데이터를 저장할 주소 (0 ~ length())
len쓸 데이터의 크기 (단위: 바이트)
  • ERROR_SUCCESS : 성공
  • ERROR_INVALID_ARGS : addr 이 범위 밖이거나, len 이 0
  • ERROR_NOT_ENOUGH_MEMORY : 메모리 부족
  • ERROR_FAIL : 기타 실패

Implements Storage.

◆ write() [2/2]

error_t STM32F4xxFlashSector::write ( uint64_t  addr,
uint8_t  value 
)
virtual

저장공간에 데이터를 1-바이트 씁니다.

Parameters
addr데이터를 저장할 주소 (0 ~ length())
value쓸 데이터
  • ERROR_SUCCESS : 성공
  • ERROR_INVALID_ARGS : addr 이 범위 밖이거나, len 이 0
  • ERROR_NOT_ENOUGH_MEMORY : 메모리 부족
  • ERROR_FAIL : 기타 실패

Implements Storage.


The documentation for this class was generated from the following file: