摄像头 开发指导_Rev1.3

English

修订记录

版本

日期

作者

审核

修订内容

V1.0

2023-12-13

SXX

zlc

创建文档

V1.1

2024-03-25

sxx

更改文档名称

V1.2

2024-11-15

zw

更改文档格式,删除demo

V1.3

2025-04-18

ZH

\

增加系列常见问题

1 简介

本文档介绍 LTE-EC71X 摄像头 接口 API 情况, API 接口位于 components/kernel/lierda_api/liot_camera/liot_camera.h 文件声明。

摄像头目前默认只支持I2C0配置摄像头寄存器参数,在CSPI1和CSPI0同时打开的情况下,优先使用CSPI1与摄像头通信。

默认摄像头型号为: GC032A 2DDR 30W像素

调试通过的摄像头型号列表如下:BF30A2、GC032A、GC6123、GC6153、SP0A39、SP0821。

2 API 函数概览

函数

说明

liot_CamInit ()

初始化摄像头功能

liot_CamDeInit ()

关闭摄像头功能

liot_CamCaptureImage ()

获取一张图片

liot_CamPreview ()

打开摄像头在LCD屏幕上预览(暂不支持)

liot_CamStopPreview ()

打开摄像头在LCD屏幕上预览(暂不支持)

3 类型说明

3.1 liot_errcode_camera_e

CAM API执行结果错误码。

  1. 声明

typedef enum {
    LIOT_CAMERA_SUCCESS = LIOT_SUCCESS,
    LIOT_CAMERA_INIT_ERR = (0x10) | LIOT_COMPONENT_STATE_INFO,
    LIOT_CAMERA_POWER_ON_ERR,
    LIOT_CAMERA_CLOSE_ERR,
    LIOT_CAMERA_PREVIEW_ERR,
    LIOT_CAMERA_STOP_PREVIEW_ERR,
    LIOT_CAMERA_CAPTURE_ERR,
    LIOT_CAMERA_GET_INFO_ERR,
    LIOT_CAMERA_PRINT_ERR,
    LIOT_CAMERA_BUF_ERR,
    LIOT_CAMERA_SET_BUF_ERR,
} liot_errcode_camera_e;
  1. 参数

  • LIOT_CAMERA_SUCCESS:执行成功。

  • LIOT_CAMERA_INIT_ERR:摄像头初始化失败 。

  • LIOT_CAMERA_POWER_ON_ERR:摄像头打开失败。

  • LIOT_CAMERA_CLOSE_ERR:摄像头关闭失败。

  • LIOT_CAMERA_PREVIEW_ERR:打开摄像头预览失败。

  • LIOT_CAMERA_STOP_PREVIEW_ERR:关闭摄像头预览失败。

  • LIOT_CAMERA_CAPTURE_ERR:获取照片失败。

  • LIOT_CAMERA_GET_INFO_ERR:获取摄像头信息错误。

  • LIOT_CAMERA_PRINT_ERR:图片预览打印失败。

  • LIOT_CAMERA_BUF_ERR:摄像头缓存区错误。

  • LIOT_CAMERA_SET_BUF_ERR:设置缓存区错误。

4 API 函数详解

4.1 liot_CamInit

初始化摄像头功能

  1. 声明

liot_errcode_camera_e liot_CamInit(void);
  1. 参数

  1. 返回值

  • liot_errcode_camera_e参考 3.1。

4.2 liot_CamDeInit

关闭摄像头功能

  1. 声明

liot_errcode_camera_e liot_CamDeInit(void);
  1. 参数

  1. 返回值

  • liot_errcode_camera_e参考 3.1。

4.3 liot_CamCaptureImage

获取一张图片

  1. 声明

liot_errcode_camera_e liot_CamCaptureImage(uint8_t *pFrameBuf, uint16_t width, uint16_t height);
  1. 参数

  • pFrameBuf:获取图片的缓存区。注意缓存区大小为 width*height。

  • width:图片的宽。

  • height:图片的高。

  1. 返回值

  • liot_errcode_camera_e参考 3.1。

4.4 liot_CamPreview

打开摄像头在LCD屏幕上预览(暂不支持)

4.5 liot_CamStopPreview

关闭摄像头在LCD屏幕上预览(暂不支持)

5 常见问题

5.1 Camera 是否可以接到任意 SPI 口上?

不可以,需要接到 CSPI 口上。若需使用扫描预览硬件加速功能,只支持 USP1 接 camera(CSPI)且 USP2 接 LCD(LSPI).。

推荐:USP0 作为 I2S 功能,接 codec。USP1 作为 CSPI 功能,接 camera。USP2 作为 LSPI 功能,接 LCD。