libxr  1.0
Want to be the best embedded framework
Loading...
Searching...
No Matches
flash.cpp
1#include "flash.hpp"
2
3#include "libxr_mem.hpp"
4
5using namespace LibXR;
6
7Flash::Flash(size_t min_erase_size, size_t min_write_size, RawData flash_area)
8 : min_erase_size_(min_erase_size),
9 min_write_size_(min_write_size),
10 flash_area_(flash_area)
11{
12}
13
14ErrorCode Flash::Read(size_t offset, RawData data)
15{
16 ASSERT(offset + data.size_ <= flash_area_.size_);
18 reinterpret_cast<const uint8_t*>(flash_area_.addr_) + offset,
19 data.size_);
20
21 return ErrorCode::OK;
22}
Flash(size_t min_erase_size, size_t min_write_size, RawData flash_area)
Constructs a Flash object with specified properties. 构造函数,初始化闪存属性。
Definition flash.cpp:7
virtual ErrorCode Read(size_t offset, RawData data)
Reads data from the flash memory. 从闪存中读取数据。
Definition flash.cpp:14
RawData flash_area_
Definition flash.hpp:89
static void FastCopy(void *dst, const void *src, size_t size)
快速内存拷贝 / Fast memory copy
Definition libxr_mem.cpp:5
原始数据封装类。 A class for encapsulating raw data.
size_t size_
数据大小(字节)。 The size of the data (in bytes).
void * addr_
数据存储地址。 The storage address of the data.
LibXR 命名空间
Definition ch32_can.hpp:14
ErrorCode
定义错误码枚举
@ OK
操作成功 | Operation successful