aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Stubs Collection/stubs/blink_led.cs
blob: 1e41fd3a9114c53dc21acb088969bbed66d688b4 (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
using System;
using System.Text;
using System.Linq;
using System.Drawing;
using System.Diagnostics;
using System.Windows.Forms;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Tango.PMR.Stubs;
using Tango.Stubs;

public void OnExecute(StubManager stubManager)
{
    while(true)
    {
	  //ramp increasing intensity, Inhalation: 
	  for (int i=2;i<7;i++)
	  {
	    stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 1, true);
	    Thread.Sleep(i*i*50);         // wait
	    stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 1, false);
	    Thread.Sleep(((1250*1000/350)-i*10)/10);   // wait
	  }
	  
	  //ramp decreasing intensity, Exhalation (half time):
	  for (int i=7-1;i>1;i--)
	  {
	    stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 1, true);
	    Thread.Sleep(i*i*50);          // wait
	    stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 1, false);
	    Thread.Sleep(((1250*1000/350)-i*10)/10);  // wait
	    //i--;
	  }
	  Thread.Sleep(10);
	}
}