Demonstrate multiple cogs printing to the same serial terminal simultaneously
cmake_minimum_required(VERSION 3.3)
project(SynchronousPrinter_Demo)
create_simple_executable(${PROJECT_NAME} SynchronousPrinter_Demo.cpp)
const uint16_t COGS = 8;
const uint16_t STACK_SIZE = 128;
const unsigned int DELAY_IN_SECONDS = 2;
const uint32_t WAIT_TIME = DELAY_IN_SECONDS * SECOND;
public:
template<size_t N>
: Runnable(stack) {
}
uint32_t nextCnt;
nextCnt = WAIT_TIME + CNT;
while (1) {
nextCnt = waitcnt2(nextCnt, WAIT_TIME);
}
}
};
int main(
int argc,
char *argv[]) {
const uint32_t stacks[COGS][STACK_SIZE] = {{0}};
};
while (1)
for (uint8_t n = 1; n < COGS; n++)
syncedPrinterCogs[0].
run();
}