Merge pull request #33 from Fastium/FIX/init-dec_order
FIX initialisation and declaration order
This commit is contained in:
commit
980eb2b376
@ -61,7 +61,10 @@ BikeSystem::BikeSystem()
|
|||||||
: _gearDevice(_timer),
|
: _gearDevice(_timer),
|
||||||
_pedalDevice(_timer),
|
_pedalDevice(_timer),
|
||||||
_resetDevice(_timer),
|
_resetDevice(_timer),
|
||||||
|
_displayDevice(),
|
||||||
_speedometer(_timer),
|
_speedometer(_timer),
|
||||||
|
_sensorDevice(),
|
||||||
|
_taskLogger(),
|
||||||
_cpuLogger(_timer) {}
|
_cpuLogger(_timer) {}
|
||||||
|
|
||||||
void BikeSystem::start() {
|
void BikeSystem::start() {
|
||||||
@ -205,29 +208,18 @@ void BikeSystem::speedDistanceTask() {
|
|||||||
_timer, advembsof::TaskLogger::kSpeedTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kSpeedTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::temperatureTask() {
|
void BikeSystem::displayTask1() {
|
||||||
auto taskStartTime = _timer.elapsed_time();
|
auto taskStartTime = _timer.elapsed_time();
|
||||||
|
|
||||||
tr_warn("Tick1 %" PRIu64, _timer.elapsed_time().count());
|
_displayDevice.displayGear(_currentGear);
|
||||||
|
_displayDevice.displaySpeed(_currentSpeed);
|
||||||
// no need to protect access to data members (single threaded)
|
_displayDevice.displayDistance(_traveledDistance);
|
||||||
_currentTemperature = _sensorDevice.readTemperature();
|
|
||||||
|
|
||||||
tr_warn("Tick2 %" PRIu64, _timer.elapsed_time().count());
|
|
||||||
|
|
||||||
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||||
kTemperatureTaskComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
kDisplayTask1ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
||||||
|
|
||||||
// simulate task computation by waiting for the required task computation time
|
|
||||||
|
|
||||||
// std::chrono::microseconds elapsedTime =
|
|
||||||
// std::chrono::microseconds::zero(); while (elapsedTime <
|
|
||||||
// kTemperatureTaskComputationTime) {
|
|
||||||
// elapsedTime = _timer.elapsed_time() - taskStartTime;
|
|
||||||
// }
|
|
||||||
|
|
||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kTemperatureTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kDisplayTask1Index, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::resetTask() {
|
void BikeSystem::resetTask() {
|
||||||
@ -243,27 +235,17 @@ void BikeSystem::resetTask() {
|
|||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kResetTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kResetTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
void BikeSystem::temperatureTask() {
|
||||||
void BikeSystem::displayTask1() {
|
|
||||||
auto taskStartTime = _timer.elapsed_time();
|
auto taskStartTime = _timer.elapsed_time();
|
||||||
|
|
||||||
_displayDevice.displayGear(_currentGear);
|
// no need to protect access to data members (single threaded)
|
||||||
_displayDevice.displaySpeed(_currentSpeed);
|
_currentTemperature = _sensorDevice.readTemperature();
|
||||||
_displayDevice.displayDistance(_traveledDistance);
|
|
||||||
|
|
||||||
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||||
kDisplayTask1ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
kTemperatureTaskComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
||||||
|
|
||||||
// simulate task computation by waiting for the required task computation time
|
|
||||||
|
|
||||||
// std::chrono::microseconds elapsedTime =
|
|
||||||
// std::chrono::microseconds::zero(); while (elapsedTime <
|
|
||||||
// kDisplayTask1ComputationTime) {
|
|
||||||
// elapsedTime = _timer.elapsed_time() - taskStartTime;
|
|
||||||
// }
|
|
||||||
|
|
||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kDisplayTask1Index, taskStartTime);
|
_timer, advembsof::TaskLogger::kTemperatureTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::displayTask2() {
|
void BikeSystem::displayTask2() {
|
||||||
@ -274,13 +256,6 @@ void BikeSystem::displayTask2() {
|
|||||||
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||||
kDisplayTask2ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
kDisplayTask2ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
||||||
|
|
||||||
// simulate task computation by waiting for the required task computation time
|
|
||||||
|
|
||||||
// std::chrono::microseconds elapsedTime =
|
|
||||||
// std::chrono::microseconds::zero(); while (elapsedTime <
|
|
||||||
// kDisplayTask2ComputationTime) {
|
|
||||||
// elapsedTime = _timer.elapsed_time() - taskStartTime;
|
|
||||||
// }
|
|
||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kDisplayTask2Index, taskStartTime);
|
_timer, advembsof::TaskLogger::kDisplayTask2Index, taskStartTime);
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ namespace static_scheduling {
|
|||||||
|
|
||||||
static constexpr std::chrono::microseconds kTaskRunTime = 200000us;
|
static constexpr std::chrono::microseconds kTaskRunTime = 200000us;
|
||||||
|
|
||||||
PedalDevice::PedalDevice(Timer& timer) : _timer(timer) {}
|
PedalDevice::PedalDevice(Timer& timer) : _timer(timer), _pedalRotationTime(0) {}
|
||||||
|
|
||||||
std::chrono::milliseconds PedalDevice::getCurrentRotationTime() {
|
std::chrono::milliseconds PedalDevice::getCurrentRotationTime() {
|
||||||
std::chrono::microseconds initialTime = _timer.elapsed_time();
|
std::chrono::microseconds initialTime = _timer.elapsed_time();
|
||||||
|
@ -46,9 +46,9 @@ class PedalDevice {
|
|||||||
void decreaseRotationSpeed();
|
void decreaseRotationSpeed();
|
||||||
|
|
||||||
// data members
|
// data members
|
||||||
|
Timer& _timer;
|
||||||
std::chrono::milliseconds _pedalRotationTime =
|
std::chrono::milliseconds _pedalRotationTime =
|
||||||
bike_computer::kInitialPedalRotationTime;
|
bike_computer::kInitialPedalRotationTime;
|
||||||
Timer& _timer;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace static_scheduling
|
} // namespace static_scheduling
|
||||||
|
@ -43,7 +43,8 @@ namespace static_scheduling {
|
|||||||
|
|
||||||
static constexpr std::chrono::microseconds kTaskRunTime = 100000us;
|
static constexpr std::chrono::microseconds kTaskRunTime = 100000us;
|
||||||
|
|
||||||
ResetDevice::ResetDevice(Timer& timer) : _timer(timer), _resetButton(PUSH_BUTTON) {
|
ResetDevice::ResetDevice(Timer& timer)
|
||||||
|
: _resetButton(PUSH_BUTTON), _timer(timer), _pressTime(0) {
|
||||||
_resetButton.rise(callback(this, &ResetDevice::onRise));
|
_resetButton.rise(callback(this, &ResetDevice::onRise));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,7 +67,10 @@ BikeSystem::BikeSystem()
|
|||||||
: _gearDevice(),
|
: _gearDevice(),
|
||||||
_pedalDevice(),
|
_pedalDevice(),
|
||||||
_resetDevice(callback(this, &BikeSystem::onReset)),
|
_resetDevice(callback(this, &BikeSystem::onReset)),
|
||||||
|
_displayDevice(),
|
||||||
_speedometer(_timer),
|
_speedometer(_timer),
|
||||||
|
_sensorDevice(),
|
||||||
|
_taskLogger(),
|
||||||
_cpuLogger(_timer) {}
|
_cpuLogger(_timer) {}
|
||||||
|
|
||||||
void BikeSystem::start() {
|
void BikeSystem::start() {
|
||||||
@ -176,21 +179,18 @@ void BikeSystem::speedDistanceTask() {
|
|||||||
_timer, advembsof::TaskLogger::kSpeedTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kSpeedTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::temperatureTask() {
|
void BikeSystem::displayTask1() {
|
||||||
auto taskStartTime = _timer.elapsed_time();
|
auto taskStartTime = _timer.elapsed_time();
|
||||||
|
|
||||||
// tr_warn("Tick1 %" PRIu64, _timer.elapsed_time().count());
|
_displayDevice.displayGear(_currentGear);
|
||||||
|
_displayDevice.displaySpeed(_currentSpeed);
|
||||||
// no need to protect access to data members (single threaded)
|
_displayDevice.displayDistance(_traveledDistance);
|
||||||
_currentTemperature = _sensorDevice.readTemperature();
|
|
||||||
|
|
||||||
// tr_warn("Tick2 %" PRIu64, _timer.elapsed_time().count());
|
|
||||||
|
|
||||||
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||||
kTemperatureTaskComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
kDisplayTask1ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
||||||
|
|
||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kTemperatureTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kDisplayTask1Index, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::resetTask() {
|
void BikeSystem::resetTask() {
|
||||||
@ -208,18 +208,17 @@ void BikeSystem::resetTask() {
|
|||||||
_timer, advembsof::TaskLogger::kResetTaskIndex, taskStartTime);
|
_timer, advembsof::TaskLogger::kResetTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::displayTask1() {
|
void BikeSystem::temperatureTask() {
|
||||||
auto taskStartTime = _timer.elapsed_time();
|
auto taskStartTime = _timer.elapsed_time();
|
||||||
|
|
||||||
_displayDevice.displayGear(_currentGear);
|
// no need to protect access to data members (single threaded)
|
||||||
_displayDevice.displaySpeed(_currentSpeed);
|
_currentTemperature = _sensorDevice.readTemperature();
|
||||||
_displayDevice.displayDistance(_traveledDistance);
|
|
||||||
|
|
||||||
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
ThisThread::sleep_for(std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||||
kDisplayTask1ComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
kTemperatureTaskComputationTime - (_timer.elapsed_time() - taskStartTime)));
|
||||||
|
|
||||||
_taskLogger.logPeriodAndExecutionTime(
|
_taskLogger.logPeriodAndExecutionTime(
|
||||||
_timer, advembsof::TaskLogger::kDisplayTask1Index, taskStartTime);
|
_timer, advembsof::TaskLogger::kTemperatureTaskIndex, taskStartTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BikeSystem::displayTask2() {
|
void BikeSystem::displayTask2() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user