mFrame
載入中...
搜尋中...
無符合項目
CoreIICMaster.h
1
7#ifndef CORE_721B5DCB_2DC8_4E6C_B4E8_7DF3E15E63E2
8#define CORE_721B5DCB_2DC8_4E6C_B4E8_7DF3E15E63E2
9
10/* ***************************************************************************************
11 * Include
12 */
13
14//----------------------------------------------------------------------------------------
15#include "hal.h"
16#include "mframe.h"
17
18//----------------------------------------------------------------------------------------
19#include "./CoreIIC.h"
20
21/* ***************************************************************************************
22 * Namespace
23 */
24namespace core {
25 class CoreIICMaster;
26} // namespace core
27
28/* ***************************************************************************************
29 * Class/Interface/Struct/Enum
30 */
34 /* *************************************************************************************
35 * Variable
36 */
37 protected:
38 hal::serial::IICEventError* vIICEventError;
39
40 /* *************************************************************************************
41 * Abstract Method
42 */
43
44 /* *************************************************************************************
45 * Construct Method
46 */
47 public:
53 CoreIICMaster(CoreIIC::Select select);
54
59 virtual ~CoreIICMaster(void) override;
60
61 /* *************************************************************************************
62 * Operator Method
63 */
64
65 /* *************************************************************************************
66 * Public Method <Override> - core::CoreIIC
67 */
68 public:
69 virtual bool init(void) override;
70
71 /* *************************************************************************************
72 * Public Method <Override> - hal::serial::IICMaster
73 */
74 public:
75 virtual hal::serial::IIC& getIIC(void) override;
76
77 virtual bool isBusy(void) override;
78
79 virtual void setClock(uint32 hz) override;
80
81 virtual uint32 getClock(void) override;
82
83 virtual bool beginWrite(uint16 address) override;
84
85 virtual bool beginRead(uint16 address) override;
86
87 virtual bool abort(void) override;
88
89 virtual void setEventError(hal::serial::IICEventError* event = nullptr) override;
90
91 /* *************************************************************************************
92 * Public Method <Override> - hal::serial::IICEventError
93 */
94 public:
95 virtual void onNanAcknowledgeEvent(void) override;
96
97 virtual void onBusBusyEvent(void) override;
98
99 /* *************************************************************************************
100 * Public Method <Override> - hal::InterruptEvent
101 */
102 public:
103 virtual void interruptEvent(void) override;
104
105 /* *************************************************************************************
106 * Public Method
107 */
108
109 /* *************************************************************************************
110 * Protected Method
111 */
112 protected:
113 void masterReset(void);
114
115 bool transfer(uint16 address, bool direction = true);
116
117 /* *************************************************************************************
118 * Private Method
119 */
120
121 /* *************************************************************************************
122 * Static Variable
123 */
124
125 /* *************************************************************************************
126 * Static Method
127 */
128};
129
130/* ***************************************************************************************
131 * End of file
132 */
133
134#endif /* CORE_721B5DCB_2DC8_4E6C_B4E8_7DF3E15E63E2 */
Definition CoreIIC.h:35
Definition CoreIICMaster.h:33
virtual bool beginWrite(uint16 address) override
開始傳輸事件
CoreIICMaster(CoreIIC::Select select)
Construct a new Core IIC Master object.
virtual void onNanAcknowledgeEvent(void) override
當發生未回應事件時將調用
virtual bool abort(void) override
virtual hal::serial::IIC & getIIC(void) override
取得IIC基類
virtual bool isBusy(void) override
取得裝置是否忙碌
virtual bool init(void) override
硬體初始化。
virtual void setClock(uint32 hz) override
設定傳輸速率
virtual ~CoreIICMaster(void) override
Destroy the object.
virtual void onBusBusyEvent(void) override
當發生總線忙碌時將調用
virtual void setEventError(hal::serial::IICEventError *event=nullptr) override
Set the Event Error object.
virtual uint32 getClock(void) override
取得傳輸速率
virtual bool beginRead(uint16 address) override
開始讀取事件
virtual void interruptEvent(void) override
硬體中斷觸發事件
Definition glikey/Mask.h:22
Definition IICEventError.h:29
Definition IIC.h:32
Definition IICMaster.h:31