質問編集履歴

1

コードを追加してみました

2018/10/31 07:43

投稿

calpis123
calpis123

スコア15

test CHANGED
File without changes
test CHANGED
@@ -5,3 +5,57 @@
5
5
  現在はプログラムを走らせた瞬間に最初に取得された値のみが関数に代入されて使われる形になっており以降ツマミを回して値を変えても反映されることは無いです。
6
6
 
7
7
  どういった形でプログラムを書けば代入する値が可変するようになりますか?
8
+
9
+
10
+
11
+ 以下が自作してみたコードです
12
+
13
+ import RPi.GPIO as GPIO
14
+
15
+ import serial
16
+
17
+ import time
18
+
19
+
20
+
21
+ GPIO.setmode(GPIO.BCM)
22
+
23
+ GPIO.setup(14, GPIO.OUT)
24
+
25
+ GPIO.setup(15, GPIO.OUT)
26
+
27
+ GPIO.setup(18, GPIO.OUT)
28
+
29
+ p = GPIO.PWM(18, 1)
30
+
31
+ Hz = 500
32
+
33
+ ser = serial.Serial('/dev/ttyACM0', 9600, timeout = None)
34
+
35
+ line = ser.readline()
36
+
37
+ num = (int(line.strip().decode('utf-8')))
38
+
39
+ p.start(int(num/10))
40
+
41
+
42
+
43
+ while True:
44
+
45
+ p.ChangeDutyCycle(int(num/10))
46
+
47
+ p.ChangeFrequency(Hz)
48
+
49
+ time.sleep(0.001)
50
+
51
+ GPIO.output(14, True)
52
+
53
+ GPIO.output(15, False)
54
+
55
+ time.sleep(0.001)
56
+
57
+
58
+
59
+ ser.close()
60
+
61
+ GPIO.cleanup()