mFrame
載入中...
搜尋中...
無符合項目
CoreIIC.h
1
7#ifndef MCXA153_C907AFC6_A375_4FFB_B72E_DD0E8B616FD5
8#define MCXA153_C907AFC6_A375_4FFB_B72E_DD0E8B616FD5
9
10/* ***************************************************************************************
11 * Include
12 */
13#include "mframe.h"
14
15//----------------------------------------------------------------------------------------
16
17//----------------------------------------------------------------------------------------
18
19/* ***************************************************************************************
20 * Namespace
21 */
22namespace mcxa153::core {
23 class CoreIIC;
24} // namespace mcxa153::core
25
26/* ***************************************************************************************
27 * Class/Interface/Struct/Enum
28 */
73 public hal::serial::IIC,
77 public hal::InterruptEvent {
78 /* *************************************************************************************
79 * Enum - Select
80 */
81 public:
103 enum struct Select : unsigned char {
104 LPI2C0 = 0
105 };
106
107 /* *************************************************************************************
108 * Variable
109 */
110 public:
127 void* const vBase;
128
129 protected:
145
161
178
179 /* *************************************************************************************
180 * Abstract Method
181 */
182 // 此類別為具體實作,所有虛擬方法均有實體實作
183
184 /* *************************************************************************************
185 * Construct Method
186 */
187 public:
205
215 virtual ~CoreIIC(void) override;
216
217 /* *************************************************************************************
218 * Operator Method
219 */
220
221 /* *************************************************************************************
222 * Override Method - hal::Base
223 */
224 public:
241 virtual bool deinit(void) override;
242
259 virtual bool init(void) override;
260
272 virtual bool isInit(void) override;
273
274 /* *************************************************************************************
275 * Override Method - hal::serial::IIC
276 */
277 public:
292
307
321 virtual void setEventStop(hal::serial::IIC::EventStop* event) override;
322
323 /* *************************************************************************************
324 * Override Method - hal::serial::IIC::EventReceiver
325 */
326 public:
347 virtual bool onReceiver(const uint8 data) override;
348
349 /* *************************************************************************************
350 * Override Method - hal::serial::IIC::EventTransfer
351 */
352 public:
374 virtual bool onTransfer(uint8& data) override;
375
376 /* *************************************************************************************
377 * Override Method - hal::serial::IIC::EventStop
378 */
379 public:
403 virtual void onStop(void) override;
404
405 /* *************************************************************************************
406 * Override Method - hal::InterruptEvent
407 */
408 public:
431 virtual void interruptEvent(void) override;
432
433 /* *************************************************************************************
434 * Public Method
435 */
436
437 /* *************************************************************************************
438 * Protected Method
439 */
440 protected:
464 void setupInterrupt(void);
465
466 /* *************************************************************************************
467 * Private Method
468 */
469
470 /* *************************************************************************************
471 * Static Variable
472 */
473
474 /* *************************************************************************************
475 * Static Method
476 */
477};
478
479/* ***************************************************************************************
480 * End of file
481 */
482
483#endif /* MCXA153_C907AFC6_A375_4FFB_B72E_DD0E8B616FD5 */
MCXA153 I2C通訊控制器
Definition CoreIIC.h:77
virtual bool init(void) override
初始化I2C控制器
hal::serial::IIC::EventStop * vEventStop
通訊停止事件處理器指標
Definition CoreIIC.h:177
void setupInterrupt(void)
設定I2C中斷配置
hal::serial::IIC::EventReceiver * vEventReceiver
資料接收事件處理器指標
Definition CoreIIC.h:144
virtual bool isInit(void) override
檢查I2C控制器初始化狀態
hal::serial::IIC::EventTransfer * vEventTransfer
資料傳輸事件處理器指標
Definition CoreIIC.h:160
virtual bool deinit(void) override
反初始化I2C控制器
CoreIIC(Select select)
建構I2C通訊控制器物件
virtual ~CoreIIC(void) override
解構I2C通訊控制器物件
virtual void setEventReceiver(hal::serial::IIC::EventReceiver *event) override
設定資料接收事件處理器
virtual void interruptEvent(void) override
I2C中斷事件統一處理方法
virtual void setEventStop(hal::serial::IIC::EventStop *event) override
設定通訊停止事件處理器
virtual bool onReceiver(const uint8 data) override
資料接收事件回調方法
Select
I2C控制器選擇枚舉
Definition CoreIIC.h:103
@ LPI2C0
低功耗I2C控制器0
virtual bool onTransfer(uint8 &data) override
資料傳輸事件回調方法
virtual void onStop(void) override
通訊停止事件回調方法
virtual void setEventTransfer(hal::serial::IIC::EventTransfer *event) override
設定資料傳輸事件處理器
void *const vBase
I2C控制器基底暫存器位址
Definition CoreIIC.h:127
物件基底類別
Definition Object.h:63
Definition glikey/Mask.h:22
[Interface] 硬體中斷事件介面
Definition InterruptEvent.h:37
[Interface] IIC接收事件處理器
Definition IIC.h:80
[Interface] IIC停止事件監聽器
Definition IIC.h:103
[Interface] IIC傳輸事件處理器
Definition IIC.h:122
[Interface] IIC基礎介面
Definition IIC.h:38