回復 2# vegewell
感謝您的回覆, 問題已解決, 是設定的問題.
不過我有另一個問題:
我想用Arduino Analog pin 0上面的VR移動 Processing 上的方塊,
從 serial port 取得的 data 是正確的, 假設是 358,
但當我將它轉換成整數時, sensorValue 值卻變成 0,
請問該如何正確地把字串轉成數值?
- Arduino Code:
-
- void setup() {
- Serial.begin(57600);
- }
- void loop() {
- int v = analogRead(0);
- Serial.println(v);
- delay(100);
- }
-
-
- Processing Code:
- import processing.serial.*;
- Serial port;
- int lf = 10;
- String data ;
- int sensorValue;
- void setup() {
- // 設定畫布大小為 305 x 200
- size(305, 200);
- port = new Serial(this, "COM6", 57600);
- port.bufferUntil(lf);
- }
- void draw() {
- // 在 (x, y) 座標為 (sensorValue, 80) 的位置畫一個 50x50 的矩形
- background(255); // 白色背景
- fill(255,0,0); // 填滿顏色為紅色
- rect(sensorValue, 80, 50, 50);
- }
- void serialEvent(Serial port){
- data = port.readStringUntil(lf);
- data = data.substring(0, data.length() - 1);
- sensorValue = int(data);
- println(sensorValue); // 印到 Processing 的狀態視窗方便除錯
- }
複製代碼 |