Покажу простой пример связи ардуино и пк. Для этого будем использовать Processing(2.0.1 32 битная версия, Serial не может в 64), Arduino IDE, сама платка и потенциометр.
Подключение.. ну прям предельно простое
![[IMG]](https://i.gyazo.com/78c17951dffcc47e908cf7cc2d2dcb9e.png)
Увеличить
Код для Arduino IDE:
Загружаем этот код на наш контроллер, и переходим к процессингу.
Код для Processing:
1. Загружаем код на ардуино
2. Подключаем к пк
3. Запускаем код в processing
4. Крутим потенциометр
5. Крутим потенциометр
6. Офигеваем
Подключение.. ну прям предельно простое
![[IMG]](https://i.gyazo.com/78c17951dffcc47e908cf7cc2d2dcb9e.png)
Увеличить
Код для Arduino IDE:
Код:
int potPin = 0; // указываем порт, куда подцепили потенциометр void setup() { Serial.begin(9600); // запускаем наш сериал } void loop() { int val = map(analogRead(potPin), 0, 1023, 0, 255); //*2 Serial.println(val); //*3 delay(50); }
*2 гуглим "arduino map". С пина получаем 0-1023, на выходе необходимо 0-255,
сразу обрабатываем с помощью мк(можно и в процессинге было) и записываем в переменную val
*3 выводим в порт значение переменной val. Обрати внимание! Serial.println а не print. т.к.
в таком случае выводится необходимый нам '\n'
Код для Processing:
Код:
import processing.serial.*; Serial port; float input = 0; void setup() { size(400, 400); port = new Serial(this, "COM3", 9600); //активируем наш порт port.bufferUntil('\n');//считываем значение строки до символа '\n' void draw() // основной цикл отрисовки { background(0,input,0);//догадались что будет делать input? float rect = map(input, 0, 255, 0, 370); rect(15,200,rect,30); } void serialEvent (Serial port) { input = float(port.readStringUntil('\n')); //считываем с порта значение и -
//-записываем в переменную input }
2. Подключаем к пк
3. Запускаем код в processing
4. Крутим потенциометр
5. Крутим потенциометр
6. Офигеваем
Комментариев нет:
Отправить комментарий