📄 dm642.h
字号:
#ifndef _DM642_H
#define _DM642_H
#define Design_For_GDW
//#define Design_For_101
//#define Design_For_104
#define IOCTL_BOOTDM642 0
#define IOCTL_START 1
#define IOCTL_STOP 2
#define IOCTL_RESET 3
#define IOCTL_GET 4
#define IOCTL_INSERT_IFRAME 5
#define IOCTL_STOP_STATUS 6
#define IOCTL_DSP_STOP 7
#define IOCTL_DSP_STOP_STATUS 8
#define IOCTL_SetVideoParams 10
#define IOCTL_GetVideoParams 11
#define IOCTL_SetCompressParams 12
#define IOCTL_GetCompressParams 13
#define IOCTL_GetSTANDARD 15 //return 0 no; 1 ntsc; 2 pal;
#define IOCTL_SetSTANDARD 16 //0 no; 1 ntsc; 2 pal;
#define IOCTL_SetOSDParams 20
#define IOCTL_GetOSDParams 21
#define IOCTL_SetDSPCLOCK 22
#define IOCTL_SetOSDContral 23
#define IOCTL_GetOSDContral 24
#define IOCTL_SetLOGO 25
#define IOCTL_SetRTC 50
#define IOCTL_GetRTC 51
#define IOCTL_SetMAC 52
#define IOCTL_GetMAC 53
#define IOCTL_SetSer 54
#define IOCTL_GetSer 55
#define IOCTL_SetLed 56
#define IOCTL_UpData 60
#define IOCTL_Version 61
#define IOCTL_Flash 70
#ifdef Design_For_GDW
#define IOCTL_UserData 80
#define IOCTL_Pass 81
#define IOCTL_WatchDog 82
#define IOCTL_SendSerial 83
#define IOCTL_RecieveUserData 84
#define IOCTL_RecieveSerial 85
#endif
struct ioctl_get_data {
unsigned long channel;//0~3
unsigned long * buf;
unsigned long size;
unsigned long flag;
};
struct ioctl_set_videoparams {
unsigned long channel;//0~3
unsigned long brightness;//0~255 default:128
unsigned long contrast;//0~255 default:196
unsigned long saturation;//0~255 default:192
unsigned long hue;//0~255 default:128
unsigned long gain;//0~300 default:100
unsigned long time_explosure;// 1~100 default:10
unsigned long gain_redpel;//0~63 default:45
unsigned long gain_greenpela;//0~63 default:45
unsigned long gain_greenpelb;//0~63 default:45
unsigned long gain_bluepel;//0~63 default:45
unsigned long work_mode;//D8(1自动白平衡,0手动白平衡)D0(1AGC开,0AGC关)
unsigned long agc_balance;//0--80
unsigned long aperture;//0--255
};
struct ioctl_get_videoparams {
unsigned long channel;//0~3
unsigned long brightness;//0~255 default:128
unsigned long contrast;//0~255 default:196
unsigned long saturation;//0~255 default:192
unsigned long hue;//0~255 default:128
unsigned long gain;//0~300 default:100
unsigned long time_explosure;// 1~100 default:10
unsigned long gain_redpel;//0~63 default:45
unsigned long gain_greenpela;//0~63 default:45
unsigned long gain_greenpelb;//0~63 default:45
unsigned long gain_bluepel;//0~63 default:45
unsigned long work_mode;//D8(1自动白平衡,0手动白平衡)D0(1AGC开,0AGC关)
unsigned long agc_balance;//0--80
unsigned long aperture;//0--255
};
struct ioctl_set_compressparams {
unsigned long channel;//0~3
unsigned long I_QUANT;// 1~31
unsigned long P_QUANT;// 1~31
unsigned long I_RATE;
unsigned long FRAME_ON;
unsigned long FRAME_OFF;
unsigned long SIZEX;
};
struct ioctl_get_compressparams {
unsigned long channel;//0~3
unsigned long I_QUANT;// 1~31
unsigned long P_QUANT;// 1~31
unsigned long I_RATE;
unsigned long FRAME_ON;
unsigned long FRAME_OFF;
unsigned long SIZEX;//352 or 528 or 704
};
struct ioctl_set_osdparams {
unsigned long channel;//0~3
unsigned long MASK_RGN_X_Y;
unsigned long MASK_RGN_WIDTH_HEIGHT;
unsigned long LOGO_RGN_X_Y;
unsigned long LOGO_RGN_WIDTH_HEIGHT;
unsigned long LINE0_STARTX;
unsigned long LINE0_STARTY;
unsigned long LINE0_TYPE;
unsigned long LINE0_CHARS;
unsigned long LINE0_CLOCK_POS;
unsigned long LINE1_STARTX;
unsigned long LINE1_STARTY;
unsigned long LINE1_CHARS;
unsigned long HOST_CLOCK_SECS;
unsigned long CLOCK_MODIFY;// 1:modify 0:unmodify
unsigned long LINE_BUF[32];
unsigned long MODIFY_FLAG;//0x00 osd logo mask (1:modify 0:unmodify)
};
struct ioctl_get_osdparams {
unsigned long channel;//0~3
unsigned long MASK_RGN_X_Y;
unsigned long MASK_RGN_WIDTH_HEIGHT;
unsigned long LOGO_RGN_X_Y;
unsigned long LOGO_RGN_WIDTH_HEIGHT;
unsigned long LINE0_STARTX;
unsigned long LINE0_STARTY;
unsigned long LINE0_TYPE;
unsigned long LINE0_CHARS;
unsigned long LINE0_CLOCK_POS;
unsigned long LINE1_STARTX;
unsigned long LINE1_STARTY;
unsigned long LINE1_CHARS;
// unsigned long HOST_CLOCK_SECS;
// unsigned long CLOCK_MODIFY;// 1:modify 0:unmodify
unsigned long LINE_BUF[32];
// unsigned long MODIFY_FLAG;//0x00 osd logo mask (1:modify 0:unmodify)
};
struct ioctl_set_dsp_clock {
unsigned long channel;//0~3
unsigned long HOST_CLOCK_SECS;
};
struct ioctl_set_osdcontral {
unsigned long channel;//0~3
unsigned long contral_flag;//0x00 osd logo mask (1:open 0:close)
};
struct ioctl_get_osdcontral {
unsigned long channel;//0~3
unsigned long contral_flag;//0x00 osd logo mask (1:open 0:close)
};
struct ioctl_set_logo {
unsigned long channel;//0~3
unsigned long * buf;
unsigned long size;//32k
};
struct ioctl_set_rtc {
unsigned char second;//0~59
unsigned char minute;//0~59
unsigned char hour;//0~23
unsigned char day;// 1~31
unsigned char week;// 1~7
unsigned char month;// 1~12
unsigned char year;//0~99
unsigned char reserve;
};
struct ioctl_get_rtc {
unsigned char second;//0~59
unsigned char minute;//0~59
unsigned char hour;//0~23
unsigned char day;// 1~31
unsigned char week;// 1~7
unsigned char month;// 1~12
unsigned char year;//0~99
unsigned char reserve;
};
struct ioctl_set_mac {
unsigned char mac[6];
unsigned short reserve;
};
struct ioctl_get_mac {
unsigned char mac[6];
unsigned short reserve;
};
struct ioctl_set_ser {
unsigned long ser[4];
};
struct ioctl_get_ser {
unsigned long ser[4];
};
struct ioctl_updata {
unsigned long * buf;
unsigned long size;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -