步驟1:對Ardunio進行編程
首先,我們將在Ardunio上編寫一個簡單的測試程序。該測試程序(附帶)非常簡單,但是通過pin13 LED提供了一些視覺反饋,因此我們知道它正在工作。此示例程序使用了一個串行讀取功能,該功能最多支持20個字符串,因此它不僅僅可以用于測試。
基本邏輯是:
-在setup()中,打開LED等待2秒鐘,這會給我們一些警告,以防尚未準備好串行數據。
-在串行端口上寫一個“ A”
-打開LED持續0.2秒鐘
-讀取串行端口,如果它讀到“ A”,請打開LED 1秒鐘。
以您慣用的任何方法對Arduino進行編程。編程并打開電源后,LED應該每秒閃爍約5次。
第2步:對BeagleBone編程
名為PyBBIO的工具包。它為python添加了一個非常類似于Arduino/Wiring的框架,但仍然可以讓您輕松使用所需的任何python庫和功能。 github頁面上有一些很好的說明,盡管如果您使用的不是Angstrom發行版,則python包名稱可能會有所不同。
我只是按原樣使用PyBBIO串行回顯示例,它只接收Serial2接收的任何內容,將其打印并發送回去。這應該給我們的Arduino程序發回它發送的“ A”,這將使其打開LED 1秒鐘。如果有任何不良的接線或外部噪聲破壞信號,則Arduino不會看到“ A”。
您還可以使用所需的任何語言編寫自己的串行回顯腳本。
步驟3:全部連接!
Sparkfun電平轉換器具有低壓側和高壓側,并支持2個通道數據的。一個簡單的分壓器將無法工作,因為它不是雙向的,我們需要將3.3v TX數據在Arduino上提高到5V。我們將僅使用一個渠道進行此演示。它需要從LV側的BB 3.3v和HV側的Arduino 5V供電。 BB和Arduino之間也需要建立公共的地線連接,否則數據可能會在線路上損壞。我將面包板的藍色導軌用作公共接地,并且兩個導軌都連接在一起。我在兩個紅色電源軌上也都有5V電壓,因為最小的Arduino需要它。
我包括了Fritzing,顯示了普通Arduino的狀態。
首先關閉所有電源,以防萬一。 》首先,讓電平轉換器通電:
-將兩個GND引腳接地,
-將HV引腳連接到面包板5V導軌
-LV引腳將連接到BB稍后,
下一步,將BeagleBone連接:
-P9引腳1(GND)到面包板接地軌
-P9引腳3(3.3v)到電平轉換器LV引腳
-P9引腳21(將Serial2 TX)接到電平轉換器低側TX引腳之一(TXI)-P9引腳22(Serial2 RX)接到電平轉換器低側RX引腳之一(RXO)-在照片中,忽略電線連接到Arduno的重置引腳,供以后的Instructible使用。
最后,連接Ardunio。我們正在PC領域制造所謂的“零調制解調器電纜”。 BB的TX數據需要最終在Arduino的RX引腳上:
-D0(RX)至電平轉換器高端TX引腳(TXO)。
-D1(TX)到電平轉換器高端RX引腳(RXI)
-引腳13上的LED像往常一樣
注意:如果您有3.3V Arduino,則可以連接BB和Ardunio注意:我發現,如果RX和TX線像這樣相互纏繞在一起,通信將更加可靠。扭曲會減少EMF干擾。
打開Arduino的電源,LED應該像以前一樣開始閃爍。
啟動BB并進入下一步
步驟4:就這樣
現在,打開一個終端(ssh,usb串行或本地GUI)并找到serial_echo.py腳本并使用python運行它。
您應該看到收到“ A”,Arduino應該更改為短眨眼-長眨眼模式。如果不是這樣,則說明布線有些問題。確保RX和TX正確,如果向后傾斜則不會造成任何傷害,只是不要在任何地方將Ardunio的5V和BeagleBone骨骼直接連接在一起,因為這會損壞BeagleBone。在本演示中,只能直接連接GND。
下一步是什么?
創建一個框架來回獲取您的數據!如果您是從頭開始工作,則Ardunio SerCommand庫非常易于使用。
檢查我的后續Instructible,它將使用該復位線從BeageBone對Ardunio進行編程!在笨拙的安裝中不再需要拉芯片或連接FTDI。
責任編輯:wv
-
Arduino
+關注
關注
187文章
6464瀏覽量
186639 -
BeagleBone
+關注
關注
4文章
26瀏覽量
65739
發布評論請先 登錄
相關推薦
評論