Imt.Base C++ API V4.1.1.0
Loading...
Searching...
No Matches
MockTIM.h
Go to the documentation of this file.
1// (c) IMT - Information Management Technology AG, CH-9470 Buchs, www.imt.ch.
2
3#ifndef STM32H730_MOCKTIM_H
4#define STM32H730_MOCKTIM_H
5
8#include <map>
9
10namespace imt {
11namespace base {
12namespace hal {
13namespace stm32h730 {
14namespace mock {
15
19class MockTIM {
20public:
21
22 explicit MockTIM() {
23 clear();
24 }
25
26 virtual ~MockTIM() {
27 }
28
29 void clear() {
30 m_captureCompareEnabledMap.clear();
31 m_mainOutputEnabledMap.clear();
32 m_timerEnabledMap.clear();
33 m_flagMap.clear();
34 m_irqMap.clear();
35 m_pwmMap.clear();
36 }
37
39 }
40
42 }
43
45 }
46
48 }
49
51 }
52
53 void enable(TIMModuleAddress const module, bool const doEnable) {
54 m_timerEnabledMap[module] = doEnable;
55 }
56
57 void enableCC(TIMModuleAddress const module, bool const doEnable) {
58 m_captureCompareEnabledMap[module] = doEnable;
59 }
60
61 void enableMOE(TIMModuleAddress const module, bool const doEnable) {
62 m_mainOutputEnabledMap[module] = doEnable;
63 }
64
66 m_flagMap[module][flag] = false;
67 }
68
70 return m_flagMap[module][flag];
71 }
72
73 void enableIrq(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Irq const irq, bool const doEnable) {
74 m_irqMap[module][irq] = doEnable;
75 }
76
78 return m_irqMap[module][irq];
79 }
80
81 void setCounter(TIMModuleAddress const module, uint32_t const count) {
82 }
83
85 return 0U;
86 }
87
89 m_pwmMap[module][channel] = value;
90 }
91
93 return m_pwmMap[module][channel];
94 }
95
96 void setAutoReload(TIMModuleAddress const module, uint32_t const value) {
97 }
98
100 }
101
103 }
104
106 }
107
109 }
110
112 }
113
115 }
116
118 }
119
121 }
122
124 return true;
125 }
126
127 bool isEnabled(TIMModuleAddress const module) {
128 return m_timerEnabledMap[module];
129 }
130
131 bool isCCEnabled(TIMModuleAddress const module) {
132 return m_captureCompareEnabledMap[module];
133 }
134
135 bool isMOEEnabled(TIMModuleAddress const module) {
136 return m_mainOutputEnabledMap[module];
137 }
138
140 m_flagMap[module][flag] = true;
141 }
142
143private:
144
145 std::map<TIMModuleAddress, bool> m_captureCompareEnabledMap;
146 std::map<TIMModuleAddress, bool> m_mainOutputEnabledMap;
147 std::map<TIMModuleAddress, bool> m_timerEnabledMap;
148 std::map<TIMModuleAddress, std::map<imt::base::hal::stm32h730::peripherals::TIM::Irq, bool>> m_irqMap;
149 std::map<TIMModuleAddress, std::map<imt::base::hal::stm32h730::peripherals::TIM::Flag, bool>> m_flagMap;
150 std::map<TIMModuleAddress, std::map<imt::base::hal::stm32h730::peripherals::TIM::Channel, uint32_t>> m_pwmMap;
151};
152
153} // namespace mock
154} // namespace stm32h730
155} // namespace hal
156} // namespace base
157} // namespace imt
158
159#endif // #ifndef STM32H730_MOCKADC_H
Mock implementation for the TIM module.
Definition MockTIM.h:19
void enable(TIMModuleAddress const module, bool const doEnable)
Definition MockTIM.h:53
bool isInputCaptureSelected(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:123
bool isCCEnabled(TIMModuleAddress const module)
Definition MockTIM.h:131
void initInputCapture(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::ICInitStruct const &inputCaptureConfig, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:105
void setOCConfig(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::OCInitStruct const &ocInitStruct, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:99
void clearFlag(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Flag const flag)
Definition MockTIM.h:65
void initClock(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::ClkSrcInitStruct const &clockSourceConfig)
Definition MockTIM.h:41
void enableMOE(TIMModuleAddress const module, bool const doEnable)
Definition MockTIM.h:61
uint32_t getCompare(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:92
void configPWMChannel(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::OCInitStruct const &ocInitStruct, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:102
void setAutoReload(TIMModuleAddress const module, uint32_t const value)
Definition MockTIM.h:96
uint32_t getCounter(TIMModuleAddress const module)
Definition MockTIM.h:84
bool isFlagSet(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Flag const flag)
Definition MockTIM.h:69
void setCompare(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel, uint32_t const value)
Definition MockTIM.h:88
void startInputCapture(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:117
void startPWM(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:111
void configSlave(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::SlaveInitStruct const &slaveConfig)
Definition MockTIM.h:50
void enableCC(TIMModuleAddress const module, bool const doEnable)
Definition MockTIM.h:57
void configMaster(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::MasterInitStruct const &masterConfig)
Definition MockTIM.h:47
void init(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::InitStruct const &initConfig)
Definition MockTIM.h:38
bool isEnabled(TIMModuleAddress const module)
Definition MockTIM.h:127
void setFlag(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Flag const flag)
Definition MockTIM.h:139
void enableIrq(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Irq const irq, bool const doEnable)
Definition MockTIM.h:73
bool isIrqEnabled(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Irq const irq)
Definition MockTIM.h:77
bool isMOEEnabled(TIMModuleAddress const module)
Definition MockTIM.h:135
void setTIConfig(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::ICInitStruct const &init, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:108
void setCounter(TIMModuleAddress const module, uint32_t const count)
Definition MockTIM.h:81
void stopInputCapture(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:120
void initEncoder(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::EncInitStruct const &encoderConfig)
Definition MockTIM.h:44
void startEncoder(TIMModuleAddress const module, imt::base::hal::stm32h730::peripherals::TIM::Channel const channel)
Definition MockTIM.h:114
Channel
Enumeration of the available TIM Complementary OC Pin State parameters.
Definition TIM.h:414
Irq
Enumeration of the available interrupts.
Definition TIM.h:447
Flag
Enumeration of the available interrupt flags.
Definition TIM.h:426
TIMModuleAddress
Enumeration of the available TIM modules identifiers.
This is a application specific file which is used to configure Imt.Base.Core.Math.
unsigned __int32 uint32_t
Definition stdint.h:64
TIM clock init structure definition.
Definition TIM.h:119
Encoder Configuration structure defintion.
Definition TIM.h:266
Input Capture Configuration structure defintion.
Definition TIM.h:404
Master Configuration structure defintion.
Definition TIM.h:332
Output Compare configuration structure definition.
Definition TIM.h:197