mFrame
載入中...
搜尋中...
無符合項目
ufm::hw::VirtualGeneralPin 類別 參考文件

虛擬GPIO引腳類別。 更多...

#include <VirtualGeneralPin.h>

類別ufm::hw::VirtualGeneralPin的繼承圖:
ufm::lang::Object hal::digital::GeneralPin ufm::lang::Interface hal::digital::GeneralOutput hal::digital::GeneralInput

公開方法(Public Methods)

 VirtualGeneralPin (void)
 建構虛擬GPIO引腳。
 
virtual ~VirtualGeneralPin (void) override
 解構虛擬通用引腳物件。
 
virtual GeneralPin::Mode getPinMode (void) override
 取得引腳目前的工作模式。
 
virtual GeneralPin::Mode setPinMode (GeneralPin::Mode mode) override
 設定引腳的工作模式。
 
virtual bool getDir (void) override
 取得引腳的方向。
 
virtual hal::digital::GeneralPinsetDir (bool dir) override
 設定引腳的方向。
 
virtual hal::digital::GeneralPinsetInput (void) override
 將引腳模式設定為輸入模式。
 
virtual hal::digital::GeneralPinsetOutput (void) override
 將引腳模式設定為輸出模式。
 
virtual hal::digital::GeneralOutputsetHigh (void) override
 設定輸出為高電平。
 
virtual hal::digital::GeneralOutputsetLow (void) override
 設定輸出為低電平。
 
virtual hal::digital::GeneralOutputsetToggle (void) override
 設定引腳輸出反向電平。
 
virtual hal::digital::GeneralOutputsetValue (bool level) override
 設定引腳輸出電平。
 
virtual bool getValue (void) override
 讀取引腳輸入電平。
 
virtual bool setInputValue (bool level)
 模擬輸入訊號。
 
- 公開方法(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::digital::GeneralPin
virtual GeneralPin::Mode setPinMode (GeneralPin::Mode mode) override
 設定引腳的工作模式。
 

額外的繼承成員

- 公開型態 繼承自 hal::digital::GeneralPin
enum struct  Mode : uint8 {
  NOT_SUPPORT , FLOAT , PUSH_PULL , PULL_UP ,
  PULL_DOWN , OPEN_DRAIN , OPEN_DRAIN_PULL_UP
}
 GPIO引腳電氣特性模式。 更多...
 

詳細描述

虛擬GPIO引腳類別。

用於模擬GPIO引腳行為的軟體實作:

  • 支援所有標準GPIO操作
  • 可用於測試和開發
  • 不依賴實際硬體
1.0.0

建構子與解構子說明文件

◆ VirtualGeneralPin()

ufm::hw::VirtualGeneralPin::VirtualGeneralPin ( void )

建構虛擬GPIO引腳。

初始化一個新的虛擬GPIO引腳實例:

  • 預設為輸入模式
  • 初始電平為低
  • 設定為推挽輸出類型

函式成員說明文件

◆ getDir()

virtual bool ufm::hw::VirtualGeneralPin::getDir ( void )
overridevirtual

取得引腳的方向。

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

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

實作 hal::digital::GeneralPin.

◆ getPinMode()

virtual GeneralPin::Mode ufm::hw::VirtualGeneralPin::getPinMode ( void )
overridevirtual

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

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

傳回值
hal::digital::GeneralPin::Mode

實作 hal::digital::GeneralPin.

◆ getValue()

virtual bool ufm::hw::VirtualGeneralPin::getValue ( void )
overridevirtual

讀取引腳輸入電平。

讀取當前引腳的電平狀態,可用於輸入模式下讀取外部信號, 或在輸出模式下確認當前輸出狀態。

傳回值
true 高電平
false 低電平

實作 hal::digital::GeneralInput.

◆ setDir()

virtual hal::digital::GeneralPin & ufm::hw::VirtualGeneralPin::setDir ( bool dir)
overridevirtual

設定引腳的方向。

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

參數
dir設定方向:true 為輸出,false 為輸入。
傳回值
hal::digital::GeneralPin& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralPin.

◆ setHigh()

virtual hal::digital::GeneralOutput & ufm::hw::VirtualGeneralPin::setHigh ( void )
overridevirtual

設定輸出為高電平。

將GPIO引腳輸出設為邏輯高電平(1)。

傳回值
hal::digital::GeneralOutput& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralOutput.

◆ setInput()

virtual hal::digital::GeneralPin & ufm::hw::VirtualGeneralPin::setInput ( void )
overridevirtual

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

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

傳回值
hal::digital::GeneralPin& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralPin.

◆ setInputValue()

virtual bool ufm::hw::VirtualGeneralPin::setInputValue ( bool level)
virtual

模擬輸入訊號。

當引腳設定為輸入模式時,可透過此方法設定模擬的輸入電平值。 這對於測試和開發非常有用,可以模擬外部信號輸入。

參數
level要模擬的輸入電平:true 為高電平,false 為低電平
傳回值
true 模擬成功(當前為輸入模式)
false 模擬失敗(當前為輸出模式)

◆ setLow()

virtual hal::digital::GeneralOutput & ufm::hw::VirtualGeneralPin::setLow ( void )
overridevirtual

設定輸出為低電平。

將GPIO引腳輸出設為邏輯低電平(0)。

傳回值
hal::digital::GeneralOutput& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralOutput.

◆ setOutput()

virtual hal::digital::GeneralPin & ufm::hw::VirtualGeneralPin::setOutput ( void )
overridevirtual

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

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

傳回值
hal::digital::GeneralPin& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralPin.

◆ setPinMode()

virtual GeneralPin::Mode ufm::hw::VirtualGeneralPin::setPinMode ( GeneralPin::Mode mode)
overridevirtual

設定引腳的工作模式。

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

參數
mode指定的工作模式,選項如下:
傳回值
hal::digital::GeneralPin::Mode 設定成功後的工作模式。

◆ setToggle()

virtual hal::digital::GeneralOutput & ufm::hw::VirtualGeneralPin::setToggle ( void )
overridevirtual

設定引腳輸出反向電平。

將當前輸出電平反轉:高電平變低電平,低電平變高電平。

傳回值
hal::digital::GeneralOutput& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralOutput.

◆ setValue()

virtual hal::digital::GeneralOutput & ufm::hw::VirtualGeneralPin::setValue ( bool level)
overridevirtual

設定引腳輸出電平。

參數
leveltrue: 設定輸出高電平; false: 設定輸出低電平。
傳回值
hal::digital::GeneralOutput& 回傳自身參考,支援鏈式呼叫。

實作 hal::digital::GeneralOutput.


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