mFrame
載入中...
搜尋中...
無符合項目
SerialBus.h
1
7#ifndef HAL_A1AF0B90_C246_476C_9487_B0164A301552
8#define HAL_A1AF0B90_C246_476C_9487_B0164A301552
9
10/* ***************************************************************************************
11 * Include
12 */
13
14//----------------------------------------------------------------------------------------
15#include "mframe.h"
16
17//----------------------------------------------------------------------------------------
18#include "./IICMaster.h"
19#include "./SerialBusEvent.h"
20#include "./SerialBusTransmit.h"
21
22/* ***************************************************************************************
23 * Namespace
24 */
25namespace hal::serial {
26 class SerialBus;
27} // namespace hal::serial
28
29/* ***************************************************************************************
30 * Class/Interface/Struct/Enum
31 */
38 /* *************************************************************************************
39 * Variable
40 */
41 private:
42 hal::serial::IICMaster& vIICMaster;
44 uint8* vBuffer;
45 uint16 vLength;
46 uint16 vIndex;
47
48 /* *************************************************************************************
49 * Abstract Method
50 */
51
52 /* *************************************************************************************
53 * Construct Method
54 */
55 public:
61
66 virtual ~SerialBus(void) override;
67
68 /* *************************************************************************************
69 * Operator Method
70 */
71
72 /* *************************************************************************************
73 * Public Method <Override> - hal::serial::SerialBusTransmit
74 */
75 public:
76 virtual bool isBusy(void) override;
77
78 virtual bool write(uint16 address, int length, const void* source,
79 hal::serial::SerialBusEvent* event) override;
80
81 virtual bool read(uint16 address, int length, void* buffer,
82 hal::serial::SerialBusEvent* event) override;
83
84 virtual bool cancel(void) override;
85
86 /* *************************************************************************************
87 * Public Method <Override> - hal::serial::IICEventTransfer
88 */
89 public:
90 virtual bool onTransfer(uint8& data) override;
91
92 /* *************************************************************************************
93 * Public Method <Override> - hal::serial::IICEventReceiver
94 */
95 public:
96 virtual bool onReceiver(const uint8 data) override;
97
98 /* *************************************************************************************
99 * Public Method <Override> - hal::serial::IICEventStop
100 */
101 public:
102 virtual void onStop(void) override;
103
104 /* *************************************************************************************
105 * Public Method <Override> - hal::serial::IICEventError
106 */
107 public:
108 virtual void onNanAcknowledgeEvent(void) override;
109
110 virtual void onBusBusyEvent(void) override;
111
112 /* *************************************************************************************
113 * Public Method
114 */
115
116 /* *************************************************************************************
117 * Protected Method
118 */
119
120 /* *************************************************************************************
121 * Private Method
122 */
123 private:
124 void flush(void);
125
126 /* *************************************************************************************
127 * Static Variable
128 */
129
130 /* *************************************************************************************
131 * Static Method
132 */
133};
134
135/* ***************************************************************************************
136 * End of file
137 */
138
139#endif /* HAL_A1AF0B90_C246_476C_9487_B0164A301552 */
Definition SerialBus.h:37
SerialBus(hal::serial::IICMaster &iicMaster)
Construct a new object.
virtual bool cancel(void) override
virtual bool isBusy(void) override
virtual bool read(uint16 address, int length, void *buffer, hal::serial::SerialBusEvent *event) override
virtual void onNanAcknowledgeEvent(void) override
當發生未回應事件時將調用
virtual bool onTransfer(uint8 &data) override
當發生傳輸事件時將調用此事件
virtual void onStop(void) override
當發生停止事件時將調用
virtual ~SerialBus(void) override
Destroy the object.
virtual bool onReceiver(const uint8 data) override
virtual bool write(uint16 address, int length, const void *source, hal::serial::SerialBusEvent *event) override
virtual void onBusBusyEvent(void) override
當發生總線忙碌時將調用
Definition Object.h:34
Definition IIC.h:25
Definition IICEventError.h:29
Definition IICEventReceiver.h:29
Definition IICEventStop.h:29
Definition IICEventTransfer.h:29
Definition IICMaster.h:31
Definition SerialBusEvent.h:29
Definition SerialBusTransmit.h:30