Arduino上手动添加开发板
????????最近一個(gè)在一個(gè)項(xiàng)目上想在樹莓派3B+上使用9dof-razor-imu傳感器,,搭建開發(fā)環(huán)境的時(shí)候根據(jù)其官網(wǎng)說明選了Arduino。然而在添加他的第三方SparkFun開發(fā)板時(shí)出了問題,因?yàn)樗拈_發(fā)板環(huán)境包在GitHub上,所以Arduino的開發(fā)板管理器在下載該開發(fā)板的索引地址時(shí)報(bào)錯(cuò),無法下載索引的.json文件,而Linux系統(tǒng)中翻墻去外網(wǎng)對于小白來講過于復(fù)雜,各種操作看的我頭疼,無奈之下各種百度,企圖找到手動(dòng)下載安裝的方法。但是該傳感器過于冷門,找不到相關(guān)問題的解決辦法。無奈之下只得研究一波,費(fèi)了好幾天的時(shí)間找到了自己手動(dòng)添加開發(fā)板的方法。
? ? ? ? 首先來講一下如果你的樹莓派或其他Linux系統(tǒng)的計(jì)算機(jī)可以連接外網(wǎng)時(shí)手動(dòng)添加開發(fā)板的方法。以我要找的SparkFun SAMD 開發(fā)板為例。
(1)打開?Arduino IDE,文件->首選項(xiàng),在下方附加開發(fā)板管理器中添加你要添加的開發(fā)板索引地址,比如:??????https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json
然后點(diǎn)擊下方的OK按鈕保存。
(2)工具->開發(fā)板->開發(fā)板管理器,等待下載索引完成后就可以在上面搜索你要找的開發(fā)板。
? ? ? ? 但是如果你跟我一樣下載索引.json文件時(shí)報(bào)錯(cuò),那么你的開發(fā)板管理器就不會出現(xiàn)你要找的開發(fā)板環(huán)境。那么你就需要去手動(dòng)添加它。完成這個(gè)操作你首先需要有一個(gè)能夠翻墻的Windows系統(tǒng)的電腦在身邊。(下載一個(gè)適配Windows系統(tǒng)的梯子)
(1)在能夠連接外網(wǎng)的電腦上打開索引的地址https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json
右鍵點(diǎn)擊“另存為”,保存為.json格式的文件,注意不要改名字。
?
(2)然后在樹莓派上打開?Arduino IDE,文件->首選項(xiàng),在下方找到"在首選項(xiàng)中還有更多選項(xiàng)可以直接編輯"這句話,點(diǎn)擊這句話下方的地址,就會跳到一個(gè)文件夾中,然后用U盤將.json文件移動(dòng)到該文件夾下。(如果在文件夾中看到跟你的文件重名但是多了.tmp的文件,將其刪除)
(3)回到首選項(xiàng)那,點(diǎn)擊上方的網(wǎng)絡(luò),改為手動(dòng)代理,但不要填任何東西,這個(gè)操作是為了斷網(wǎng),然后點(diǎn)擊OK(好)按鈕保存設(shè)置。(在此期間不要打開開發(fā)板管理器,否則Arduino便會刷新索引目錄,將你移過去的json文件清掉)
(4)打開json文件,在代碼中找到你要下載的開發(fā)板環(huán)境的url地址,比如我要下載SparkFun SAMD Boards,那么我就找到它的url地址https://github.com/sparkfun/Arduino_Boards/raw/master/IDE_Board_Manager/sparkfun-samd-1.8.3.tar.bz2(json文件中可能會有很多個(gè)版本的地址,找到自己要的就可以),然后復(fù)制地址,在電腦上打開,瀏覽器就會自動(dòng)下載包。
{"name": "SparkFun SAMD Boards (dependency: Arduino SAMD Boards 1.8.1)","architecture": "samd","version": "1.8.3","category": "Contributed","url": "https://github.com/sparkfun/Arduino_Boards/raw/master/IDE_Board_Manager/sparkfun-samd-1.8.3.tar.bz2","archiveFileName": "sparkfun-samd-1.8.3.tar.bz2","checksum": "SHA-256:74393DAD50FCFDCCF36EC15FA1CC4354258E9050BDB1C1692E58F0C21F82C2D6","size": "2840829","help": {"online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager"},"boards": [{ "name": "SparkFun SAMD21 Mini Breakout" },{ "name": "SparkFun SAMD21 Dev Breakout" },{ "name": "SparkFun 9DoF Razor IMU M0" },{ "name": "LilyPad LilyMini" },{ "name": "Sparkfun SAMD21 Pro RF" },{ "name": "Sparkfun RedBoard Turbo" },{ "name": "Sparkfun SAMD51 Thing Plus" },{ "name": "Sparkfun Qwiic Micro" },{ "name": "SparkFun SAMD51 MicroMod" }],"toolsDependencies": [{"packager": "arduino","name": "arm-none-eabi-gcc","version": "4.8.3-2014q1"},{"packager": "arduino","name": "bossac","version": "1.8.0-48-gb176eee"},{"packager": "arduino","name": "openocd","version": "0.9.0-arduino"},{"packager": "arduino","name": "CMSIS","version": "4.5.0"},{"packager": "arduino","name": "CMSIS-Atmel","version": "1.2.0"}]}],"tools": [{"version": "8-2018-q4-major", "name": "arm-none-eabi-gcc", "systems": [{"host": "x86_64-apple-darwin", "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "checksum": "SHA-256:0b528ed24db9f0fa39e5efdae9bcfc56bf9e07555cb267c70ff3fee84ec98460", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "size": "111430151"}, {"host": "i386-apple-darwin11", "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "checksum": "SHA-256:0b528ed24db9f0fa39e5efdae9bcfc56bf9e07555cb267c70ff3fee84ec98460", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "size": "111430151"}, {"host": "i686-linux-gnu","url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "checksum": "SHA-256:fb31fbdfe08406ece43eef5df623c0b2deb8b53e405e2c878300f7a1f303ee52", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "size": "107253352"}, {"host": "x86_64-pc-linux-gnu","url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "checksum": "SHA-256:fb31fbdfe08406ece43eef5df623c0b2deb8b53e405e2c878300f7a1f303ee52", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "size": "107253352"}, {"host": "i686-mingw32","url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-win32-modified.zip", "checksum": "SHA-256:98f47ed254ce31942408028c3a4a75ad4ee9fe7f318daecafb8c101bc19a6e23", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-win32-modified.zip", "size": "135448870"}]},{"name": "bossac","version": "1.4.0","systems": [{"host": "i686-mingw32","url": "https://github.com/sparkfun/Arduino_Boards/raw/master/sparkfun/samd-tools/bossac/bossac-1.4.0-win.zip","archiveFileName": "bossac-1.4.0-win.zip","checksum": "SHA-256:BCA6503F5DBB1F96693AFD0701A759ECFB3BE5B9FB3F9D901CA17853B224F4EB","size": "314705"},{"host": "x86_64-pc-linux-gnu","url": "https://github.com/sparkfun/Arduino_Boards/raw/master/sparkfun/samd-tools/bossac/bossac-1.4.0-linux64.tar.bz2","archiveFileName": "bossac-1.4.0-linux64.tar.bz2","checksum": "SHA-256:BB8F398BF84C5F31880FE9A2C7AE0174592516CE4821B49744B426AA968ADA10","size": "225696"},{"host": "x86_64-apple-darwin","url": "https://github.com/sparkfun/Arduino_Boards/raw/master/sparkfun/samd-tools/bossac/bossac-1.4.0-osx.tar.bz2","archiveFileName": "bossac-1.4.0-osx.tar.bz2","checksum": "SHA-256:D0F225846D7BC80A74324D783CDB35C42A7F85EAD73CC016C0CC767B0AA5E81C","size": "74461"}]}]?(5)我們在代碼上還能看到? toolsDependencies??下有很多packager,這些也需要找到他們相應(yīng)的url地址下載。(依賴包url地址找不到?jīng)]關(guān)系,后面會講)
(6)將下好的包通過U盤移到樹莓派上,在我們放json文件的地方進(jìn)入staging/packages/,將下好的包復(fù)制到里面。
(7)打開開發(fā)板管理器,這時(shí)我們就能在里面找到自己要添加的開發(fā)板,選好版本后點(diǎn)擊安裝(比如我選的是SparkFun SAMD Boards 1.8.3),如果你之前把它所要的依賴包都安裝好了,那么手動(dòng)安裝到此結(jié)束。但是如果你之前在json文件中沒有找到依賴包的url地址,那么你在安裝的過程中就會報(bào)錯(cuò),這時(shí)候就需要你對著開發(fā)板管理器下方報(bào)錯(cuò)的地址,在你的電腦上手動(dòng)下載依賴包,并移到樹莓派的staging/packages/中,然后繼續(xù)點(diǎn)擊安裝,直到最后安裝成功。
????????在最后,再說一個(gè)小技巧,安裝開發(fā)板時(shí),如果報(bào)錯(cuò),那么他會在staging/packages/文件夾下生成一個(gè)名稱正確的空文件,所以在你將依賴包手動(dòng)復(fù)制到樹莓派上時(shí),如果它提示該文件夾下有一個(gè)重名的文件,就說明你下載對了,將空文件覆蓋即可。
總結(jié)
以上是生活随笔為你收集整理的Arduino上手动添加开发板的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小功率直流电机上并电容的作用
- 下一篇: 红楼梦实例分析