编译失败

__羊眸__
Posts: 4
Joined: Fri Jul 02, 2021 7:01 am

编译失败

Postby __羊眸__ » Fri Jul 02, 2021 7:22 am

我调用了这个YUV2RGB422函数就会编译失败,不知道为什么。

RgbAndYuv.c

Code: Select all

void  YUV2RGB422(unsigned char *pRGB, unsigned char *pYUV,int size)
{


}

main.c

Code: Select all

#include <stdio.h>
#include "RgbAndYuv.h"
#include "sd_card.h"
#include "algFile.h"

#define SIZE2 (512*512)
#define SIZE (208*32)
unsigned char rgb[SIZE2*3];//默认栈的大小为1mb

void app_main(void)
{
    unsigned char buf[SIZE*2];
    YUV2RGB422(rgb, buf, SIZE); 
}
Attachments
tmpCCDD.png
报错信息
tmpCCDD.png (38.8 KiB) Viewed 2453 times

ESP_Gargamel
Posts: 786
Joined: Wed Nov 14, 2018 8:45 am

Re: 编译失败

Postby ESP_Gargamel » Fri Jul 02, 2021 9:06 am

1、你 rgb 这个数组定这么大,esp32 片内内存根本放不下。
2、buf 也很大,app_main 所在的 task stack 也根本不够大。

你确定要用这么大的 buf?如果是的,那需要用带 PSRAM 的模块,并且用 heap 相关接口 malloc buffer 到片外 PSRAM 上去。

Who is online

Users browsing this forum: No registered users and 138 guests