[英]Android communication via Bluetooth with Arduino
當我嘗試在藍牙之后立即從Android向Arduino發送命令字符串時
建立連接,Arduino不發送響應字符串[我想也許
Arduino一無所有]。
但是如果我在寫方法之前放一個Thread.sleep(1000)方法,它就可以工作...
問題是什么?
我是否要在尚未設置藍牙連接設置之前發送消息
准備?
但是如果我在寫方法之前放一個Thread.sleep(1000)方法
嘗試在Thread.sleep之后進行多次寫入,以檢查問題是否僅在建立連接的正確時間或每次寫入時才發生!
無論如何,以我的經驗,我會警告您一些事情:
您的代碼片段會很有用!
可以這樣想:乒乓球發生得太快,以至於球迷路了。
如果在讀之前寫,在寫之前讀,則會發生錯誤並且字符串會丟失。
所以是的,一種解決方法是在兩者之間加一些時間,例如Thread.sleep
詳細:
發生這種情況是因為您的arduino
仍在sending
因為它沒有識別出您的android
實際收到了。 在thread.sleep (1000)
,您的arduino
識別出android
接收並更改為receive
模式。 這就是為什么一秒鍾后可以從您的arduino
讀取字符串的原因。
如果需要,您可以循環發送,以便arduino能夠盡快收到。 但是,某些情況可能會從循環中得出,例如接收冗余字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.