mFrame
載入中...
搜尋中...
無符合項目
core::CoreIICMaster 類別 參考文件
類別core::CoreIICMaster的繼承圖:
core::CoreIIC hal::serial::IICMaster hal::serial::IICEventError mframe::lang::Interface mframe::lang::Interface hal::InterruptEvent hal::serial::IICEventStop hal::serial::IICEventTransfer hal::serial::IICEventReceiver hal::serial::IIC mframe::lang::Object

公開方法(Public Methods)

 CoreIICMaster (CoreIIC::Select select)
 Construct a new Core IIC Master object.
 
virtual ~CoreIICMaster (void) override
 Destroy the object.
 
virtual bool init (void) override
 硬體初始化。
 
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::IICEventError *event=nullptr) override
 Set the Event Error object.
 
virtual void onNanAcknowledgeEvent (void) override
 當發生未回應事件時將調用
 
virtual void onBusBusyEvent (void) override
 當發生總線忙碌時將調用
 
virtual void interruptEvent (void) override
 硬體中斷觸發事件
 
- 公開方法(Public Methods) 繼承自 core::CoreIIC
 CoreIIC (Select select)
 Construct a new object.
 
virtual ~CoreIIC (void) override
 Destroy the object.
 
virtual bool deinit (void) override
 硬體去初始化。
 
virtual bool isInit (void) override
 取得硬體是否已初始化。
 
virtual void setEventReceiver (hal::serial::IICEventReceiver *event) override
 Set the Event Receiver object.
 
virtual void setEventTransfer (hal::serial::IICEventTransfer *event) override
 Set the Event Transfer object.
 
virtual void setEventStop (hal::serial::IICEventStop *event) override
 Set the Event Stop object.
 
virtual bool onReceiver (const uint8 data) override
 
virtual bool onTransfer (uint8 &data) override
 當發生傳輸事件時將調用此事件
 
virtual void onStop (void) override
 當發生停止事件時將調用
 
- 公開方法(Public Methods) 繼承自 mframe::lang::Object
 Object (void)
 Construct a new Object object.
 
virtual ~Object (void) override
 Destroy the Object object.
 
void * operator new (size_t n)
 
void * operator new (size_t n, void *p)
 
mframe::lang::ObjectgetObject (void) override
 取得類Object
 
void delay (int milliseconds) const
 函數 delay 等待內核滴答中指定的時間段。 對於1的值,系統等待直到下一個計時器滴答發生。 實際時間延遲最多可能比指定時間少一個計時器滴答聲,即在下一個系統滴答聲發生之前立即調用 osDelay(1),線程會立即重新安排。
 
bool equals (Object *object) const
 函數 delay 等待內核滴答中指定的時間段。 對於1的值,系統等待直到下一個計時器滴答發生。 實際時間延遲最多可能比指定時間少一個計時器滴答聲,即在下一個系統滴答聲發生之前立即調用 osDelay(1),線程會立即重新安排。
 
bool equals (Object &object) const
 函數 delay 等待內核滴答中指定的時間段。 對於1的值,系統等待直到下一個計時器滴答發生。 實際時間延遲最多可能比指定時間少一個計時器滴答聲,即在下一個系統滴答聲發生之前立即調用 osDelay(1),線程會立即重新安排。
 
void wait (void) const
 導致當前線程等待,直到另一個線程調用此對象的notify()方法或notifyAll()方法,或指定的時間 已過。
 
bool wait (int timeout) const
 導致當前線程等待,直到另一個線程調用此對象的 notify()方法或 notifyAll()方法,或其他一些線 程中斷當前線程,或一定量的實時時間。
 
bool yield (void) const
 函數yield()將控制權傳遞給處於READY狀態且具有相同優先級的下一個線程。 如果在READY狀態下沒有其他優先級相同的線程,則當前線程繼續執行,不會發生線程切換。
 
int lock (void) const
 核心鎖定,在調用unlock以前將不會進行執行緒切換
 
int unlock (void) const
 核心解鎖。
 
mframe::sys::ThreadcurrentThread (void) const
 取得當前的執行緒
 
