1/*
2 * PWM's options are configured in app.json.
3
4{
5  "version": "0.0.1",
6  "io": {
7      "pwm1": {
8          "type": "PWM",
9          "port": 1
10      },
11      "timer1": {
12          "type":"TIMER",
13          "port": 1
14      }
15  },
16  "debugLevel": "DEBUG"
17}
18*/
19import * as pwm from 'pwm'
20import * as timer from 'TIMER'
21
22console.log('pwm: pwm test open ')
23
24var pwm1 = pwm.open({
25  id: 'pwm1',
26  success: function() {
27    console.log('pwm: open pwm success')
28  },
29  fail: function() {
30    console.log('pwm: open pwm failed')
31  }
32});
33
34var timer1 = timer.open({
35    id: 'timer1'
36  });
37
38var freq = pwm1.get().freq
39var duty = pwm1.get().duty
40
41console.log('pwm: pwm default config freq is ' + freq + ' duty is ' + duty)
42
43console.log('pwm: pwm test start ')
44
45duty = 0;
46var cnt = 10;
47var loop = 10;
48timer1.setInterval(function(){
49  if (duty >= 100) {
50    duty = 0;
51  }
52  duty  = duty + 20;
53
54  pwm1.set({
55    freq: 100,
56    duty: duty
57  })
58
59  console.log('pwm: pwm test count ' + cnt)
60  cnt = cnt - 1;
61  if (cnt == 0) {
62    pwm1.close();
63    console.log('pwm: pwm test finish loop ' + loop)
64    loop--;
65    if (loop == 0) {
66      timer1.clearInterval();
67    }
68    else {
69        pwm1 = pwm.open({
70            id: 'pwm1',
71            success: function() {
72              console.log('pwm: open pwm success')
73            },
74            fail: function() {
75              console.log('pwm: open pwm failed')
76            }
77          });
78    }
79
80    cnt = 10;
81  }
82
83}, 1000)
84