久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> Arduino >> 瀏覽文章

Arduino與PureData通信(上篇)

作者:StormerZ   來源:StormerZ   點擊數:  更新時間:2014年06月17日   【字體:

維基百科:
Pure Data(或稱作PD)是 Miller Puckette 在90年代為創造交互的計算機音樂和多媒體作品而開發的視覺化程式設計語言。雖然 Puckette 是 Pd 的主要作者,但是它是一個多數開發者為起開發新擴展的開放源代碼項目。它以一個類似于 BSD許可證 類似許可證下發行,可運行在 GNU/Linux, Mac OS X, iOS, Android 和 Windows。

 
下面是官網對PD的介紹說明:
Pure Data (or Pd) is a real-time graphical programming environment for audiovideo, andgraphical processing. Pure Data is commonly used for live music performance, VeeJaying, sound effects, composition, audio analysis, interfacing with sensors, using cameras, controlling robots or even interacting with websites.  Because all of these various media are handled as digital data within the program, many fascinating opportunities for cross-synthesis between them exist. Sound can be used to manipulate video, which could then be streamed over the internet to another computer which might analyze that video and use it to control a motor-driven installation.

OK,下面來介紹一下PD與ARDUINO之間通過串口通信實現控制的方法。

在這一篇里,我用一個操作LED亮度的例子做說明。


目標:通過串口連接ARDUINO與PD,在PD里發送控制信號給ARDUINO,以實現對LED燈的明暗控制。

 

設備:ARDUINO UNO、兩根杜邦線、一個發光LED、一個電阻。

軟件:PD 0.45.4, ARDUINO官方IDE。

軟件的設置:PD默認是不帶有串口通信功能的,所以你需要先安裝一個擴展。
1、你可以通過官網下載這個擴展的最新源代碼,自己編譯:http://puredata.info/downloads/comport/releases/0.2/?searchterm=comport
2、直接下載我提供的這個擴展文件comport.dll;
3、將編譯好的comport.dll拷貝到PD安裝目錄下的extra文件夾下。


下面是具體的步驟,放輕松,實際上整個過程非常簡單。

【ARDUINO部分】

首先,把ADUINO和LED連接好,接線如下圖,兩根杜邦線分別插在pin9和GND上,另一邊接到發光LED的正負極就行了,為了保護LED不會過亮而燒壞,最好加一個電阻,我用的是一個1K的可調電阻。如果沒有可調電阻用一個1K以內阻值的電阻就可以。
 
 
接下來編寫ARDUINO部分的代碼:
 
 
int incomingByte = 0;  //用來保存PD發送過來的數據
int led = 9; 
 
void setup() 
{
    Serial.begin(9600);  // 打開串口并設置通訊速率為9600
 
    pinMode(led, OUTPUT);  //設置pin9為輸出模式
}
 
void loop() 
{
 
  if (Serial.available() > 0)  //如果串口中有數據則獲取
  {
    //讀取從串口得到的值
    incomingByte = Serial.read();
    
    //將讀取的值輸出到pin9(這樣就實現了PD端控制LED的亮度)
    analogWrite(led, incomingByte); 
  }
}
 
到這里ARDUINO端就都準備好了,下面來介紹如何設置PD。
 
 
 
 
【PD部分】
 
打開PD,點擊主菜單File->New,新建一個PD文件。
 
在新建的文件窗口中,點擊主菜單put->object,這樣來新建一個對象。
 
在這個新建的對象中,填寫 comport 3 9600
 
comport 是對象名稱, 3 是ARDUINO主板使用的串口編號(這里要注意,這個數字是從0開始計數的,也就是說,你想使用COM4端口,這里就需要寫數字3), 9600是通信速率。這里的端口號和通訊速率都要跟ARDUINO保持一致。
 
 
如果這一步沒有成功,可能有3個原因:
1、PD的comport.dll擴展沒有安裝,或者拷貝的目錄不正確;
2、你所選用的串口當前正在被使用;
3、串口的編號沒有填寫對。
 
 
最后一步,添加一個滑動條,設置滑動條的范圍0~255.
 
在主菜單中點擊Put->Vslider,添加一個縱向的滑條。
 
在滑動條上右鍵->屬性,參數設置如下:
 
點擊OK。鼠標指向滑動條的右下角,鼠標會變成一圓圈,這個時候單擊并拖拽,拉一條連線到 comport對象。
 
 
 
好了,到這里就可以說大功告成了。使用快捷鍵CTRL+E,來關閉PD的編輯模式,你會發現這個時候窗口內的對象都不再可以編輯了,滑動條也變得可以使用了。如果想修改,還通過這個快捷即可再次切換回編輯狀態。
 
現在拖拽滑動條,你會發現連接到ARDUINO的LED燈亮度會隨之變化。也就說明ARDUINO已經成功接收了從PD發送過來的數據。
 
本篇就介紹到這里了,下一篇我會繼續寫一個使用ARDUINO來控制PD的例子。
 
 
希望你一切都順利,HAVE FUN~ 
關閉窗口

相關文章

主站蜘蛛池模板: 中文字幕av一区 | 欧美综合在线观看 | 国产高清一区二区三区 | 亚洲免费人成在线视频观看 | 亚洲欧美中文日韩在线v日本 | 国产成人福利视频在线观看 | 亚洲男人天堂 | 精品一区二区三区在线观看国产 | 国产精品美女久久久久aⅴ国产馆 | 亚洲福利在线观看 | 久久久精品网 | 欧美久久久久久 | 国产精品久久久久久久久久 | 欧美综合国产精品久久丁香 | 四虎影视一区二区 | 超级乱淫av片免费播放 | 午夜视频免费在线 | 国产网站在线免费观看 | 中文字幕11页 | 99精品免费 | 日本成人综合 | 国产一区亚洲二区三区 | 久久精品女人天堂av | 国产成在线观看免费视频 | 中文字幕二区 | 日韩av一区二区在线观看 | 国产中文一区二区三区 | 999精品视频 | 日韩激情在线 | 国产精品久久午夜夜伦鲁鲁 | 国产精品福利网站 | 国产精品视频网 | 成人久久| 在线观看中文字幕av | 九九九久久国产免费 | 国产激情一区二区三区 | 亚洲成人网在线播放 | 99热播精品 | 99国产精品一区二区三区 | 美女人人操 | 色综合天天综合网国产成人网 |