mFrame
載入中...
搜尋中...
無符合項目
core::CoreGeneralPin 類別 參考文件
類別core::CoreGeneralPin的繼承圖:
mframe::lang::Object hal::digital::GeneralPin mframe::lang::Interface hal::digital::GeneralOutput hal::digital::GeneralInput mframe::lang::Interface mframe::lang::Interface

公開方法(Public Methods)

 CoreGeneralPin (const CoreGeneralPort &port, unsigned int pin)
 Construct a new object.
 
virtual ~CoreGeneralPin (void) override
 Destroy the object.
 
virtual hal::digital::GeneralPinMode getPinMode (void) override
 取得引腳目前的工作模式。
 
virtual hal::digital::GeneralPinMode setPinMode (hal::digital::GeneralPinMode mode) override
 設定引腳的工作模式。
 
virtual bool getDir (void) override
 取得引腳的方向。
 
virtual void setDir (bool dir) override
 設定引腳的方向。
 
virtual void setInput (void) override
 將引腳模式設定為輸入模式。
 
virtual void setOutput (void) override
 將引腳模式設定為輸出模式。
 
virtual void setHigh (void) override
 設定引腳輸出高電平。
 
virtual void setLow (void) override
 設定引腳輸出低電平。
 
virtual void setToggle (void) override
 設定引腳輸出反向電平。
 
virtual void setValue (bool level) override
 設定引腳輸出電平。
 
virtual bool getValue (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.
 

公開屬性

void *const vBase
 
void *const vBasePort
 
const unsigned int vPin = 0
 

函式成員說明文件

◆ getDir()

virtual bool core::CoreGeneralPin::getDir ( void )
overridevirtual

取得引腳的方向。

此方法回傳引腳目前的方向設定,用以確認該引腳是處於輸出或輸入模式。

傳回值
true 當前設定為輸出模式。
false 當前設定為輸入模式。

實作 hal::digital::GeneralPin.

◆ getPinMode()

virtual hal::digital::GeneralPinMode core::CoreGeneralPin::getPinMode ( void )
overridevirtual

取得引腳目前的工作模式。

此方法回傳硬體引腳當前的工作模式,可用於檢查或在切換模式前確認目前狀態。

傳回值
hal::digital::GeneralPinMode
  • GeneralPinMode::PUSH_PULL 推挽輸出模式
  • GeneralPinMode::PULL_UP 引腳上拉模式
  • GeneralPinMode::PULL_DOWN 引腳下拉模式
  • GeneralPinMode::OPEN_DRAIN 開漏模式

實作 hal::digital::GeneralPin.

◆ getValue()

virtual bool core::CoreGeneralPin::getValue ( void )
overridevirtual

取得引腳電平。

傳回值
true 高電平。
false 低電平。

實作 hal::digital::GeneralInput.

◆ setDir()

virtual void core::CoreGeneralPin::setDir ( bool dir)
overridevirtual

設定引腳的方向。

根據傳入的參數,設定引腳為輸出或輸入。此方法可動態調整引腳方向, 使其能夠根據應用需求執行相應功能。

參數
dir設定方向:true 為輸出,false 為輸入。

實作 hal::digital::GeneralPin.

◆ setHigh()

virtual void core::CoreGeneralPin::setHigh ( void )
overridevirtual

設定引腳輸出高電平。

實作 hal::digital::GeneralOutput.

◆ setInput()

virtual void core::CoreGeneralPin::setInput ( void )
overridevirtual

將引腳模式設定為輸入模式。

此方法相當於執行 setDir(false) 操作,方便使用者直觀地將引腳設定為輸入模式。

實作 hal::digital::GeneralPin.

◆ setLow()

virtual void core::CoreGeneralPin::setLow ( void )
overridevirtual

設定引腳輸出低電平。

實作 hal::digital::GeneralOutput.

◆ setOutput()

virtual void core::CoreGeneralPin::setOutput ( void )
overridevirtual

將引腳模式設定為輸出模式。

此方法相當於執行 setDir(true) 操作,方便使用者直觀地將引腳設定為輸出模式。

實作 hal::digital::GeneralPin.

◆ setPinMode()

virtual hal::digital::GeneralPinMode core::CoreGeneralPin::setPinMode ( hal::digital::GeneralPinMode mode)
overridevirtual

設定引腳的工作模式。

此方法設定引腳的工作模式,並回傳設定後的模式。使用者可根據硬體需求設定合適的模式, 例如:推挽輸出、上拉、下拉或開漏模式。

參數
mode指定的工作模式,選項如下:
  • GeneralPinMode::PUSH_PULL 推挽輸出模式
  • GeneralPinMode::PULL_UP 引腳上拉模式
  • GeneralPinMode::PULL_DOWN 引腳下拉模式
  • GeneralPinMode::OPEN_DRAIN 開漏模式
傳回值
hal::digital::GeneralPinMode 設定成功後的工作模式。

實作 hal::digital::GeneralPin.

◆ setToggle()

virtual void core::CoreGeneralPin::setToggle ( void )
overridevirtual

設定引腳輸出反向電平。

實作 hal::digital::GeneralOutput.

◆ setValue()

virtual void core::CoreGeneralPin::setValue ( bool level)
overridevirtual

設定引腳輸出電平。

參數
leveltrue: 設定輸出高電平; false: 設定輸出低電平。

實作 hal::digital::GeneralOutput.


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