rusEFI
The most advanced open source ECU
Public Member Functions | Static Private Member Functions | Private Attributes
CanCycle Class Reference

#include <can.h>

Collaboration diagram for CanCycle:
Collaboration graph
[legend]

Public Member Functions

 CanCycle (uint32_t cycleCounter200hz)
 
bool isInterval (CanInterval interval)
 

Static Private Member Functions

static CanInterval computeFlags (uint32_t cycleCount)
 

Private Attributes

const CanInterval m_cycleFlags
 

Detailed Description

Definition at line 84 of file can.h.

Constructor & Destructor Documentation

◆ CanCycle()

CanCycle::CanCycle ( uint32_t  cycleCounter200hz)
inlineexplicit

Definition at line 86 of file can.h.

87  : m_cycleFlags(computeFlags(cycleCounter200hz))
88  {
89  }
const CanInterval m_cycleFlags
Definition: can.h:98
static CanInterval computeFlags(uint32_t cycleCount)
Definition: can_tx.cpp:82

Member Function Documentation

◆ computeFlags()

CanInterval CanCycle::computeFlags ( uint32_t  cycleCount)
staticprivate

Definition at line 82 of file can_tx.cpp.

82  {
83  CanInterval cycleMask = CanInterval::_5ms;
84 
85  if ((cycleCount % 2) == 0) {
86  cycleMask |= CI::_10ms;
87  }
88 
89  if ((cycleCount % 4) == 0) {
90  cycleMask |= CI::_20ms;
91  }
92 
93  if ((cycleCount % 10) == 0) {
94  cycleMask |= CI::_50ms;
95  }
96 
97  if ((cycleCount % 20) == 0) {
98  cycleMask |= CI::_100ms;
99  }
100 
101  if ((cycleCount % 40) == 0) {
102  cycleMask |= CI::_200ms;
103  }
104 
105  if ((cycleCount % 50) == 0) {
106  cycleMask |= CI::_250ms;
107  }
108 
109  if ((cycleCount % 100) == 0) {
110  cycleMask |= CI::_500ms;
111  }
112 
113  if ((cycleCount % 200) == 0) {
114  cycleMask |= CI::_1000ms;
115  }
116 
117  return cycleMask;
118 }
CanInterval
Definition: can.h:32

◆ isInterval()

bool CanCycle::isInterval ( CanInterval  interval)
inline

Field Documentation

◆ m_cycleFlags

const CanInterval CanCycle::m_cycleFlags
private

Definition at line 98 of file can.h.

Referenced by isInterval().


The documentation for this class was generated from the following files: