nRF5x MCU 내부 플래시 페이지에 데이터를 읽고 쓰기 위한 클래스
More...
#include <nRF5xFlashPage.hpp>
|
| nRF5xFlashPage (uint32_t pageAddress) |
| Constructor. More...
|
|
void | begin () override |
| 저장공간을 활성화합니다.
|
|
uint64_t | length () override |
| 저장공간의 크기를 구합니다. (단위:바이트)
|
|
uint8_t | read (uint64_t addr) override |
| 저장공간의 데이터를 1-바이트 읽습니다. More...
|
|
error_t | read (void *dst, uint64_t addr, uint32_t len) override |
| 저장공간의 데이터를 len 바이트 읽습니다. More...
|
|
error_t | write (const uint8_t *buf, uint64_t addr, uint32_t len) override |
| 저장공간에 데이터를 len 바이트 씁니다. More...
|
|
error_t | write (uint64_t addr, uint8_t value) override |
| 저장공간에 데이터를 1-바이트 씁니다. More...
|
|
nRF5x MCU 내부 플래시 페이지에 데이터를 읽고 쓰기 위한 클래스
◆ nRF5xFlashPage()
nRF5xFlashPage::nRF5xFlashPage |
( |
uint32_t |
pageAddress | ) |
|
Constructor.
- Parameters
-
pageAddress
로 시작되는 플래시 1 페이지를 생성합니다.
가령, nRF52에서 Page 127(0x7F000~0x7FFFF, 4096-byte)로 접근하기 위해서는 다음과 같이 선언하여 사용하면 됩니다.
nRF5x MCU 내부 플래시 페이지에 데이터를 읽고 쓰기 위한 클래스
Definition: nRF5xFlashPage.hpp:54
- Note
pageAddress
는 정확하게 플래시 페이지의 시작 주소여야 합니다. 만약, 올바른 주소가 아니라면 정상동작하지 않을 수 있습니다.
- Warning
- 현재 실행 중인 프로그램 또는 SoftDevice 영역의 페이지를 선언하여 사용하지 마십시오. 읽기 동작은 상관 없으나, 쓰기 동작은 HardFault를 유발합니다.
◆ read() [1/2]
uint8_t nRF5xFlashPage::read |
( |
uint64_t |
addr | ) |
|
|
overridevirtual |
저장공간의 데이터를 1-바이트 읽습니다.
- Parameters
-
- Returns
- 읽은 데이터.
addr
이 범위를 벗어난 경우, 0을 반환합니다.
Implements Storage.
◆ read() [2/2]
error_t nRF5xFlashPage::read |
( |
void * |
dst, |
|
|
uint64_t |
addr, |
|
|
uint32_t |
len |
|
) |
| |
|
overridevirtual |
저장공간의 데이터를 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 nRF5xFlashPage::write |
( |
const uint8_t * |
buf, |
|
|
uint64_t |
addr, |
|
|
uint32_t |
len |
|
) |
| |
|
overridevirtual |
저장공간에 데이터를 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 nRF5xFlashPage::write |
( |
uint64_t |
addr, |
|
|
uint8_t |
value |
|
) |
| |
|
overridevirtual |
저장공간에 데이터를 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: