mFrame
載入中...
搜尋中...
無符合項目
mcxa153::core::CoreFlash 類別 參考文件
類別mcxa153::core::CoreFlash的繼承圖:
ufm::lang::Object hal::storage::SectorDevice ufm::lang::Interface hal::Base

公開方法(Public Methods)

 CoreFlash (void)
 Construct a new object.
 
virtual ~CoreFlash (void) override
 Destroy the object.
 
virtual bool deinit (void) override
 硬體去初始化
 
virtual bool init (void) override
 硬體初始化
 
virtual bool isInit (void) override
 檢查硬體初始化狀態
 
virtual uint32 pageSize (void) const override
 取得裝置的頁面大小
 
virtual uint32 pageCount (void) const override
 取得裝置的總頁數
 
virtual uint32 sectorCount (void) const override
 取得裝置的總區塊數
 
virtual Status read (uint32 address, void *buffer) override
 從指定頁面讀取資料
 
virtual Status write (uint32 address, const void *buffer) override
 向指定頁面寫入資料
 
virtual Status erase (uint32 address) override
 擦除指定頁面
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Object
void * operator new (size_t n)
 使用運算子 new 分配記憶體
 
void * operator new (size_t n, void *p)
 在指定記憶體上調用運算子 new
 
virtual ufm::lang::ObjectgetObject (void) override
 取得對應的 Object 物件
 
void delay (int milliseconds) const
 延遲指定的毫秒數進行執行緒等待
 
bool equals (Object *object) const
 判斷與另一物件是否為相同參照(指標型態比較)
 
bool equals (Object &object) const
 判斷與另一物件是否為相同參照(參照型態比較)
 
void wait (void) const
 使當前線程等待直到被通知
 
bool wait (int timeout) const
 等待通知或超時
 
bool yield (void) const
 讓執行緒讓渡控制權給同優先權的下一個執行緒
 
int lock (void) const
 核心鎖定,鎖定期間禁止線程切換
 
int unlock (void) const
 核心解鎖
 
ufm::sys::ThreadcurrentThread (void) const
 取得當前執行緒指標
 
virtual int hashcode (void) const
 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Interface
virtual ~Interface (void)=default
 虛擬析構函式
 
- 公開方法(Public Methods) 繼承自 hal::storage::SectorDevice
uint32 sectorSize (void) const
 取得每個區塊的大小
 
uint32 totalSize (void) const
 取得裝置的總存儲容量
 
Status readPage (uint32 page, void *buffer)
 從指定頁面讀取資料
 
Status writePage (uint32 page, const void *buffer)
 向指定頁面寫入資料
 
Status eraseSector (uint32 sector)
 擦除指定區塊
 

額外的繼承成員

- 公開型態 繼承自 hal::storage::SectorDevice
enum struct  Status : uint8 {
  OK = 0x00 , ERROR = 0x01 , NOT_SUPPORTED = 0x02 , OUT_OF_BOUNDS = 0x03 ,
  TIMEOUT = 0x04 , NOT_RAM_SOURCE = 0x05 , NOT_ALIGNED = 0x06
}
 頁式存儲裝置操作狀態列舉 更多...
 

函式成員說明文件

◆ deinit()

virtual bool mcxa153::core::CoreFlash::deinit ( void )
overridevirtual

硬體去初始化

對硬體設備進行去初始化操作,將設備回復到未初始化狀態。 若設備正在使用中,應先停止所有操作再執行去初始化。

傳回值
true 去初始化成功
false 去初始化失敗,可能原因如下:
  • 設備尚未初始化
  • 設備異常
  • 設備正在使用中

實作 hal::Base.

◆ erase()

virtual Status mcxa153::core::CoreFlash::erase ( uint32 address)
overridevirtual

擦除指定頁面

參數
sector頁面編號(從0開始)
傳回值
Status 操作結果狀態

實作 hal::storage::SectorDevice.

◆ init()

virtual bool mcxa153::core::CoreFlash::init ( void )
overridevirtual

硬體初始化

對硬體設備進行初始化操作,使設備進入可用狀態。 初始化過程會配置必要的系統資源。

傳回值
true 初始化成功
false 初始化失敗,可能原因如下:
  • 設備已經初始化
  • 設備異常
  • 系統資源不足

實作 hal::Base.

◆ isInit()

virtual bool mcxa153::core::CoreFlash::isInit ( void )
overridevirtual

檢查硬體初始化狀態

取得當前設備的初始化狀態。可用於確認設備是否可以使用。

傳回值
true 設備已初始化,可以使用
false 設備未初始化

實作 hal::Base.

◆ pageCount()

virtual uint32 mcxa153::core::CoreFlash::pageCount ( void ) const
overridevirtual

取得裝置的總頁數

傳回值
uint32 裝置總頁數

實作 hal::storage::SectorDevice.

◆ pageSize()

virtual uint32 mcxa153::core::CoreFlash::pageSize ( void ) const
overridevirtual

取得裝置的頁面大小

傳回值
uint32 每頁的位元組數

實作 hal::storage::SectorDevice.

◆ read()

virtual Status mcxa153::core::CoreFlash::read ( uint32 address,
void * buffer )
overridevirtual

從指定頁面讀取資料

參數
page頁面編號(從0開始)
buffer讀取資料的緩衝區
傳回值
Status 操作結果狀態

實作 hal::storage::SectorDevice.

◆ sectorCount()

virtual uint32 mcxa153::core::CoreFlash::sectorCount ( void ) const
overridevirtual

取得裝置的總區塊數

傳回值
uint32 裝置總區塊數

實作 hal::storage::SectorDevice.

◆ write()

virtual Status mcxa153::core::CoreFlash::write ( uint32 address,
const void * buffer )
overridevirtual

向指定頁面寫入資料

參數
page頁面編號(從0開始)
buffer寫入資料的來源緩衝區
bufferSize資料大小(位元組)
傳回值
Status 操作結果狀態
對於片內Flash,資料來源必須位於RAM且4-byte對齊

實作 hal::storage::SectorDevice.


此類別(class) 文件是由下列檔案中產生: