📄 user.h
字号:
/***** 此程序为IP视频会议终端C400程序 ******/
/*********** user.h 为系统所需变量 *********/
/*********** designed by wangxq *********/
/*********** 2006-02-23 *********/
/*************** 以下为常量区 **************/
// leave 4000h bytes for function parameters
#define RAM_START 0x14000
#define RAM_END 0x5FFFF
#define STATIC_IPV4_PREFIX 24
#define USE_KMEM_LIB
#define USE_XNETSTACK_LIB
/*************** 以上为常量区 **************/
/*************** 以下为函数区 **************/
//C 程序中汇编函数的申明
extern void dp_write_video(void);
//完成写视频数据
extern void dp_read_video(void);
//完成读视频数据
extern void dp_read_audio(void);
//完成读音频数据
extern void dp_write_audio(void);
//完成写音频数据
void network_config();
//配置网络参数
void do_static();
//设置静态网络参数
void wait_millis(unsigned int waitTime);
//等待函数
void init();
//完成变量的初始化
void moveto_buf();
//将接收到的命令字放入接收缓冲区
void send_command();
//完成命令字的发送
void adjust_send_video(unsigned char num,unsigned char flag);
//调整视频的发送
void adjust_send_audio(unsigned char num,unsigned char flag);
//调整音频发送
void adjust_rev_video(unsigned char num,unsigned char flag);
//调整视频接收
void adjust_rev_audio(unsigned char num,unsigned char flag);
//调整音频接收
void analyse_current_state(unsigned char state,unsigned num);
//根据8031提供的情况调整视频、音频的收发
void start_leave();
//系统初始化离开所有组
/*************** 以上为函数区 **************/
/*************** 以下为连接区 **************/
unsigned char send_para[4][4];
//记录上行的四组发送参数
unsigned char rev_para_video[3][4];
//记录下行的三组视频接收参数
unsigned char rev_para_audio[3][4];
//记录下行的三组音频接收参数
unsigned char send_video_flag;
//记录视频是否需要发送
unsigned char rev_video_flag;
//记录视频是否需要接收
unsigned char send_audio_flag;
//记录音频是否需要发送
unsigned char rev_audio_flag;
//记录音频是否需要接收
/*************** 以上为连接区 **************/
/************* 以下为指针变量区 ************/
data unsigned char far *send_addr_video;
//UDP视频发送缓冲区地址指针
data unsigned char far *rev_addr_video;
//UDP视频接收发缓冲区地址指针
data unsigned char far *send_addr_audio;
//UDP音频发送缓冲区地址指针
data unsigned char far *rev_addr_audio;
//UDP音频接收缓冲区地址指针
data unsigned char far *send_addr_command;
//命令字发送缓冲区地址指针
data unsigned char far *rev_addr_command;
//UDP接收命令字缓冲区地址指针
data unsigned char far *rd_fifo_hf;
//读取音频发送FIFO半满地址指针
data unsigned char far *rd_fifo_ef;
//检测音频FIFO是否为空
data unsigned char far *dual_send;
//双口RAM写地址
data unsigned char far *dual_rev;
//双口RAM读地址
data unsigned char far *dual_ip;
//IP配置地址
/************* 以上为指针变量区 ************/
/************* 以下为句柄变量区 ************/
unsigned int video_sendhandle;
//UDP视频发送句柄
unsigned int video_revhandle;
//UDP视频接收句柄
unsigned int g711_sendhandle;
//711音频发送句柄
unsigned int g711_revhandle;
//711音频接收句柄
unsigned int command_sendhandle;
//UDP命令子发送句柄
unsigned int command_revhandle;
//UDP命令子接收句柄
/************* 以上为句柄变量区 ************/
/*********** 以下为任务调度变量区 **********/
data unsigned int result;
//任务调度句柄
data unsigned int audio_result;
//任务调度句柄
data unsigned int command_result;
//任务调度句柄
data unsigned char time_switch;
//UDP发送线程等待时间,大小决定了网络的发送速度
/*********** 以上为任务调度变量区 **********/
/************ 以下为SOCKET变量区 ***********/
struct sockaddr send_udp_video;
//UDP视频发送地址
struct sockaddr send_udp_audio;
//UDP音频发送地址
struct sockaddr send_udp_command;
//UDP命令字发送地址
struct sockaddr rev_udp_video;
//UDP视频接收地址
struct sockaddr rev_udp_audio;
//UDP音频接收地址
struct sockaddr rev_udp_command;
//UDP命令字接收地址
struct sockaddr rev_multi_video;
//UDP视频组播接收地址
struct sockaddr rev_multi_audio;
//UDP音频组播接收地址
struct sockaddr temp_addr;
unsigned int SEND_VIDEO_PORT;
//发送视频数据端口号
unsigned int REV_VIDEO_PORT;
//接收视频数据端口号
unsigned int SEND_G711_PORT;
//发送G711音频端口号
unsigned int REV_G711_PORT;
//接收G711音频端口号
unsigned int SEND_COMMAND_PORT;
//发送命令字端口号
unsigned int REV_COMMAND_PORT;
//接收命令字端口号
unsigned int rev_length_video;
//UDP视频接收长度
unsigned int rev_length_audio;
//UDP音频接收长度
int rev_length_command;
//UDP命令字接收长度
/************ 以上为SOCKET变量区 ***********/
/************* 以下为其他变量区 ************/
unsigned char rev_buf[2048];
//接收命令字缓冲区
unsigned int head_r;
//接收命令字缓冲头指针
unsigned int tail_r;
//接收命令字缓冲尾指针
unsigned char static_ip[4];
//本端静态IP
unsigned char yan_ma[4];
//本端子网掩码
unsigned char gate_ip[4];
//本端网关
unsigned int command_length;
//命令字长度
unsigned char temp;
//临时变量
unsigned char para_l;
//参数变量
unsigned char para_h;
//参数变量
unsigned char verify[3];
unsigned int i,j;
unsigned int trans_num;
/************* 以上为其他变量区 ************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -