Arduino | 序列練習(1):兩個Arduino通訊---使用TX0、RX0
關鍵字:Serial port、arduino 序列通訊、UART實驗前的注意事項
黑修斯先前實驗時發現,若是Arduino開發板已經透過USB通訊線與電腦連接,將無法使用TX0、RX0進行通訊。
為什麼不能使用,黑修斯的猜測為晶片衝突或是與電腦連接時佔用Arduino通訊埠的TX0、RX0,導致於無法額外引出使用。
實驗器材:
- Arduino UNO 開發板
- Arduino MEGA 2560 開發板
實驗項目
- 兩個Arduino通訊---使用TX0、RX0
動作設定
主從端設定Arduino UNO | 主端(Master) |
Arduino MEGA 2560 | 從端(Client) |
動作說明
藉由兩個Arduino 開發板互傳指令,分別為主端發送訊息,從端接收訊息再回傳訊息。主端(Arduino UNO)動作:
發送數字0,進入副程式 reback_blink(),等待回應並做出對應動作,再發送數字1,進入副程式 reback_blink(),等待回應並做出對應動作。
從端(Arduino MEGA 2560):
一開始等待指令,當有指令(數字0或1)進入,判斷指令,並做出對應動作。
實際動作
藉由黑修斯紀錄的影片觀看實際的動作效果,其實動作非常容易,只是將開發板上的LED燈開關。實驗電路配置圖
此實驗的電路配置圖,接法非常容易,電源提供5V即可,而從黑修斯影片或照片中可以發現,黑修斯是使用USB連接線的5V電源進行電源供應。實驗程式碼
程式碼可以透過黑修斯的github下載。主端(Arduino UNO)程式:
從端(Arduino MEGA 2560)程式:
最後附上一張,亂亂的成品圖。
Reference
- 【Maker進階】認識UART、I2C、SPI三介面特性 | Building Maker Economy:自造達人社群/媒體/平台
- arduino | 疑難雜症:Arduino Serial port 中的Tx0、Rx0無法使用
- 黑修斯的GitHub
轉貼本文時,需註明來自黑修斯隨手札記原創作者 hughes chen(黑修斯),及附上原文連結,同時 禁止修改,禁止商業使用 。
11 留言
請問可以使用兩塊ARDUINO UNO 進行連接嗎?
回覆刪除可以哦
刪除問問Arduino出來的RX TX電壓會是多少阿???我能直接控制其它3.3V的MCU嗎?
回覆刪除Arduino的TX RX 的電壓是多少???能直接對3.3V MCU TX RX 做溝通嗎??
回覆刪除UNO板 MEGA板是5v,至於新出的版本的arduino 有沒有3.3V的要請您去google查找。
刪除請問5V電壓源一定要一樣嗎?
回覆刪除要一樣,訊號才能在同樣的電壓基礎去進行通訊
刪除您好請問能用arduino接收並且顯示來電通知或簡訊嗎
回覆刪除可以,但是要加裝sim卡模組才能使用
刪除為甚麼我將數字換成字母後,無法在串列監視器中正常執行呢?
回覆刪除我先前沒有這個問題欸
刪除不一定能即時回覆問題,有時間會盡量答覆。