Sha256: 0a99148e1a13a9672876cf505008f64d0d00d6ee15bf29c6d437eb1659f15c7a
Contents?: true
Size: 1.42 KB
Versions: 2
Compression:
Stored size: 1.42 KB
Contents
/* ========================================================================= CMock - Automatic Mock Generation for C ThrowTheSwitch.org Copyright (c) 2007-25 Mike Karlesky, Mark VanderVoord, & Greg Williams SPDX-License-Identifier: MIT ========================================================================= */ #include "Types.h" #include "TaskScheduler.h" typedef struct _Task { bool doIt; uint32 period; uint32 startTime; } Task; typedef struct _TaskSchedulerInstance { Task usart; Task adc; } TaskSchedulerInstance; static TaskSchedulerInstance this; void TaskScheduler_Init(void) { this.usart.doIt = FALSE; this.usart.startTime = 0; //The correct period this.usart.period = 1000; this.adc.doIt = FALSE; this.adc.startTime = 0; this.adc.period = 100; } void TaskScheduler_Update(uint32 time) { if ((time - this.usart.startTime) >= this.usart.period) { this.usart.doIt = TRUE; this.usart.startTime = time - (time % this.usart.period); } if ((time - this.adc.startTime) >= this.adc.period) { this.adc.doIt = TRUE; this.adc.startTime = time - (time % this.adc.period); } } bool TaskScheduler_DoUsart(void) { bool doIt = FALSE; if (this.usart.doIt) { doIt = TRUE; this.usart.doIt = FALSE; } return doIt; } bool TaskScheduler_DoAdc(void) { bool doIt = FALSE; if (this.adc.doIt) { doIt = TRUE; this.adc.doIt = FALSE; } return doIt; }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ceedling-1.0.1 | vendor/cmock/examples/temp_sensor/src/TaskScheduler.c |
ceedling-1.0.0 | vendor/cmock/examples/temp_sensor/src/TaskScheduler.c |