![]() |
mFrame
|
序列總線裝置類別 更多...
#include <SerialBusDevice.h>
公開型態 | |
| enum struct | State : uint8_t { IDLE = 0 , COMPLETE = 1 , NO_RESPONSE = 2 , BUS_ERROR = 3 , CANCEL = 4 } |
| 序列總線裝置狀態列舉 更多... | |
公開方法(Public Methods) | |
| SerialBusDevice (void) | |
| 建構序列總線裝置物件 | |
| virtual | ~SerialBusDevice (void) override |
| 解構序列總線裝置物件 | |
| virtual void | onComplete (int completedQuantity) override |
| 通訊完成事件處理 | |
| virtual void | onNoResponseEvent (int completedQuantity) override |
| 無回應事件處理 | |
| virtual void | onBusErrorEvent (int completedQuantity) override |
| 總線錯誤事件處理 | |
| virtual void | onCancel (int completedQuantity) override |
| 取消事件處理 | |
| void | flush (void) |
| 清除裝置狀態 | |
| int | getCompletedQuantity (void) const |
| 取得已完成傳輸的資料量 | |
| State | getStatus (void) const |
| 取得目前裝置狀態 | |
| bool | isIdle (void) const |
| 檢查裝置是否為閒置狀態 | |
| bool | isComplete (void) const |
| 檢查通訊是否已完成 | |
| bool | isNoResponse (void) const |
| 檢查是否發生無回應錯誤 | |
| bool | isBusError (void) const |
| 檢查是否發生總線錯誤 | |
| bool | isCancel (void) const |
| 檢查通訊是否被取消 | |
公開方法(Public Methods) 繼承自 ufm::lang::Object | |
| void * | operator new (size_t n) |
| 使用運算子 new 分配記憶體 | |
| void * | operator new (size_t n, void *p) |
| 在指定記憶體上調用運算子 new | |
| virtual ufm::lang::Object & | getObject (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::Thread * | currentThread (void) const |
| 取得當前執行緒指標 | |
| virtual int | hashcode (void) const |
| 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。 | |
公開方法(Public Methods) 繼承自 ufm::lang::Interface | |
| virtual | ~Interface (void)=default |
| 虛擬析構函式 | |
序列總線裝置類別
此類別實現了序列總線裝置的基本功能,並處理通訊完成、無回應、總線錯誤和取消事件。 提供狀態管理和完成數量查詢功能。
|
strong |
| ufm::io::SerialBusDevice::SerialBusDevice | ( | void | ) |
建構序列總線裝置物件
初始化裝置狀態為閒置,完成數量為0。
|
overridevirtual |
解構序列總線裝置物件
清理裝置資源。
| void ufm::io::SerialBusDevice::flush | ( | void | ) |
清除裝置狀態
重置裝置狀態為閒置,清除已完成數量記錄。用於準備新的通訊操作。
|
inline |
取得已完成傳輸的資料量
|
inline |
取得目前裝置狀態
|
inline |
檢查是否發生總線錯誤
|
inline |
檢查通訊是否被取消
|
inline |
檢查通訊是否已完成
|
inline |
檢查裝置是否為閒置狀態
|
inline |
檢查是否發生無回應錯誤
|
overridevirtual |
總線錯誤事件處理
當序列總線發生錯誤時被呼叫,記錄已完成的資料量並設置狀態為總線錯誤。
| completedQuantity | 發生錯誤前已成功傳輸的資料量 |
|
overridevirtual |
|
overridevirtual |
通訊完成事件處理
當序列總線通訊成功完成時被呼叫,記錄完成的資料量並將裝置狀態設置為完成。
| completedQuantity | 成功完成的資料量(位元組數) |
|
overridevirtual |
無回應事件處理
當目標裝置無回應時被呼叫,記錄已完成的資料量並設置狀態為無回應。
| completedQuantity | 發生無回應前已成功傳輸的資料量 |