virtual int hashcode (void) const
 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。
 
- 公開方法(Public Methods) 繼承自 mframe::lang::Interface
virtual ~Interface (void)=default
 Destroy the struct object.
 

保護方法(Protected Methods)

void masterReset (void)
 
bool transfer (uint16 address, bool direction=true)
 
- 保護方法(Protected Methods) 繼承自 core::CoreIIC
void setupInterrupt (void)
 

保護屬性

hal::serial::IICEventErrorvIICEventError
 
- 保護屬性 繼承自 core::CoreIIC
hal::serial::IICEventReceivervIICEventReceiver
 
hal::serial::IICEventTransfervIICEventTransfer
 
hal::serial::IICEventStopvIICEventStop
 

額外的繼承成員

- 公開型態 繼承自 core::CoreIIC
enum struct  Select : unsigned char { LPI2C0 = 0 }
 
- 公開屬性 繼承自 core::CoreIIC
void *const vBase
 

建構子與解構子說明文件

◆ CoreIICMaster()

core::CoreIICMaster::CoreIICMaster ( CoreIIC::Select select)

Construct a new Core IIC Master object.

參數
select

函式成員說明文件

◆ abort()

virtual bool core::CoreIICMaster::abort ( void )
overridevirtual
傳回值
true
false

實作 hal::serial::IICMaster.

◆ beginRead()

virtual bool core::CoreIICMaster::beginRead ( uint16 address)
overridevirtual

開始讀取事件

參數
address讀取目標地址
傳回值
返回狀態
  • [true] 成功開始讀取
  • [false] 開始失敗,可能原因如下
  • - 設備忙碌中,正在傳輸。
  • - 總線忙碌。
  • - 設備尚未初始化。

實作 hal::serial::IICMaster.

◆ beginWrite()

virtual bool core::CoreIICMaster::beginWrite ( uint16 address)
overridevirtual

開始傳輸事件

參數
address傳輸目標地址
傳回值
返回狀態
  • [true] 成功開始傳輸
  • [false] 開始失敗,可能原因如下
  • - 設備忙碌中,正在傳輸。
  • - 總線忙碌。
  • - 設備尚未初始化。

實作 hal::serial::IICMaster.

◆ getClock()

virtual uint32 core::CoreIICMaster::getClock ( void )
overridevirtual

取得傳輸速率

傳回值
uint32 hz

實作 hal::serial::IICMaster.

◆ getIIC()

virtual hal::serial::IIC & core::CoreIICMaster::getIIC ( void )
overridevirtual

取得IIC基類

傳回值
hal::serial::IIC&

實作 hal::serial::IICMaster.

◆ init()

virtual bool core::CoreIICMaster::init ( void )
overridevirtual

硬體初始化。

傳回值
true 初始化成功
false 初始化失敗,可能原因如下:
  • 設備已經初始化。
  • 設備異常。

依據core::CoreIIC重新實作.

◆ interruptEvent()

virtual void core::CoreIICMaster::interruptEvent ( void )
overridevirtual

硬體中斷觸發事件

實作 hal::InterruptEvent.

◆ isBusy()

virtual bool core::CoreIICMaster::isBusy ( void )
overridevirtual

取得裝置是否忙碌

傳回值
true 忙碌
false 閒置

實作 hal::serial::IICMaster.

◆ onBusBusyEvent()

virtual void core::CoreIICMaster::onBusBusyEvent ( void )
overridevirtual

當發生總線忙碌時將調用

實作 hal::serial::IICEventError.

◆ onNanAcknowledgeEvent()

virtual void core::CoreIICMaster::onNanAcknowledgeEvent ( void )
overridevirtual

當發生未回應事件時將調用

實作 hal::serial::IICEventError.

◆ setClock()

virtual void core::CoreIICMaster::setClock ( uint32 hz)
overridevirtual

設定傳輸速率

參數
hz

實作 hal::serial::IICMaster.

◆ setEventError()

virtual void core::CoreIICMaster::setEventError ( hal::serial::IICEventError * event = nullptr)
overridevirtual

Set the Event Error object.

參數
event

實作 hal::serial::IICMaster.


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