问题:使用我自己设计的STM32F407板子,在使用LVGL图形库 lv_init();初始化时,进入tlsf_assert()触发断言,程序不再继续向下执行,停留在函数的static block_header_t * search_suitable_block(control_t * control, int * fli, int * sli)函数中的tlsf_assert(sl_map && "internal error - second level bitmap is null");语句,但该程序在正点原子的探索者STM32F407的开发板上运行没问题。
猜想:可能是因为外部的SRAM的电路线路长度相差较大导致的信号时序出现问题,导致LVGL使用外部SRAM分配空间的时候出现错误。但我单独使用SRAM的相关程序在我的板子上是可以正常运行的,例如在我的板子上可以运行正点原子的SRAM测试例程,内存管理例程,以及正点原子的avi视频播放例程,这些例程都使用到了SRAM,都可正常运行,所以这个SRAM出问题的可能性应该也很低,但也想不出是其他什么的原因了。