开发环境:
RT-Thread Studio:v2.2.7
开发板:RA8D1 Vision Board开发板
MCU:R7FA8D1BHEC337AS02
1 硬件连接
Camera Interface接口如下:
LCD接口如下:
2 RA8D1 Camera与LCD配置
接下来配置Camera与LCD,只需要简单配置就可使用。双击工程中的 RA Smart Configurator 图标,第一次打开需要配置正确的 FSP 安装路径。
在 FSP 配置界面里面我们依次点击 “Stacks”-> “New Stack”-> “Graphics”-> “Capture Engine Unit(r_ceu) ”
主要配置Camera的尺寸,Swap和回调函数名字。
依次点击 “Pin”-> “MIPI”,然后打开MIPI。
在 FSP 配置界面里面我们依次点击 “Stacks”-> “New Stack”-> “Graphics”-> “Graphics LCD (r_glcdc) ”
主要配置输入大小和输出时序。
还需配置D/AVE 2D接口。
配置参数如下。
主要配置接口名字。
配置完成之后可以按下快捷键“Ctrl + S”保存, 最后点右上角的 “Generate Project Content” 按钮,让软件自动生成配置代码即可。
需要是能MIPI LCD以及SRAM硬件。
3 Camera 应用代码实现
这里需要适配Camera和LCDD硬件,参考官网的代码。
核心应用代码如下:
#define CAM_WIDTH 320
#define CAM_HEIGHT 240
extern sensor_t sensor;
uint8_t g_image_rgb565_sdram_buffer[CAM_WIDTH * CAM_HEIGHT * 2] BSP_PLACE_IN_SECTION(".sdram") BSP_ALIGN_VARIABLE(8);
void hal_entry(void)
{
rt_kprintf("This is a camera display demo.\n\n");
rt_kprintf("===========================================================================\n");
rt_kprintf("The example will display the data captured by the camera on the LCD screen.\n");
rt_kprintf("===========================================================================\n");
sensor_init();
sensor_reset();
sensor_set_pixformat(PIXFORMAT_RGB565);
sensor_set_framesize(FRAMESIZE_QVGA);
while (1)
{
sensor_snapshot(&sensor, g_image_rgb565_sdram_buffer, 0);
lcd_draw_jpg(0, 0, g_image_rgb565_sdram_buffer, CAM_WIDTH, CAM_HEIGHT);
rt_thread_mdelay(10);
}
}
```# 4 测试验证
编译下载,调试信息如下:
![14.png](
笔者这里使用的摄像头\+LCD屏幕,效果如下。
![15.png](
|