Max/MSP是一種可視化編程語言,可幫助您構建復雜的交互式程序,而無需任何先前的代碼編寫經驗。它對于構建需要用戶交互的音頻,MIDI,視頻和圖形應用程序尤其有用。
我們需要將數據傳輸設置為雙向。為此,我們首先設置從Arduino發(fā)送數據到Max/MSP,然后將數據從Max/MSP發(fā)送到Arduino。
從Arduino發(fā)送數據到Max/MSP
我們首先將數據從Arduino的模擬引腳發(fā)送到Max/MSP,然后打印出來。接下來,我們將數據從Max/MSP發(fā)送回Arduino,它將控制連接在引腳13的Arduino的內置LED。
Arduino和Max/MSP之間的通信將是連續(xù)的。
Arduino代碼
將代碼上傳到編譯器。
**注意:不要打開串行監(jiān)視器,因為Max/MSP將使用COM端口。
void setup()
{
Serial.begin(115200);
}
void loop()
{
Serial.println(analogRead(analogPin));
delay(100);
}
Max/MSP草圖
要發(fā)送的完整草圖您可以在本文末尾找到從Arduino到Max/MSP的數據作為可下載文件。下載并運行草圖。它將如下所示:
上傳Max/MSP草圖后,您的屏幕將如下所示。
最大值/MSP將不斷從Arduino接收數據并顯示它。要接收數據,我們將設置COM端口和波特率,類似于它們在Arduino端設置的方式。
要檢查哪個COM端口可用,請單擊打印。它將顯示Max控制臺中可用的COM端口。
單擊打印將告訴您哪個COM端口可用。
在串行對象中輸入可用的COM端口,并寫入我們在Arduino端設置的COM端口。
設置COM端口后,單擊ON/OFF按鈕將允許Max/MSP開始接收數據。
Arduino現在已準備好向Max/MSP發(fā)送和接收數據。
從Max/MSP發(fā)送數據到Arduino
現在我們要將數據從Max/MSP發(fā)送到Arduino。數據將串行發(fā)送到Arduino,Arduino將接收它并控制引腳13處的內置LED。
我們已連接Max/MSP側的切換按鈕以發(fā)送數據位‘1 ’或‘0’到Arduino。收到數據后,Arduino將檢查它是“1”還是“0”。如果為“1”,LED將亮起。否則,LED將關閉。
Arduino代碼
int LED_pin = 13;
void setup()
{
Serial.begin(115200);
pinMode(LED_pin, OUTPUT);
}
void loop()
{
if (Serial.available()) {
int value1 = Serial.read();
if(value1 == 1){
digitalWrite(LED_pin, HIGH);
}
else if (value1 == 0){
digitalWrite(LED_pin, LOW);
}
}
}
Max/MSP Sketch
將數據從Max/MSP發(fā)送到您的完整草圖在本文末尾可以找到Arduino作為可下載文件。下載并運行草圖。它將如下所示:
運行第二個Max/MSP草圖后程序的外觀如何。
單擊打印按鈕查看Max控制臺中可用的COM端口。
點擊打印查找可用的COM端口。
在串行對象中輸入COM端口并設置類似于的波特率Arduino。
設置之間的COM端口Max/MSP和你的Arduino。
現在,點擊ON/OFF按鈕控制LED在你的Arduino的第13針。
其他資源
對如何將Arduino連接到其他程序和模塊感興趣?查看這些文章:
如何使用PySerial接口Python IDE和Arduino
如何使用Visual Studio進行Arduino項目開發(fā)
-
Arduino
+關注
關注
188文章
6477瀏覽量
188114
發(fā)布評論請先 登錄
相關推薦
評論