|
MicroBlocks是開(kāi)源的,所以就給了使用者以無(wú)窮無(wú)盡的拓展的空間。MicroBlocks雖然支援在Arduino IDE下編譯源碼,但是,無(wú)論是作者還是一大批專業(yè)的開(kāi)發(fā)&使用者,肯定極少有人使用Arduino IDE。因?yàn)樗暮枚鄸|西。 Arduino IDE是不夠智能,太簡(jiǎn)陋。但是我喜歡用它,是因?yàn)樗挥冒惭b。小,省時(shí)、省事。 MicroBlocks的vm源碼如果在Arduino IDE編譯,絕非易事——因?yàn)樗幌?/span>VS Code&PIO那樣有個(gè)厲害的配置文件。 12月30日,MicroBlocks例行的小組分享會(huì),CWB分享了VS Code下的引入DS18b20和固件發(fā)布。對(duì)于一批不使用VS Code而僅使用Arduino IDE的小伙伴來(lái)說(shuō),我猜肯定仍然不那么直接。以下的記錄,則是近一段時(shí)間以來(lái)我在Arduino IDE下編譯設(shè)置vm的開(kāi)關(guān)量、導(dǎo)出bin固件和合并的摸索的經(jīng)歷。這里的bin固件,也增補(bǔ)了DS18b20溫度傳感器(但我封裝的不如CWB的好),同時(shí)增加了INA219電流傳感器和幾個(gè)常用的數(shù)學(xué)函數(shù),都不大成熟。 代替PIO的env配置文件的,是編譯時(shí)在“工具”下的一堆設(shè)置:
然后在需要的BLE_PRIMS上true一下,以保證這一部分代碼被編譯進(jìn)去。
再然后:如果是自己直接就用了,那么在Arduino IDE下直接燒錄到板子上就行了。這個(gè)時(shí)候,要注意保留著編譯時(shí)的log信息:
一會(huì)導(dǎo)出固件時(shí),需要的信息是writing at 0x00001000…等等,這一片信息告訴我們燒錄時(shí)的起始地址、分片固件文件的大小和燒入后占用了多少ESP32的Flash。用小本本記下來(lái)。 接著全盤(pán)去搜索vm.esp32.bin,會(huì)在Arduino編譯文件時(shí)的臨時(shí)目錄里找到一堆類似名稱的文件,也包括一會(huì)要用到的分區(qū)文件和固件文件。把它們復(fù)制出來(lái),備用。 為了避免復(fù)制錯(cuò)了,可以核對(duì)一下上面的Arduino IDE的log信息,核對(duì)一下編譯時(shí)的時(shí)間等,高度細(xì)心。如果弄錯(cuò)了,一般來(lái)說(shuō)是不能正常被MicroBlocks自動(dòng)連接的。 之后再到vm下的esp32里把boot_app0.bin、bootloader_dio_40m.bin復(fù)制出來(lái)(實(shí)際這兩個(gè)文件在Arduino安裝ESP32驅(qū)動(dòng)庫(kù)的時(shí)候,就已經(jīng)安裝了,可是那找起來(lái)也不是很簡(jiǎn)單的),再調(diào)出樂(lè)鑫官方提供的燒錄工具,分別按Arduino IDE燒錄時(shí)log給出的地址填寫(xiě):
Erase一下,等完成;再Start,等著進(jìn)度條走到頭,完成。如果想傳給他人使用時(shí),那就CombineBin合并了,此時(shí)燒錄的地址從0起,也就是上面的0x00,一次燒錄完畢。
總之,MicroBlocks太優(yōu)美了,主要是…………好玩~~~ |
|
|
來(lái)自: 新用戶5228KeDY > 《待分類》