簡(jiǎn)單說(shuō)一下情況,我準(zhǔn)備基于tinybee的板子,對(duì)marlin進(jìn)行修改,制作自己的6軸運(yùn)動(dòng)板。
第一步 明確思路
我的思路是先基于tinybee,對(duì)官方的marlin代碼進(jìn)行配置修改,實(shí)現(xiàn)代碼可以正常在tinybee上運(yùn)行。這一步比較順利,tinybee板測(cè)試功能基本能用。
第二步 遇到問(wèn)題
利用esp32 devkit v1開(kāi)發(fā)板,做一個(gè)扣板形式的6軸運(yùn)動(dòng)版。將esp32 devkit v1插到底板的排座上,簡(jiǎn)化設(shè)計(jì)和生產(chǎn)難度。理論上來(lái)說(shuō),將基于tinybee的marlin代碼燒寫(xiě)到自制運(yùn)動(dòng)版上,應(yīng)該可以正常引導(dǎo)運(yùn)行。但實(shí)際情況是,程序燒寫(xiě)成功,但是運(yùn)行后就引導(dǎo)失敗,串口反復(fù)打印下面的log:
ets Jun 8 2016 00:22:57rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)configsip: 0, SPIWP:0xeeclk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00mode:DIO, clock div:2load:0x3fff0018,len:4load:0x3fff001c,len:1044load:0x40078000,len:8896load:0x40080400,len:5828
entry 0x400806ac
tinybee燒寫(xiě)同樣的程序,則能夠正常運(yùn)行,串口log如下:
ets Jun 8 2016 00:22:57rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)configsip: 0, SPIWP:0xeeclk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00mode:DIO, clock div:2load:0x3fff0018,len:4load:0x3fff001c,len:1044load:0x40078000,len:8896load:0x40080400,len:5828entry 0x400806acstart
External Reset
Brown out Reset
Watchdog Reset
Marlin bugfix-2.1.xecho: Last Updated: 2023-03-23 | Author: (Carlo Huang, 5 axis t6600 - esp32,OpenPnP)echo: Compiled: Sep 14 2023echo: Free Memory: 313840 PlannerBufferBytes: 1472echo:EEPROM version mismatch (EEPROM=? Marlin=V87)echo:Hardcoded Default Settings Loaded
很明顯,entry 0x400806ac這個(gè)跳轉(zhuǎn),沒(méi)有成功。莫非是自己購(gòu)買(mǎi)的esp32 devkit v1開(kāi)發(fā)板有問(wèn)題?一番折騰后,證明開(kāi)發(fā)板能夠工作,燒寫(xiě)點(diǎn)燈程序,是可以正常運(yùn)行的。
第三步 對(duì)比esp32規(guī)格
難道是esp32 devkit v1開(kāi)發(fā)板與tinybee的選用芯片規(guī)格不一樣?
通過(guò)對(duì)比淘寶上的購(gòu)買(mǎi)信息,發(fā)現(xiàn)兩者板載的spi flash容量不一樣。esp32 devkit v1是4M,tinybee是8M。
在cmd中用下面的指令也能查看芯片相關(guān)信息:
esptool.py -p 其中 第四步 檢查燒寫(xiě)文件是否超出spi flash容量范圍 我使用的是vscode+platformio的方式編譯marlin。在marlin源代碼的根目錄Marlin-bugfix-2.1.x.piobuildmks_tinybee可以找到燒寫(xiě)文件firmware.bin,其實(shí)際大小為313K,遠(yuǎn)沒(méi)有超過(guò)4M。那么應(yīng)該和某個(gè)配置文件有關(guān)。 第五部 檢查配置文件 首先在源碼里找到platformio.ini的文件,會(huì)看到如下信息: ......[platformio]src_dir = Marlinboards_dir = buildroot/share/PlatformIO/boards default_envs = mks_tinybee include_dir = Marlinextra_configs = Marlin/config.ini ini/avr.ini ini/due.ini ini/esp32.ini ini/features.ini ini/lpc176x.ini ini/native.ini ini/samd21.ini ini/samd51.ini ini/stm32-common.ini ini/stm32f0.ini ini/stm32f1-maple.ini ini/stm32f1.ini ini/stm32f4.ini ini/stm32f7.ini ini/stm32h7.ini ini/stm32g0.ini ini/teensy.ini ini/renamed.ini...... 在Marlin-bugfix-2.1.xini路徑,可以找到esp32.ini文件。 ......[env:FYSETC_E4]extends = env:esp32 board_build.partitions = default_16MB.csv[env:PANDA]extends = env:esp32 build_flags = ${env:esp32.build_flags} -DUSE_ESP32_EXIO -DUSE_ESP32_TASK_WDTlib_deps = ${common.lib_deps} SoftwareSerialEsp32board_build.partitions = Marlin/src/HAL/ESP32/esp32.csv upload_speed = 115200monitor_speed = 115200[env:mks_tinybee]extends = env:esp32 board_build.partitions = default_8MB.csv...... 果然配置會(huì)有所不同,tinybee用的是8M的分區(qū),esp32 devkit v1強(qiáng)行燒寫(xiě)估計(jì)會(huì)出現(xiàn)問(wèn)題。將board_build.partitions = default_8MB.csv這行注釋掉,改用PANDA的配置,重新燒寫(xiě)問(wèn)題解決。esp32 devkit v1開(kāi)發(fā)板正常運(yùn)行marlin程序。 小結(jié) 在arduino esp32的架構(gòu)中,有很多細(xì)節(jié)地方需要注意,否則很容易造成程序不運(yùn)行的問(wèn)題。default_8MB.csv這個(gè)文件我始終沒(méi)有找到,marlin源碼里沒(méi)有,vscode安裝目錄也沒(méi)有。可能在arduino系統(tǒng)框架的某個(gè)地方
上一篇:【TVM系列八】microTVM在ESP32上調(diào)優(yōu)算子
下一篇:最后一頁(yè)
- 熱門(mén)資源推薦
- 熱門(mén)放大器推薦
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦
- ZSR800GTA 8 伏正電流調(diào)節(jié)器的典型應(yīng)用
- #第七屆立創(chuàng)電賽#電流電壓表
- 5050LED驅(qū)動(dòng)
- 具有串行控制功能的 LTC4556 智能卡接口的典型應(yīng)用
- LTC2946IMS 雙電源、電荷和能量監(jiān)視器的典型應(yīng)用,使用單個(gè)光耦合器進(jìn)行電流隔離,并在任一電源出現(xiàn)故障時(shí)使用阻塞二極管來(lái)保持?jǐn)?shù)據(jù)
- 征集令 |物聯(lián)網(wǎng)之光——學(xué)習(xí)陪伴小夜燈
- lm3886-singel
- AM3GW-2405DZ ±5V 3 瓦 DC-DC 轉(zhuǎn)換器的典型應(yīng)用
- 使用 LT1054IN8 數(shù)字可編程負(fù)電源的典型應(yīng)用
- TRK-KEA8、Kinetis KEA8 StarterTRAK 用于低端汽車(chē)應(yīng)用
- 面壁智能端側(cè)大模型首日上線,英特爾工程師聯(lián)合優(yōu)化實(shí)現(xiàn)2.2倍推理效率躍升
- 瞄準(zhǔn)車(chē)規(guī)級(jí)碳化硅,理想發(fā)表重要成果
- 車(chē)規(guī)級(jí)MCU國(guó)內(nèi)替代提速
- 博世新獲國(guó)內(nèi)頭部車(chē)企座艙域控項(xiàng)目定點(diǎn)
- 首款測(cè)量電動(dòng)汽車(chē)電機(jī)溫度的傳感器問(wèn)世,提升對(duì)磁鐵的保護(hù)以減少稀土的使用
- Arm開(kāi)發(fā)出計(jì)算子系統(tǒng) 以加速汽車(chē)設(shè)計(jì)的下一代AI芯片的開(kāi)發(fā)
- 福特汽車(chē)申請(qǐng)新專(zhuān)利 或?qū)崿F(xiàn)車(chē)庫(kù)定向音樂(lè)播放
- 泊車(chē)場(chǎng)景一定需要超聲波嗎?
- 同星新一代TC1055 Pro開(kāi)啟車(chē)載網(wǎng)絡(luò)測(cè)試新時(shí)代
- 福特汽車(chē)申請(qǐng)新專(zhuān)利 或?qū)⑴鋫浒踩ㄗ粉櫹到y(tǒng)
- 智能手機(jī)和平板中都用了哪些傳感器?
- 淺談STC單片機(jī)特殊IO的用法
- 英特爾將在2019年與Sprint聯(lián)袂推出5G電腦
- 單片機(jī)的邏輯電路與邏輯運(yùn)算的介紹
- 全球智能家居市場(chǎng)規(guī)模再過(guò)五年將高達(dá)1550億美元
- 也許是最另類(lèi)的游戲本 小米游戲本上手
- 細(xì)數(shù)蘋(píng)果五款仍在銷(xiāo)售卻無(wú)更新的產(chǎn)品:命運(yùn)堪憂
- 庫(kù)克:蘋(píng)果全部設(shè)施100%使用可再生能源
- 暴風(fēng)AI電視7今日問(wèn)世 AI3.0徹底告別遙控器
- 暴風(fēng)AI電視7發(fā)布:革遙控器的命 我們不一樣!
- 貢獻(xiàn)個(gè)13年射頻放大器簡(jiǎn)版 電路和PCB
- 轉(zhuǎn)帖:寬帶阻塞,誰(shuí)讓中國(guó)網(wǎng)速跑不快?
- WINCE 下將CString轉(zhuǎn)換成char*出現(xiàn)的問(wèn)題
- 關(guān)于三極管的導(dǎo)通過(guò)程
- 高可靠醫(yī)用氣泡檢測(cè)
- 三星S5PV210之芯靈思Sin210與TI Beaglebone Black之對(duì)比
- 公交車(chē)IC卡電路圖原程序
- 用于5G-WiFi的可變?cè)鲆嬗性窗蛡怢NA
- 出一些開(kāi)發(fā)板
- 請(qǐng)問(wèn)大家mobile中使用HtmlCtrl如何響應(yīng)NM_HOTSPOT消息