|
有些過于技術(shù)性,只簡(jiǎn)略記錄大概。 1、概念 Arduino Nano 33BLE/Sensor是不同于傳統(tǒng)Arduino開發(fā)板的新型板子,去年才發(fā)行,它們使用3.3V電源,微安級(jí)低功耗,高度集成了9種傳感器(BLE只有3種),若不使用藍(lán)牙BLE,其他一切與傳統(tǒng)Nano可以通用sketch。 Phyphox,一款專門為使用手機(jī)傳感器進(jìn)行物理實(shí)驗(yàn)的APP,免費(fèi),Android/ios。 Arduino IDE,Arduino開發(fā)板專用集成開發(fā)環(huán)境,免費(fèi),分PC和Web兩種。當(dāng)開發(fā)板得到支持,IDE可以把作者創(chuàng)作的功能性固件燒錄到Arduino。 Arduino Nano 33 BLE/Sensor使用了Nordic nRF52480 ArmCortex-M4F 64MHz芯片,而不是傳統(tǒng)的Atmel,使用Nordic專門的開發(fā)工具需要專業(yè)且高深的技能,但是Arduino IDE通過擴(kuò)展的支持,使創(chuàng)作和燒寫變得簡(jiǎn)單。 Phyphox-BLE,Phyphox程序的官方擴(kuò)展,通過Phyphox-BLE擴(kuò)展使在Arduino IDE里針對(duì)Arduino Nano 33 BLE/Sensor編寫用于Phyphox的實(shí)驗(yàn)創(chuàng)作成為可能。 2、問題 Phyphox-BLE簡(jiǎn)易且方便地、魯棒地支持ESP32開發(fā)板進(jìn)行Phyphox實(shí)驗(yàn)創(chuàng)作,但以Arduino Nano 33 BLE/Sensor進(jìn)行的實(shí)驗(yàn)開發(fā),卻極難成功。Phyphox能夠發(fā)現(xiàn)藍(lán)牙設(shè)備,一方面表現(xiàn)是信號(hào)弱,nRF Connect顯示大約在70dB左右,而同樣的ESP32實(shí)驗(yàn)創(chuàng)作則為100dB。 3、解決 在Github上能夠得到Phyphox-BLE的Pre版本,根據(jù)文本比對(duì)能看出后期版本條件編譯在ArduinoBLE/Mbed以及Arduino::Func()上的改動(dòng)。猜測(cè)是某一個(gè)條件混亂了,錯(cuò)誤調(diào)用了不該調(diào)用的其他頭文件里面的同名函數(shù)。 因此,解決辦法是,就去使用Phyphox-BLE的Pre版本,刪除里面一切與Arduino Nano 33 BLE/Sensor無關(guān)的條件編譯,只留下針對(duì)Nano 33一種板子的代碼。試驗(yàn)之下,成功。 4、定制 5、尾聲 這樣的Phyphox-BLE擴(kuò)展庫(kù),只能專門針對(duì)Arduino Nano 33 BLE/Sensor編寫代碼,如果再使用ESP32等開發(fā)板,只能暫時(shí)把這個(gè)特殊的Phyphox-BLE庫(kù)移出libraries目錄,做完別的事,再把它移回來。估計(jì)官方不會(huì)發(fā)現(xiàn)不了這個(gè)缺陷,以后肯定會(huì)修正的。 再有,就是發(fā)現(xiàn)了Arduino Nano 33 BLE板的輕便,又購(gòu)置了一個(gè)Sensor板。這兩塊板子太新了,只看到了Italy原版,淘寶上BLE 240元,BLE Sensor 320元,好貴! |
|
|