本帖最後由 超新手 於 2017-12-10 06:59 編輯 錯很多。最基本的問題是..... 以你的做法 app 送過來的是字串,而 arduino 卻是以字元處理 兩邊根本不同步 舉例來說, 如果 app 送出 1234,事實上 Arduino會收到 4個值, 分別是49,50,51,52(ascii code) 你必須把這4個字元組合回去 1234 才能進行判斷 如果直接判斷,這些字元最大才 255 根本不可能大於 3750 更別說3750那個判斷式完全是錯的 |
超新手 發表於 2017-12-10 06:52 原來如此 謝謝大大的回覆 小弟對arduino這領域還是超新手 ![]() 因為最近做專題才接觸到 |
AI2 你不能寫在 afterpick 那邊 那邊是用來選擇連線藍牙裝置用的 第一次連線時,都還沒連線成功 怎麼去判斷收到的值? 就算第二次以後,放在這也不對 沒事還要去按一下,才能更改 label 顏色 比較好的方式,就是放一個計時器timer 定時去判斷,如果藍牙連線成功,而且收到 1或 2,就去改變顏色 類似的程式寫法應該在隔壁樓就可以找到 |
你要先把”接收長度1位元之無號數”先存在一個變數中 然後再用這個變數去判斷它是1,2或3 而不是呼叫”接收長度1位元之無號數”三次 |
另外, 應該再增加判斷“取得接收數元組數” >0 才能再去判斷值 因為必須等到藍牙接收到序列監視所送的值 才能去藍牙讀資料,也才能進一步判斷值 |
1)應該把橘色的設置和紫色的 ”接收長度1位元之無號數”接在一起 然後用這個 global number 判斷 48,49,50 只能呼叫一次”接收長度1位元之無號數” 而且所有的判斷式都包在”藍牙的可用狀態 2)因為 bt.availabl() 是表示手機傳送過去的資料數 你從來沒送資料過去 arduino 所以永遠等於零 |
谢谢大大分享 |
超新手 發表於 2018-3-25 21:18 好的 這是初步的構想 因為怕買了只能使用在單一功能.. 有GOOGLE了一下 http://www.buyic.com.tw/product_info.php?products_id=6002 http://goods.ruten.com.tw/item/show?21310067716453 不曉得這種指紋辨識模組是不是能使用我說的功能 還是要找特定規格的呢 不好意思因為這對學生來說單價有點高想說再多確認一下 怕買錯就糟糕了 ![]() |
當然可以。只不過你找(買)的到類似的模組嗎?還要懂得應用它 |
本帖最後由 a26265788 於 2018-3-25 21:07 編輯 超新手 發表於 2018-3-25 18:00 了解了 下午把積木的寫法想像帶入arduino的語法中 才發現有很多順序的問題 後來依您的指點更改一下順序突然恍然大悟 ![]() 感謝您~~ 還有另一個構想中的專題想請教一下大大 指紋辨識有辦法經過第一次建檔每個人的編號後 之後每次經過指紋辨識讀出那個人的編號 並且讓他做獨立的功能嗎? 例如 A的編號是1 當指紋辨識成功讀出編號1 讓LED亮 B的編號是2 當指紋辨識成功讀出編號2 讓蜂鳴器響 還是建檔的指紋庫只能應用在同一個功能 例如 A.B.C 有在指紋庫內 辨識成功後可以讓LED亮 |
判斷順序不對 照常理來想這個問題即可,判斷順序應該是 1) 藍牙是否是可用狀態? 2) 藍牙是否收到資料?如果有,才去讀資料 3) 依讀到的資料來判斷是否要改顏色 |
超新手 發表於 2018-3-25 14:31 原來如此 已解答 非常感謝大大的幫忙 真的受益良多!!! 謝謝您 |
小黑屋|手機版|Archiver|機器人論壇 from 2005.07
GMT+8, 2025-3-13 08:54 , Processed in 0.203524 second(s), 11 queries , Apc On.
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.