📄 saa7113.h
字号:
/****************************************Copyright (c)****************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File name: saa7113.h
** Last modified Date: 2007-12-12
** Last Version: 1.0.0
** Descriptions: NXP SAA7113H 视频采集芯片基础驱动
**
**--------------------------------------------------------------------------------------------------------
** Created by: Hanhui
** Created date: 2007-12-12
** Version: 1.0.0
** Descriptions: NXP SAA7113H 视频采集芯片基础驱动
**
**--------------------------------------------------------------------------------------------------------
** Modified by: Hanhui
** Modified date: 2008-01-22
** Version: 1.0.1
** Descriptions: 加入了错误输出的功能.
**
*********************************************************************************************************/
#ifndef __SAA7113_H
#define __SAA7113_H
/*********************************************************************************************************
SAA7113 图像输出格式
使用 ITU 656 YUV 4 : 2 : 2 的格式
+------------+--------------------------------------------------------------------+------------+
| BLANKING | TIMING | | TIMING | BLANKING |
| PERIOD | REFERENCE | 720 PIXELS YUV 4 : 2 : 2 DATA | REFERENCE | PERIOD |
| | CODE | | CODE | |
+------------+--------------+--------------------------------------+--------------+------------+
| ... 80 10 | FF 00 00 SAV | Cb0 Y0 Cr0 Y1 Cb 2 Y2 ... Cr718 Y719 | FF 00 00 EAV | 80 10 ... |
+------------+--------------+--------------------------------------+--------------+------------+
SAV: 有效的视频数据区域起始标志
Cbn: U (B - Y) colour difference component, pixel number n = 0, 2, 4 to 718
Yn : Y (luminance) component, pixel number n = 0, 1, 2, 3 to 719
Crn: V (R - Y) colour difference component, pixel number n = 0, 2, 4 to 718
EAV: 有效的视频数据区域结束标志
*********************************************************************************************************/
/*********************************************************************************************************
我国电视标准 PAL
我国采用的是50 Hz PAL电视信号,
每秒 25 帧图像
每帧 625 行, 其中 576 行有效 (当 VREF 为高电平时)
每行 864 个像素,其中 720 个像素有效 (当 HREF 为高电平时)
即每帧图像的实际分辨率为 720 × 576
SAA7113 按奇偶场输出,
每场 288 有效行
每行 720 有效像素
视频格式按照 YUV 4 : 2 : 2
即每行 1440 Byte, 每场405 KB, 每帧 810 KB。
*********************************************************************************************************/
/*********************************************************************************************************
SAA7113 场数据选择 VRLN = 1 (I2C 子地址 0x10 的 D3 位)
使用 50Hz 625 线 VREF
场 1: 288 线 起始: 23 线 结束: 310 线
场 2: 288 线 起始: 336 线 结束: 623 线
*********************************************************************************************************/
/*********************************************************************************************************
SAA7113 错误时的输出
*********************************************************************************************************/
#ifdef __SAA7113_DEBUG
extern PSTREAM_CLASS psrtclassCom0;
#define __SAA7113_ERROR_OUT(cStr) streamWrite(psrtclassCom0, cStr, strlen(cStr))
#else
#define __SAA7113_ERROR_OUT(cStr)
#endif /* __SAA7113_DEBUG */
/*********************************************************************************************************
SAA7113 地址
*********************************************************************************************************/
#define __SAA7113_ADDR 0x4A /* SAA7113 I2C 地址定义 */
/*********************************************************************************************************
SAA7113 通道模式
*********************************************************************************************************/
#define __SAA7113_CVBS_AI11 0 /* 0 通道 CVBS 信号, 自动增益 */
#define __SAA7113_CVBS_AI12 1 /* 1 通道 CVBS 信号, 自动增益 */
#define __SAA7113_CVBS_AI21 2 /* 2 通道 CVBS 信号, 自动增益 */
#define __SAA7113_CVBS_AI22 3 /* 3 通道 CVBS 信号, 自动增益 */
#define __SAA7113_Y_AI11_C_AI21_M 6 /* Y-AI11, C-AI21, 手动增益 */
#define __SAA7113_Y_AI12_C_AI22_M 7 /* Y-AI12, C-AI22, 手动增益 */
#define __SAA7113_Y_AI11_C_AI21_A 8 /* Y-AI11, C-AI21, 自动增益 */
#define __SAA7113_Y_AI12_C_AI21_A 9 /* Y-AI12, C-AI22, 自动增益 */
/*********************************************************************************************************
SAA7113 场选择
*********************************************************************************************************/
#define __SAA7113_50HZ_625_LINE 0 /* 50Hz 625 线 */
#define __SAA7113_60HZ_525_LINE 1 /* 60Hz 525 线 */
/*********************************************************************************************************
当前工作参数 (目前仅用于 PAL 制式)
*********************************************************************************************************/
typedef struct {
unsigned char ucChannelMode; /* 通道模式 */
unsigned char ucBrightness; /* 亮度 */
unsigned char ucContrast; /* 对比度 */
unsigned char ucSaturation; /* 饱和度 */
unsigned char ucHue; /* 色调 */
} SAA7113_CONTEXT;
/*********************************************************************************************************
** Function name: saa7113Init
** Descriptions: SAA7113 视频采集卡初始化
** input parameters: NONE
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113Init(void);
/*********************************************************************************************************
** Function name: saa7113GetContext
** Descriptions: SAA7113 视频采集卡获得工作参数
** input parameters: NONE
** output parameters: NONE
** Returned value: 工作参数
*********************************************************************************************************/
SAA7113_CONTEXT saa7113GetContext(void);
/*********************************************************************************************************
** Function name: saa7113GetWersion
** Descriptions: SAA7113 视频采集卡版本
** input parameters: NONE
** output parameters: NONE
** Returned value: 版本号
*********************************************************************************************************/
unsigned char saa7113GetVersion(void);
/*********************************************************************************************************
** Function name: saa7113SetChannelMode
** Descriptions: SAA7113 视频采集卡设置通道模式
** input parameters: ucChannelMode 通道模式
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetChannelMode(unsigned char ucChannelMode);
/*********************************************************************************************************
** Function name: saa7113SetField
** Descriptions: SAA7113 视频采集卡场选择 (仅适合于强制场选择, 不适用于自动场检测)
** input parameters: ucField 场选择
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetField(unsigned char ucField);
/*********************************************************************************************************
** Function name: saa7113SetBrightness
** Descriptions: SAA7113 视频采集卡设置亮度
** input parameters: ucBrightness 亮度
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetBrightness(unsigned char ucBrightness);
/*********************************************************************************************************
** Function name: saa7113SetContrast
** Descriptions: SAA7113 视频采集卡设置对比度
** input parameters: ucContrast 对比度
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetContrast(unsigned char ucContrast);
/*********************************************************************************************************
** Function name: saa7113SetSaturation
** Descriptions: SAA7113 视频采集卡设置饱和度
** input parameters: ucSaturation 饱和度
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetSaturation(unsigned char ucSaturation);
/*********************************************************************************************************
** Function name: saa7113SetHue
** Descriptions: SAA7113 视频采集卡设置色调
** input parameters: ucHue 色调
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113SetHue(unsigned char ucHue);
/*********************************************************************************************************
** Function name: saa7113EnableWhitepeakOff
** Descriptions: SAA7113 视频采集卡允许白峰控制
** input parameters: NONE
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113EndleWhitepeakOff(void);
/*********************************************************************************************************
** Function name: saa7113DisableWhitepeakOff
** Descriptions: SAA7113 视频采集卡允许白峰控制
** input parameters: NONE
** output parameters: NONE
** Returned value: NONE
*********************************************************************************************************/
void saa7113DisableWhitepeakOff(void);
#endif /* __SAA7113_H */
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -