Ответы:
Как говорит JohnC, Firmata, вероятно, то, что вы хотите. Firmata - это специальный эскиз, который вы загружаете на Arduino. Он имеет набор команд, которые вы отправляете через последовательный порт Arduino для чтения и записи входов и выходов Arduino. Существует библиотека обработки, которую вы можете использовать, чтобы вы могли писать приложения обработки для непосредственного управления Arduino, а также многие другие библиотеки для других языков компьютера, работающих на вашем настольном компьютере (как упоминает VB .NET one JohnC). Даже если у вас нет библиотеки, вы можете отправлять команды с любого языка, который знает, как общаться с последовательными портами (например, с Max / Pd, как упоминает Эндрю)
Мне нравится библиотека Processing, потому что Processing имеет открытый исходный код и похожа на Arduino. Эскиз обработки, говорящий с Firmata'd Arduino, выглядит примерно так:
import cc.arduino.*;
Arduino myArduino = new Arduino(this, "/dev/tty.usbserial", 57600);
myArduino.digitalWrite(ledPin, Arduino.HIGH);
delay(1000);
myArduino.digitalWrite(ledPin, Arduino.HIGH);
Я не пробовал это, но в Интернете есть несколько ссылок для управления / чтения Arduino с ПК. В основном они используют Firmata на Arduino.
Эй, вы знакомы с Max / MSP (платно) и Pure Data (бесплатно)? Это графические среды программирования.
Я собрал учебник, чтобы настроить его, если вы хотите его протестировать: http://www.soundplusdesign.com/?p=1305
Приветствия.
Я бы согласился с другими ответами: обработка хороша, потому что она очень похожа на среду Arduino. Я сам использую Max Msp 5, и я, безусловно, могу порекомендовать его, вы можете скачать его с веб-сайта cycling74 -> http://cycling74.com/downloads/
Вы получаете бесплатную 30-дневную пробную версию полной версии плюс среда выполнения, она работает как на Mac OS, так и на Windows. Его очень легко освоить, и он позволяет программировать во время работы программы! - не надо больше компилировать!
Вы можете использовать объект с именем serial, чтобы общаться с Arduino, и Макс поставляется с удобными готовыми объектами и компонентами GUI.
Кроме того, вы можете экспортировать автономные приложения или поделиться ими в текстовом формате.
Джим.
Для тех, у кого проблемы с sysex от Firmata и которые хотят легко получить доступ к командам sysex:
Попробуйте http://connect.mind-craft.net/arduino-firmata-vb-class - замените переменную «selectedInputData» на public и используйте ее, например:
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button5.Click
arduino1.StartSysex()
arduino1.mycommand1(20, 1)
arduino1.EndSysex()
Thread.Sleep(100) 'Delay less than a second
arduino1.processInput()
TextBox1.Text = arduino1.storedInputData(1)
End Sub
используйте пример EchoString.ino и прочитайте протокол firmata на вики, чтобы добавить собственную команду sysex в Arduino.vb