aboutsummaryrefslogtreecommitdiffstats
path: root/arduino/libraries/Bluefruit52Lib/examples/Hardware/rtos_scheduler/rtos_scheduler.ino
blob: 032b070b401dc436e8f2138c0442d9dedb2e80d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*********************************************************************
 This is an example for our nRF52 based Bluefruit LE modules

 Pick one up today in the adafruit shop!

 Adafruit invests time and resources providing this open source code,
 please support Adafruit and open-source hardware by purchasing
 products from Adafruit!

 MIT license, check LICENSE for more information
 All text above, and the splash screen below must be included in
 any redistribution
*********************************************************************/

#include <Arduino.h>

/*
 * Sketch demonstate mutli-task using Scheduler. Demo create loop2() that
 * run in 'parallel' with loop().
 * - loop() toggle LED_RED every 1 second
 * - loop2() toggle LED_BLUE every half of second
 */

void setup() 
{
  // LED_RED & LED_BLUE pin already initialized as an output.
  
  // Create loop2() using Scheduler to run in 'parallel' with loop()
  Scheduler.startLoop(loop2);
}

/**
 * Toggle led1 every 1 second
 */
void loop() 
{
  digitalToggle(LED_RED); // Toggle LED 
  delay(1000);            // wait for a second
}

/**
 * Toggle led1 every 0.5 second
 */
void loop2()
{
  digitalToggle(LED_BLUE); // Toggle LED 
  delay(500);              // wait for a half second  
}