rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
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 83 of file can.h.

Constructor & Destructor Documentation

◆ CanCycle()

CanCycle::CanCycle ( uint32_t  cycleCounter200hz)
inlineexplicit

Definition at line 85 of file can.h.

86 : m_cycleFlags(computeFlags(cycleCounter200hz))
87 {
88 }
const CanInterval m_cycleFlags
Definition can.h:97
static CanInterval computeFlags(uint32_t cycleCount)
Definition can_tx.cpp:106

Member Function Documentation

◆ computeFlags()

CanInterval CanCycle::computeFlags ( uint32_t  cycleCount)
staticprivate

Definition at line 106 of file can_tx.cpp.

106 {
107 CanInterval cycleMask = CanInterval::_5ms;
108
109 if ((cycleCount % 2) == 0) {
110 cycleMask |= CI::_10ms;
111 }
112
113 if ((cycleCount % 4) == 0) {
114 cycleMask |= CI::_20ms;
115 }
116
117 if ((cycleCount % 10) == 0) {
118 cycleMask |= CI::_50ms;
119 }
120
121 if ((cycleCount % 20) == 0) {
122 cycleMask |= CI::_100ms;
123 }
124
125 if ((cycleCount % 40) == 0) {
126 cycleMask |= CI::_200ms;
127 }
128
129 if ((cycleCount % 50) == 0) {
130 cycleMask |= CI::_250ms;
131 }
132
133 if ((cycleCount % 100) == 0) {
134 cycleMask |= CI::_500ms;
135 }
136
137 if ((cycleCount % 200) == 0) {
138 cycleMask |= CI::_1000ms;
139 }
140
141 return cycleMask;
142}
CanInterval
Definition can.h:29

◆ isInterval()

bool CanCycle::isInterval ( CanInterval  interval)
inline

Field Documentation

◆ m_cycleFlags

const CanInterval CanCycle::m_cycleFlags
private

Definition at line 97 of file can.h.

Referenced by isInterval().


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