mFrame
載入中...
搜尋中...
無符合項目
IICMaster.h
1
7#ifndef MFRAME_BC6AED96_3002_4548_9697_75C3F61F2EE5
8#define MFRAME_BC6AED96_3002_4548_9697_75C3F61F2EE5
9
10/* ***************************************************************************************
11 * Include
12 */
13
14//----------------------------------------------------------------------------------------
15#include "./../../ufm/lang/Interface.h"
16
17//----------------------------------------------------------------------------------------
18#include "./../serial/IIC.h"
19
20/* ***************************************************************************************
21 * Namespace
22 */
23namespace hal::serial {
24 struct IICMaster;
25} // namespace hal::serial
26
27/* ***************************************************************************************
28 * Class/Interface/Struct/Enum
29 */
30
40 /* *************************************************************************************
41 * Class/Interface/Struct/Enum
42 */
43 struct EventError;
44
45 /* *************************************************************************************
46 * Method
47 */
48
54 virtual hal::serial::IIC& getIIC(void) abstract;
55
62 virtual bool isBusy(void) abstract;
63
69 virtual void setClock(uint32 hz) abstract;
70
76 virtual uint32 getClock(void) abstract;
77
94 virtual bool beginWrite(uint16 address) abstract;
95
112 virtual bool beginRead(uint16 address) abstract;
113
120 virtual bool abort(void) abstract;
121
127 virtual void setEventError(
128 hal::serial::IICMaster::EventError* event = nullptr) abstract;
129};
130
139struct hal::serial::IICMaster::EventError {
140 /* ***********************************************************************************
141 * Method
142 */
143
147 virtual void onNanAcknowledgeEvent(int queueRemainingCount) abstract;
148
152 virtual void onBusBusyEvent(void) abstract;
153};
154
155/* ***************************************************************************************
156 * End of file
157 */
158
159#endif /* MFRAME_BC6AED96_3002_4548_9697_75C3F61F2EE5 */
Definition IIC.h:22
Definition AnalogInputPin.h:22
[Interface] IIC基礎介面
Definition IIC.h:38
[Interface] IIC錯誤事件處理器
Definition IICMaster.h:139
virtual void onNanAcknowledgeEvent(int queueRemainingCount) override
當發生無回應(NAK)事件時調用
virtual void onBusBusyEvent(void) override
當發生總線忙碌事件時調用
[Interface] IIC主端設備介面
Definition IICMaster.h:39
virtual bool beginWrite(uint16 address) override
開始傳輸事件
virtual bool beginRead(uint16 address) override
開始讀取事件
virtual void setEventError(hal::serial::IICMaster::EventError *event=nullptr) override
設定錯誤事件處理器
virtual bool abort(void) override
中止當前傳輸
virtual void setClock(uint32 hz) override
設定傳輸時脈頻率
virtual bool isBusy(void) override
檢查總線狀態
virtual hal::serial::IIC & getIIC(void) override
取得IIC基礎介面參考
virtual uint32 getClock(void) override
讀取當前傳輸時脈頻率