mFrame
載入中...
搜尋中...
無符合項目
hal::serial::IICMaster 結構 參考文件abstract

[Interface] IIC主端設備介面 更多...

#include <IICMaster.h>

類別hal::serial::IICMaster的繼承圖:
mcxa153::core::CoreIICMaster

複合項目

struct  EventError
 [Interface] IIC錯誤事件處理器 更多...
 

公開方法(Public Methods)

virtual hal::serial::IICgetIIC (void) override
 取得IIC基礎介面參考
 
virtual bool isBusy (void) override
 檢查總線狀態
 
virtual void setClock (uint32 hz) override
 設定傳輸時脈頻率
 
virtual uint32 getClock (void) override
 讀取當前傳輸時脈頻率
 
virtual bool beginWrite (uint16 address) override
 開始寫入傳輸事件
 
virtual bool beginRead (uint16 address) override
 開始讀取傳輸事件
 
virtual bool abort (void) override
 中止當前傳輸
 
virtual void setEventError (hal::serial::IICMaster::EventError *event=nullptr) override
 設定錯誤事件處理器
 

詳細描述

[Interface] IIC主端設備介面

實現IIC主設備的基本功能,包含時脈設定、資料傳輸控制 及錯誤處理等機制。

1.0.0

函式成員說明文件

◆ abort()

virtual bool hal::serial::IICMaster::abort ( void )
pure virtual

中止當前傳輸

強制停止目前進行中的 IIC 傳輸,發送 STOP 條件釋放總線。 可用於錯誤恢復或緊急停止傳輸。

傳回值
bool 中止操作結果
傳回值
true成功中止傳輸
false無傳輸可中止或中止失敗

實作於 mcxa153::core::CoreIICMaster.

◆ beginRead()

virtual bool hal::serial::IICMaster::beginRead ( uint16 address)
pure virtual

開始讀取傳輸事件

從指定的 IIC 從設備開始讀取傳輸。此方法會發送 START 條件和設備位址, 準備讀取資料。實際資料接收透過 IIC 基礎介面的事件機制處理。

參數
address目標從設備的 7-bit 位址(不包含讀寫位元)
傳回值
bool 傳輸開始狀態
傳回值
true成功開始讀取
false開始失敗,可能原因:
  • 設備忙碌中,正在傳輸
  • 總線忙碌
  • 設備尚未初始化

實作於 mcxa153::core::CoreIICMaster.

◆ beginWrite()

virtual bool hal::serial::IICMaster::beginWrite ( uint16 address)
pure virtual

開始寫入傳輸事件

向指定的 IIC 從設備開始寫入傳輸。此方法會發送 START 條件和設備位址, 準備寫入資料。實際資料傳送透過 IIC 基礎介面的事件機制處理。

參數
address目標從設備的 7-bit 位址(不包含讀寫位元)
傳回值
bool 傳輸開始狀態
傳回值
true成功開始傳輸
false開始失敗,可能原因:
  • 設備忙碌中,正在傳輸
  • 總線忙碌
  • 設備尚未初始化

實作於 mcxa153::core::CoreIICMaster.

◆ getClock()

virtual uint32 hal::serial::IICMaster::getClock ( void )
pure virtual

讀取當前傳輸時脈頻率

取得目前實際使用的 IIC 時脈頻率,可能與設定值略有差異。

傳回值
uint32 當前實際時脈頻率(Hz)

實作於 mcxa153::core::CoreIICMaster.

◆ getIIC()

virtual hal::serial::IIC & hal::serial::IICMaster::getIIC ( void )
pure virtual

取得IIC基礎介面參考

錯誤事件處理器介面

傳回值
hal::serial::IIC& IIC基礎介面參考

實作於 mcxa153::core::CoreIICMaster.

◆ isBusy()

virtual bool hal::serial::IICMaster::isBusy ( void )
pure virtual

檢查總線狀態

傳回值
true 總線忙碌中
false 總線閒置中

實作於 mcxa153::core::CoreIICMaster.

◆ setClock()

virtual void hal::serial::IICMaster::setClock ( uint32 hz)
pure virtual

設定傳輸時脈頻率

設定 IIC 通訊的時脈頻率,影響資料傳輸速度。常見頻率為 100kHz(標準模式) 和 400kHz(快速模式)。實際設定值可能會因硬體限制而有所調整。

參數
hz目標頻率(Hz),例如 100000 表示 100kHz

實作於 mcxa153::core::CoreIICMaster.

◆ setEventError()

virtual void hal::serial::IICMaster::setEventError ( hal::serial::IICMaster::EventError * event = nullptr)
pure virtual

設定錯誤事件處理器

註冊錯誤事件處理器以接收 IIC 通訊錯誤通知,包括無回應和總線忙碌等錯誤。 有助於實現錯誤處理和通訊狀態監控。

參數
event錯誤事件處理器指標,nullptr 表示取消監聽

實作於 mcxa153::core::CoreIICMaster.


此結構(structure) 文件是由下列檔案中產生: