乐鑫技术交流
直播中

南风一号

9年用户 1048经验值
擅长:EMC/EMI设计
私信 关注
[问答]

重新编译了Micropython提供的源码,发现在初始化串口的时候报错,为什么?

重新编译了Micropython提供的源码,发现在初始化串口的时候报错
Guru Meditation Error: Core  0 panic'ed (StoreProhibited). Exception was unhandled.

Core  0 register dump:
PC      : 0x4014670e  PS      : 0x00060433  A0      : 0x800d6f98  A1      : 0x3ffcee60  
0x4014670e: uart_isr_register at /home/mars/esp/esp-idf_4_4/components/driver/uart.c:594

A2      : 0x00000000  A3      : 0x00000000  A4      : 0x3ffb78c8  A5      : 0x0000040e  
A6      : 0x3ffcee90  A7      : 0x3ffbf208  A8      : 0x00000000  A9      : 0x3ffcee30  
A10     : 0x00000000  A11     : 0x0000040e  A12     : 0x40083344  A13     : 0x00000000  
0x40083344: uart_irq_handler at /home/mars/esp/micropython-1.18/ports/esp32/build/../uart.c:46

A14     : 0x3ffcee90  A15     : 0x00000000  SAR     : 0x00000013  EXCCAUSE: 0x0000001d  
EXCVADDR: 0x00000008  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffffc  


Backtrace:0x4014670b:0x3ffcee600x400d6f95:0x3ffcee90 0x400d6df6:0x3ffceec0
0x4014670b: uart_isr_register at /home/mars/esp/esp-idf_4_4/components/driver/uart.c:594

0x400d6f95: uart_init at /home/mars/esp/micropython-1.18/ports/esp32/build/../uart.c:41

0x400d6df6: mp_task at /home/mars/esp/micropython-1.18/ports/esp32/build/../main.c:101

ELF file SHA256: 910eee99fdda0f47

Rebooting...
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:0x3fff0030,len:4344
load:0x40078000,len:13816
load:0x40080400,len:3340
0x40080400: _init at ??:?

这是什么原因造成的?
                                                                                                                                                         

回帖(1)

回头太晚

2024-6-18 16:24:20
以下是一些建议和可能的原因:

1. **配置问题**:确保您在编译Micropython时使用了正确的配置文件。不同的硬件平台可能需要不同的配置。检查您的`mpconfigport.h`文件,确保所有必要的配置都已经正确设置。

2. **依赖问题**:重新编译Micropython可能需要一些依赖库。确保您已经安装了所有必要的依赖,例如`gcc`、`make`、`libffi`等。

3. **代码问题**:在编译过程中,可能存在一些代码错误或不兼容的问题。检查您的代码,特别是与串口初始化相关的部分,确保没有语法错误或逻辑错误。

4. **硬件问题**:如果问题与硬件有关,检查您的开发板和连接线是否正常工作。尝试在其他设备上运行您的代码,以排除硬件问题。

5. **版本问题**:确保您使用的Micropython源码版本与您的硬件平台兼容。如果不兼容,尝试使用其他版本的源码进行编译。

6. **调试**:使用调试工具(如GDB)来跟踪程序的执行过程,找到导致错误的具体位置。这将有助于您更快地解决问题。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分