実現したいこと
Arduino側で計算した数値(今回は実験のため1から100まで単純にカウントアップしています)をProccesing側で受け取ってcsvまたはtxtファイルに書き出し、保存を行いたい。
発生している問題
- 下記のProcessingコード中println(Serial.list());部分にエラーが出てる。
通常コンソールにポートの表が出るらしいがarudinoをつないでいるcom5という表示が出るだけでポート番号やバージョン情報などが出てこない。
以下エラー文章
Type String[] of the last argument to method println(Object...) doesn't exactly match the vararg parameter type. Cast to Object[] to confirm the non-varargs invocation, or pass individual arguments of type Object for a varargs invocation.
- 出力したファイルが白紙になる
Processingのコンソール上にarduinoから送られてきたと思われる数字が表示されるが、保存されたファイルを確認すると中身は白紙になっている。
使用したコード
aruduino
1void setup() { 2Serial.begin(9600); 3} 4 5void loop() { 6 for(int i=0; i<=100 ; i ++){ 7 Serial.print(i); 8 Serial.println(","); 9 delay(100); 10 } 11 delay(100); 12}
Processing
1import processing.serial.*; 2Serial myport; 3String datastr; 4PrintWriter output; 5int count = 1; 6 7void setup(){ 8println(Serial.list()); 9myport = new Serial(this, Serial.list()[0], 9600); 10myport.clear(); 11output = createWriter("test1.txt"); 12} 13 14void draw(){ 15 if (count>100) { 16 output.flush(); 17 output.close(); 18 exit(); 19 } 20 count++; 21 22 if(myport.available() > 0){ 23 delay(100); 24 datastr = myport.readString(); 25 println(datastr); 26 } 27}
補足
Arduino ver1.8,16
Processing ver4.0b3
初心者のためProcessingのコードはarduino連携についての様々なページのコードを切り貼りして作成したものです。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー