質問編集履歴

1

シリアルでデータを取得したコードを追加しました。

2020/04/07 02:56

投稿

uimaro
uimaro

スコア14

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,81 @@
1
+ ```**************************************************
2
+
3
+ Option Explicit
4
+
5
+
6
+
7
+ Sub EasyCommTest()
8
+
9
+ Dim A$
10
+
11
+ Dim n
12
+
13
+ '①初期設定
14
+
15
+ ec.COMn = 11 'COM4を指定します
16
+
17
+ ec.Setting = "9600,n,8,2" '通信条件(ボーレート,パリティビット数,データビット数,ストップビット数)の設定
18
+
19
+ ec.HandShaking = ec.HANDSHAKEs.RTSCTS '通信ハンドシェークの設定
20
+
21
+ ec.Delimiter = "CR" 'データの区切りをCrに設定する
22
+
23
+
24
+
25
+ A$ = ec.AsciiLine
26
+
27
+ 'デリミタの手前までの受信文字列をA$に代入します.
28
+
29
+ ec.InBufferClear '受信バッファをクリア
30
+
31
+
32
+
33
+
34
+
35
+ '1行ずつデータを入れていく
36
+
37
+ n = Cells(Rows.Count, "A").End(xlUp).Row + 1
38
+
39
+ Range("A" & n).Value = A$
40
+
41
+
42
+
43
+
44
+
45
+ '1秒おきにデータを見に行く
46
+
47
+ If Range("A10") = "" Then
48
+
49
+ Application.OnTime Now() + TimeValue("00:00:01"), "EasyCommTest"
50
+
51
+
52
+
53
+ Else
54
+
55
+ Range("A1:A10").Clear
56
+
57
+ End If
58
+
59
+
60
+
61
+
62
+
63
+ '⑤ポートを閉じる
64
+
65
+ ec.COMn = -1 '終了処理
66
+
67
+
68
+
69
+ End Sub
70
+
71
+ **************************************************
72
+
73
+ コード
74
+
75
+ ```
76
+
77
+
78
+
1
79
  EasyCommというモジュールを使用して、Arduinoからのシリアルを変数の中に格納することはできたのですが、
2
80
 
3
81
  Arduino側でデータを不定期に吐き出す場合、Excel側でデータを受信したときに何かアクションを起こすということがしたいです。