请问eclipse编译的时候报如下错误该怎样解决?
d:/lin_work/esp32_work/toolchain/msys32/opt/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/lin_work/esp32_work/esp32_prj/autofan_ble_wifi/build/autofan_ble_wifi.elf section `.dram0.bss' will not fit in region `dram0_0_seg'
d:/lin_work/esp32_work/toolchain/msys32/opt/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.
d:/lin_work/esp32_work/toolchain/msys32/opt/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: region `dram0_0_seg' overflowed by 21080 bytes
collect2.exe: error: ld returned 1 exit status
make: *** [D:\lin_work\esp32_work\esp32_prj\esp\esp-idf/make/project.mk:523: /d/lin_work/esp32_work/esp32_prj/autofan_ble_wifi/build/autofan_ble_wifi.elf] Error 1
"make all" terminated with exit code 2. Build might be incomplete.
我按照教程git下esp-iot-solution代码,然后也把path设置成export IOT_SOLUTION_PATH=/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution;然后开始编译一个esp-iot-solution中一个例程,怎么会报如下错误:
Administrator@DE-0011 MSYS /d/lin_work/esp32_work/esp32_prj/empty_project
# make all
/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution/submodule/esp-idf//make/project.mk:60: esp-idf build system only supports MSYS2 in "MINGW32" mode. Consult the ESP-IDF documentation for details.
WARNING: Failed to find Xtensa toolchain, may need to alter PATH or set one in the configuration menu
/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution/submodule/esp-idf/make/project.mk:60: esp-idf build system only supports MSYS2 in "MINGW32" mode. Consult the ESP-IDF documentation for details.
WARNING: Failed to find Xtensa toolchain, may need to alter PATH or set one in the configuration menu
WARNING: Missing submodule components/bootloader/subproject/components/micro-ecc/micro-ecc...
Attempting 'git submodule update --init components/bootloader/subproject/components/micro-ecc/micro-ecc' in esp-idf root directory...
error: 路径规格 'components/bootloader/subproject/components/micro-ecc/micro-ecc' 未匹配任何 git 已知文件
make[1]: *** [/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution/submodule/esp-idf/make/project.mk:531:/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution/submodule/esp-idf/components/bootloader/subproject/components/micro-ecc/micro-ecc/.git] 错误 1
make: *** [/d/lin_work/esp32_work/esp32_prj/esp/esp-iot-solution/submodule/esp-idf/components/bootloader/Makefile.projbuild:41:/d/lin_work/esp32_work/esp32_prj/empty_project/build/bootloader/bootloader.bin] 错误 2
请问这个问怎么解决?
最近把ESP32系统以及外围电路移植到PCB底板上,在调试过程中,遇到的问题是:不烧写初始化wifi的固件时,底板正常工作。但是烧写需要初始化wifi的固件时,系统就不停地复位,打印重复的信息如下:
ets Jun 8 2016 00:22:57
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:6428
load:0x40078000,len:11308
ho 0 tail 12 room 4
load:0x40080400,len:6672
entry 0x40080764
[0;32mI (31) boot: ESP-IDF v3.3-beta1-432-g5ec58c316 2nd stage bootloader[0m
[0;32mI (31) boot: compile time 16:22:41[0m
[0;32mI (31) boot: Enabling RNG early entropy source...[0m
[0;32mI (37) boot: SPI Speed : 40MHz[0m
[0;32mI (41) boot: SPI Mode : DIO[0m
[0;32mI (45) boot: SPI Flash Size : 4MB[0m
[0;32mI (49) boot: Partition Table:[0m
[0;32mI (53) boot: ## Label Usage Type ST Offset Length[0m
[0;32mI (60) boot: 0 nvs WiFi data 01 02 00009000 00004000[0m
[0;32mI (68) boot: 1 otadata OTA data 01 00 0000d000 00002000[0m
[0;32mI (75) boot: 2 phy_init RF data 01 01 0000f000 00001000[0m
[0;32mI (83) boot: 3 factory factory app 00 00 00010000 00100000[0m
[0;32mI (90) boot: 4 ota_0 OTA app 00 10 00110000 00100000[0m
[0;32mI (97) boot: 5 ota_1 OTA app 00 11 00210000 00100000[0m
[0;32mI (105) boot: End of partition table[0m
[0;32mI (109) boot: Defaulting to factory image[0m
[0;32mI (114) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x2c808 (182280) map[0m
[0;32mI (187) esp_image: segment 1: paddr=0x0003c830 vaddr=0x3ffb0000 size=0x032e8 ( 13032) load[0m
[0;32mI (192) esp_image: segment 2: paddr=0x0003fb20 vaddr=0x40080000 size=0x00400 ( 1024) load[0m
[0;32mI (194) esp_image: segment 3: paddr=0x0003ff28 vaddr=0x40080400 size=0x000e8 ( 232) load[0m
[0;32mI (203) esp_image: segment 4: paddr=0x00040018 vaddr=0x400d0018 size=0xad914 (710932) map[0m
[0;32mI (460) esp_image: segment 5: paddr=0x000ed934 vaddr=0x400804e8 size=0x10658 ( 67160) load[0m
[0;32mI (498) boot: Loaded app from partition at offset 0x10000[0m
[0;32mI (498) boot: Disabling RNG early entropy source...[0m
[0;32mI (499) cpu_start: Pro cpu up.[0m
[0;32mI (502) cpu_start: Application information:[0m
[0;32mI (507) cpu_start: Project name: smart_light[0m
[0;32mI (513) cpu_start: App version: v1.0-99-g1d5ba38-dirty[0m
[0;32mI (519) cpu_start: Compile time: 16:23:08[0m
[0;32mI (524) cpu_start: Compile date: Mar 12 2019[0m
[0;32mI (529) cpu_start: ESP-IDF: v3.3-beta1-432-g5ec58c316[0m
[0;32mI (536) cpu_start: Starting app cpu, entry point is 0x40081050[0m
[0;32mI (527) cpu_start: App cpu up.[0m
[0;32mI (546) heap_init: Initializing. RAM available for dynamic allocation:[0m
[0;32mI (553) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM[0m
[0;32mI (559) heap_init: At 3FFB9D40 len 000262C0 (152 KiB): DRAM[0m
[0;32mI (565) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM[0m
[0;32mI (572) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM[0m
[0;32mI (578) heap_init: At 40090B40 len 0000F4C0 (61 KiB): IRAM[0m
[0;32mI (584) cpu_start: Pro cpu start user code[0m
[0;32mI (267) cpu_start: Starting scheduler on PRO CPU.[0m
[0;32mI (0) cpu_start: Starting scheduler on APP CPU.[0m
[0;32mI (316) app main: IDF version: v3.3-beta1-432-g5ec58c316[0m
[0;32mI (316) app main: esp-aliyun verison: [0m
[0;32mI (316) app main: iotkit-embedded version: [0m
I (326) wifi: wifi driver task: 3ffc18e8, prio:23, stack:3584, core=0
I (326) wifi: wifi firmware version: 66a98c0
I (336) wifi: config NVS flash: enabled
I (336) wifi: config nano formating: disabled
[0;32mI (346) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE[0m
[0;32mI (356) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE[0m
I (386) wifi: Init dynamic tx buffer num: 32
I (386) wifi: Init data frame dynamic rx buffer num: 32
I (386) wifi: Init management frame dynamic rx buffer num: 32
I (386) wifi: Init static rx buffer size: 1600
I (386) wifi: Init static rx buffer num: 10
I (396) wifi: Init dynamic rx buffer num: 32
[0;33mW (396) phy_init: failed to load RF calibration data (0x1102), falling back to full calibration[0m
Brownout detector was triggered
请问有谁遇到这种问题吗,底板的供电是正常的。
请问有谁知道这个问题怎么解决吗?万分感谢!
root@ubuntu:/esp32/demos/hello_world# make flash
Toolchain path: /esp32/crossTools/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a
Compiler version: 5.2.0
Python requirements from /esp32/sources/esp-idf/requirements.txt are satisfied.
Flashing binaries to serial port /dev/ttyS4 (app at offset 0x10000)...
esptool.py v2.6-beta1
Serial port /dev/ttyS4
Traceback (most recent call last):
File "/esp32/sources/esp-idf/components/esptool_py/esptool/esptool.py", line 2865, in <module>
_main()
File "/esp32/sources/esp-idf/components/esptool_py/esptool/esptool.py", line 2858, in _main
main()
File "/esp32/sources/esp-idf/components/esptool_py/esptool/esptool.py", line 2565, in main
esp = chip_class(each_port, initial_baud, args.trace)
File "/esp32/sources/esp-idf/components/esptool_py/esptool/esptool.py", line 213, in __init__
self._port = serial.serial_for_url(port)
File "/usr/lib/python2.7/dist-packages/serial/__init__.py", line 88, in serial_for_url
instance.open()
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 272, in open
self._reconfigure_port(force_update=True)
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 326, in _reconfigure_port
raise SerialException("Could not configure port: {}".format(msg))
serial.serialutil.SerialException: Could not configure port: (5, 'Input/output error')
/esp32/sources/esp-idf/components/esptool_py/Makefile.projbuild:62: recipe for target 'flash' failed
我想用ESP32驱动tft液晶屏,然后显示一幅像素为240*240的图片。
显示图片的函数如下:
void showimage(uint16_t x,uint16_t y)
uint16_t i,j,k;
uint16_t da;
uint16_t SPI_LCD_RAM[240*240];
k=0;
for(i=0;i<40;i++)
{
for(j=0;j<40;j++)
{
da=gImage_wifi[k*2+1];
da<<=8;
da|=gImage_wifi[k*2];
SPI_LCD_RAM[i*40 + j] = da;
k++;
}
}
LCD_Color_Fill(x,y,x+239,y+239,SPI_LCD_RAM);
}
然后烧写到模块后,模块就一直在复位,如果我把 SPI_LCD_RAM[240*240]改成显示像素为40*40图片时候,就正常显示
在ESP32论坛上面看到这个:
Ah, it doesn't say GPIO12, but rather MTDI under the strapping pins section, so I didn't get it before.
So, in my next revision of my board it should avoid using these pins then;
- GPIO0, GPIO2, GPIO5, GPIO12 and GPIO15 (because they are strapping pins)
- GPIO6, GPIO7, GPIO8, GPIO9, GPIO10 and GPIO11 (because they are used by SPI-Flash)
- GPIO34, GPIO35, GPIO36, GPIO37, GPIO38 and GPIO39 (can only be inputs)
#define TFT_LCD_DC 10 //数据/指令连接
#define TFT_LCD_CS 11 //片选
#define TFT_LCD_RESET 9 //复位连接
#define TFT_LCD_SDA 7 //串行数据连接
#define TFT_LCD_SCL 6 //串行时钟连接
#define TFT_LCD_PIN_SEL ((1<<TFT_LCD_SCL) | (1<<TFT_LCD_SDA) | (1<<TFT_LCD_RESET)| (1<<TFT_LCD_DC) | (1<<TFT_LCD_CS))
void lcd_gpio_config(void)
{
gpio_config_t io_conf;
//disable interrupt
io_conf.intr_type = GPIO_PIN_INTR_DISABLE;
//set as output mode
io_conf.mode = GPIO_MODE_OUTPUT;
//bit mask of the pins that you want to set,e.g.GPIO18/19
io_conf.pin_bit_mask = TFT_LCD_PIN_SEL;
//disable pull-down mode
io_conf.pull_down_en = 0;
//disable pull-up mode
io_conf.pull_up_en = 1;
//configure GPIO with the given settings
gpio_config(&io_conf);
}
为什么我把开发板的ESP32的GPIO7配置成output的时候,烧写完重启系统后,串口一直报:
rst:0xc (SW_CPU_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
Falling back to built-in command interpreter.
OK
>ets Jun 8 2016 00:22:57
rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0008,len:8
load:0x3fff0010,len:4404
load:0x40078000,len:11072
ho 0 tail 12 room 4
load:0x40080000,len:252
请问大神这是什么原因呢?然后试了几个IO。发现从IO6到IO11都会有类似的问题,是不是系统默认这个几个IO是用来配成SD卡的呢?