paulo cezar
/
etepam_paulo_cezar
blink
main.cpp@0:4e3553b7ac31, 2019-05-23 (annotated)
- Committer:
- PCezar
- Date:
- Thu May 23 23:55:02 2019 +0000
- Revision:
- 0:4e3553b7ac31
paulo cezar aula
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
PCezar | 0:4e3553b7ac31 | 1 | /* mbed Microcontroller Library |
PCezar | 0:4e3553b7ac31 | 2 | * Copyright (c) 2018 ARM Limited |
PCezar | 0:4e3553b7ac31 | 3 | * SPDX-License-Identifier: Apache-2.0 |
PCezar | 0:4e3553b7ac31 | 4 | */ |
PCezar | 0:4e3553b7ac31 | 5 | |
PCezar | 0:4e3553b7ac31 | 6 | #include "mbed.h" |
PCezar | 0:4e3553b7ac31 | 7 | #include "stats_report.h" |
PCezar | 0:4e3553b7ac31 | 8 | |
PCezar | 0:4e3553b7ac31 | 9 | DigitalOut led1(LED1); |
PCezar | 0:4e3553b7ac31 | 10 | |
PCezar | 0:4e3553b7ac31 | 11 | #define SLEEP_TIME 500 // (msec) |
PCezar | 0:4e3553b7ac31 | 12 | #define PRINT_AFTER_N_LOOPS 20 |
PCezar | 0:4e3553b7ac31 | 13 | |
PCezar | 0:4e3553b7ac31 | 14 | // main() runs in its own thread in the OS |
PCezar | 0:4e3553b7ac31 | 15 | int main() |
PCezar | 0:4e3553b7ac31 | 16 | { |
PCezar | 0:4e3553b7ac31 | 17 | SystemReport sys_state( SLEEP_TIME * PRINT_AFTER_N_LOOPS /* Loop delay time in ms */); |
PCezar | 0:4e3553b7ac31 | 18 | |
PCezar | 0:4e3553b7ac31 | 19 | int count = 0; |
PCezar | 0:4e3553b7ac31 | 20 | while (true) { |
PCezar | 0:4e3553b7ac31 | 21 | // Blink LED and wait 0.5 seconds |
PCezar | 0:4e3553b7ac31 | 22 | led1 = !led1; |
PCezar | 0:4e3553b7ac31 | 23 | wait_ms(SLEEP_TIME); |
PCezar | 0:4e3553b7ac31 | 24 | |
PCezar | 0:4e3553b7ac31 | 25 | if ((0 == count) || (PRINT_AFTER_N_LOOPS == count)) { |
PCezar | 0:4e3553b7ac31 | 26 | // Following the main thread wait, report on the current system status |
PCezar | 0:4e3553b7ac31 | 27 | sys_state.report_state(); |
PCezar | 0:4e3553b7ac31 | 28 | count = 0; |
PCezar | 0:4e3553b7ac31 | 29 | } |
PCezar | 0:4e3553b7ac31 | 30 | ++count; |
PCezar | 0:4e3553b7ac31 | 31 | } |
PCezar | 0:4e3553b7ac31 | 32 | } |