亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? test_if101.c~

?? cmmb if101 linux driver sample
?? C~
字號:
#include<stdio.h>#include<stdlib.h>#include <sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include <signal.h> #include <unistd.h>  #include <string.h>#include <linux/ioctl.h>#include <linux/keyboard.h>#include <linux/kd.h>#include <linux/vt.h>#include <termios.h>#include <sys/un.h>#include <sys/socket.h>#include "IF101_Operation.h"#include "IF101_IO.h"#include <asm/arch/pxa-regs.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/init.h>#include "IF101_Communication.h"#define BUFFER_SIZE   300*1024extern INNO_RETURN_CODE INNO_I2C_Read(unsigned char addr, unsigned char *data);int fd_if101;int main(int argc, char **argv){	int ret;	char *buffer;		int freq = -1; 	int second = 10;	char *file_name = NULL;	int i;	int channel;	int fd_file;	int ts_info[4] = {11,4,0,0};	int pm = 1 ;	PM_MODE pm_mode = PM_MODE_RESUME;		SYS_STATUS  sys_status;	DEMOD_CONFIG setting[2];	DEMOD_CONFIG checking[2];	int valid_freq = 0;//	GAFR3_U &= 0x1400;	buffer = (char *)malloc(BUFFER_SIZE);	int g_status = 0;		fd_if101=open("/tmp/if101",O_RDWR);	if(fd_if101<0){		printf("open /dev/if101 error.\n");		return 0;	}else	{		printf("detected if101 successfully");	}		printf("argc == %d", argc);	for( i = 0; i < argc ; i++){		if (strcmp(argv[i], "-f") == 0) {			freq = atoi(argv[++i]);			printf("freq == %d\n", freq);		}		if (strcmp(argv[i], "-s") == 0) {			second = atoi(argv[++i]);			printf("second == %d\n", second);		}		if (strcmp(argv[i], "-ts") == 0) {			ts_info[0]  = atoi(argv[++i]);			ts_info[1]  = atoi(argv[++i]);			ts_info[2]  = atoi(argv[++i]);			ts_info[3]  = atoi(argv[++i]);			printf("ts_info[0] = %d\n", ts_info[0]);			printf("ts_info[1] = %d\n", ts_info[1]);			printf("ts_info[2] = %d\n", ts_info[2]);			printf("ts_info[3] = %d\n", ts_info[3]);		}		if (strcmp(argv[i], "-o") == 0) {			file_name = argv[++i];		}		if (strcmp(argv[i], "-pm") == 0) {			pm = atoi(argv[++i]);		}		if (strcmp(argv[i], "-status") == 0) {						g_status = atoi(argv[++i]); 			printf("g_status == %d\n", g_status);		}			}	fd_file = open(file_name, O_WRONLY | O_CREAT);	if(fd_file < 0){		printf("open file %s error\n", file_name);		return 0;	}		unsigned char version[2] = {0,0};	ret = ioctl(fd_if101, IOCTL_GET_FW_VERSION, version);	if(ret != INNO_NO_ERROR){		printf("IOCTL_GET_FW_VERSION fail. ret = %d\n", ret);		return 0;	}	printf("FW version = %d.%d\n", version[0], version[1]);/*	if(pm == 1)		pm_mode = PM_MODE_RESUME;		else 			pm_mode = PM_MODE_PAUSE;		ret = ioctl(fd_if101, IOCTL_SET_PM, &pm_mode);	if(ret != INNO_NO_ERROR){		printf("IOCTL_SET_PM fail\n");		return 0;	}	printf("Set pm to %d\n", pm);*/	if(freq > 0){		unsigned char data = 0;		ret = ioctl(fd_if101, IOCTL_SET_FREQUENCY, &freq);		//INNO_I2C_Read(0xbd, &data);		//INNO_I2C_Read(0xbd, &data);		//printf("---data == %d ---", data);					if(ret != INNO_NO_ERROR){			printf("IOCTL_SET_FREQUENCY fail\n");			return 0;		}		printf("Set Tuner frequency to %d\n", freq);		sleep(2); // The delay is MUST		if(ts_info[0] == 0 && ts_info[1] == 1){			//ret = ioctl(fd_if101, IOCTL_SET_RECEIVE_TS0, NULL); 			ret = INNO_NO_ERROR;			if(ret != INNO_NO_ERROR){				printf("IOCTL_SET_RECEIVE_TS0 fail\n");				return 0;			}			printf("Set to receive TS0\n");		}		else{			//ret = ioctl(fd_if101, IOCTL_SET_RECEIVE_PROGRAM, ts_info); 			ret = INNO_NO_ERROR;			if(ret != INNO_NO_ERROR){				printf("IOCTL_SET_RECEIVE_TS0 fail\n");				return 0;			}			printf("Set to receive program. ts_info = %d, %d, %d, %d \n", ts_info[0], ts_info[1], ts_info[2], ts_info[3]);		}	//	ret = ioctl(fd_if101, IOCTL_GET_DEMOD_CONFIG, checking);		ret = INNO_NO_ERROR;		if(ret != INNO_NO_ERROR){			printf("Get Demod Config Fail. ret=%d\n", ret);		}		for(i = 0; i< 2; i++){			printf("checking[%d].ts_start = %d\n", i,checking[i].ts_start);			printf("checking[%d].ts_count = %d\n", i,checking[i].ts_count);			printf("checking[%d].modulate_type = %d\n",i, checking[i].modulate_type);			printf("checking[%d].rs_mode = %d\n", i,checking[i].rs_mode);			printf("checking[%d].outer_mode = %d\n", i, checking[i].outer_mode);			printf("checking[%d].ldpc_mode = %d\n", i,checking[i].ldpc_mode);		}	}	else if(freq == 0){		unsigned char freq_dot[2] = {18, 25};		ret = ioctl(fd_if101, IOCTL_SCAN_FREQUENCY, freq_dot); 		if(ret != INNO_NO_ERROR){			printf("IOCTL_SCAN_FREQUENCY fail\n");			return 0;		}		printf("Scan frequency from %d to %d\n", freq_dot[0], freq_dot[1]);		sleep(2); // The delay is MUST		do{			ret = ioctl(fd_if101, IOCTL_GET_SYS_STATUS, &sys_status); 			if(ret != INNO_NO_ERROR){				printf("IOCTL_GET_SYS_STATUS fail\n");				return ret;			}			printf("******** sys status **************\n");			printf("Lock = %d\n",sys_status.lock); 				printf("CP Type = 0x%X\n",sys_status.cp_type); 				printf("Scan process = 0x%X\n",sys_status.scan_process); 				printf("Scan Result = 0x%X\n",sys_status.scan_result); 				printf("Current Frequenc = %d\n",sys_status.current_frequency); 				printf("Signal Strength = -%ddB\n",sys_status.signal_strength); 				printf("LDPC error percentage = %d%%\n",sys_status.ldpc_err_percent); 				printf("**********************************\n");			usleep(300000);		}while(sys_status.scan_process == 1);			if(sys_status.scan_result == 1){			printf("Find a valid frequency %d\n", sys_status.current_frequency);			ret = ioctl(fd_if101, IOCTL_SET_RECEIVE_TS0, NULL); 			if(ret != INNO_NO_ERROR){				printf("IOCTL_SET_RECEIVE_TS0 fail\n");				return 0;			}			printf("Set to receive TS0\n");	/*			ret = ioctl(fd_if101, IOCTL_SET_RECEIVE_PROGRAM, ts_info); 			if(ret != INNO_NO_ERROR){				printf("IOCTL_SET_RECEIVE_TS0 fail\n");				return 0;			}			printf("Set to receive program. ts_info = %d, %d, %d, %d \n", ts_info[0], ts_info[1], ts_info[2], ts_info[3]);	*/		}		else{			printf("Scan Fail\n");			return 0;		}			}	#if 0 	// just to test IOCTL_SET_DEMOD_CONFIG 	setting[0].ts_start = 11;	setting[0].ts_count = 4;	setting[0].modulate_type = DEMAP_QPSK; 	setting[0].rs_mode = RS_240_224; 	setting[0].outer_mode = OUTER_MODE_1; 	setting[0].ldpc_mode = LDPC_1_DIV_2; 	setting[1].ts_start = 0;	setting[1].ts_count = 0;	setting[1].modulate_type = 0; 	setting[1].rs_mode = 0; 	setting[1].outer_mode = 0; 	setting[1].ldpc_mode = 0; 	ret = ioctl(fd_if101, IOCTL_SET_DEMOD_CONFIG, setting);	if(ret != INNO_NO_ERROR){		printf("Set Demod Config Fail. ret=%d\n", ret);	}	printf("Set demod config\n");#endif	i = second;	while(1){//		printf("g_status ==== %d", g_status);		if(g_status == 1){			//ret = ioctl(fd_if101, IOCTL_GET_SYS_STATUS, &sys_status); 			ret = INNO_NO_ERROR;			if(ret != INNO_NO_ERROR){				printf("IOCTL_GET_SYS_STATUS fail\n");				return ret;			}			printf("******** sys status **************\n");			printf("Lock = %d\n",sys_status.lock); 				printf("CP Type = 0x%X\n",sys_status.cp_type); 				printf("Scan Result = 0x%X\n",sys_status.scan_result); 				printf("Current Frequenc = %d\n",sys_status.current_frequency); 				printf("Signal Strength = -%ddB\n",sys_status.signal_strength); 				printf("LDPC error percentage = %d%%\n",sys_status.ldpc_err_percent); 				printf("**********************************\n");		}		ret = read(fd_if101,buffer,BUFFER_SIZE); 	//		printf("read size = 0x%X\n", ret);		if(ret > 0){			ret = write(fd_file, buffer, ret);			if(--i == 0)				break;			else				printf("********receive seconds:%d**********\n\n",second - i);		}	}	free(buffer);		close(fd_if101);	close(fd_file);	//fclose(fp);	return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区成人| 91官网在线观看| 久久久精品人体av艺术| 国内外精品视频| 久久久精品黄色| 93久久精品日日躁夜夜躁欧美| 成人免费一区二区三区在线观看| 91亚洲永久精品| 亚洲一区自拍偷拍| 日韩欧美一级二级三级久久久| 久久成人羞羞网站| 国产精品天干天干在观线| 99精品视频在线观看| 一区二区三区不卡视频在线观看| 欧美疯狂性受xxxxx喷水图片| 日本不卡一二三| 欧美激情一区二区三区四区| 日韩欧美123| 国内成+人亚洲+欧美+综合在线| 国产欧美一区二区三区沐欲| 日本韩国一区二区三区| 日韩国产在线一| 久久久综合激的五月天| 91影院在线观看| 美女网站色91| ㊣最新国产の精品bt伙计久久| 欧美视频一二三区| 国产福利一区在线| 婷婷丁香激情综合| 中文乱码免费一区二区| 在线免费观看日韩欧美| 国内精品久久久久影院一蜜桃| 欧美高清在线一区二区| 欧美美女bb生活片| 成人精品免费视频| 日本不卡一区二区| 亚洲精品午夜久久久| 欧美一二三四区在线| aa级大片欧美| 韩国女主播成人在线观看| 亚洲午夜久久久久| 国产精品国产三级国产| 欧美mv日韩mv国产| 精品视频一区三区九区| av高清久久久| 国产一区美女在线| 一区二区三区四区视频精品免费| 久久久蜜桃精品| 欧美日韩高清在线| 97se亚洲国产综合自在线不卡| 蜜臀久久99精品久久久久久9| 亚洲精品久久久久久国产精华液| 亚洲精品一区二区三区99| 91精品欧美福利在线观看| 91丨国产丨九色丨pron| 国产成人在线视频播放| 久色婷婷小香蕉久久| 亚洲一二三区在线观看| 国产精品久久久久国产精品日日| 欧美大片一区二区三区| 欧美视频一区在线| 色美美综合视频| 一本色道久久综合亚洲aⅴ蜜桃 | 欧美日韩综合在线免费观看| 99re这里都是精品| 成人91在线观看| 波多野结衣中文字幕一区 | 国产99久久久国产精品潘金| 日本免费在线视频不卡一不卡二| 午夜精品久久久| 亚洲最新视频在线播放| 一区二区三区视频在线看| 亚洲人成小说网站色在线| 国产精品的网站| 亚洲激情第一区| 亚洲一区二区三区视频在线播放 | 色哟哟国产精品免费观看| 99r国产精品| 在线一区二区三区| 欧洲一区二区av| 欧美区一区二区三区| 欧美精品在线视频| 欧美一级黄色大片| 久久婷婷国产综合精品青草| 久久久精品综合| 欧美国产精品v| 自拍偷自拍亚洲精品播放| 日韩一区中文字幕| 亚洲综合在线五月| 亚洲成人在线网站| 蜜臀91精品一区二区三区| 精品一区二区在线看| 国产真实精品久久二三区| 高清不卡一二三区| 久久久精品国产免费观看同学| 久久精品在线观看| 最新日韩在线视频| 日韩激情一区二区| 国产最新精品精品你懂的| 国产高清精品在线| 色婷婷精品久久二区二区蜜臂av| 欧美三级在线视频| 精品成人一区二区三区| 中文字幕在线观看不卡视频| 亚洲午夜影视影院在线观看| 日韩电影在线免费| 国产成人精品免费| 欧美亚洲一区三区| 久久亚洲精品国产精品紫薇| 亚洲视频一区在线| 全国精品久久少妇| 91在线视频观看| 欧美一区二区三区四区在线观看| 日本一区二区三区在线不卡| 亚洲图片有声小说| 国产黄色成人av| 欧美日韩和欧美的一区二区| 国产亚洲一区二区三区四区| 亚洲精品视频一区| 国内成+人亚洲+欧美+综合在线| 色综合一区二区| 欧美精品一区二区三区四区 | 国产视频一区不卡| 亚洲国产精品天堂| 国产99精品国产| 日韩亚洲欧美成人一区| 中文字幕亚洲区| 久久99久久久久久久久久久| 日本韩国精品一区二区在线观看| 精品福利在线导航| 亚洲五码中文字幕| 9人人澡人人爽人人精品| 日韩欧美亚洲国产另类| 一区二区三区中文字幕| 国产成人免费视频网站高清观看视频 | 欧美日韩成人综合在线一区二区| 国产日韩精品一区二区浪潮av| 日韩成人午夜电影| 色悠久久久久综合欧美99| 中文文精品字幕一区二区| 日韩高清在线不卡| 欧美综合亚洲图片综合区| 中文字幕人成不卡一区| 国产精品一卡二卡| 精品久久久久99| 另类小说综合欧美亚洲| 欧美一区二区视频免费观看| 成人免费视频网站在线观看| 2020国产精品| 久久精品二区亚洲w码| 欧美精品色综合| 亚洲国产人成综合网站| 在线观看日韩一区| 一区二区三区毛片| 99久久综合精品| 国产精品美女久久久久av爽李琼| 国产成人小视频| 久久精品欧美一区二区三区麻豆| 久久99热这里只有精品| 日韩一级成人av| 久久精品免费看| 欧美大度的电影原声| 麻豆精品一区二区综合av| 欧美高清你懂得| 日本一不卡视频| 日韩免费高清电影| 老汉av免费一区二区三区| 精品欧美乱码久久久久久1区2区| 久久精品国产999大香线蕉| 日韩视频在线你懂得| 久久综合综合久久综合| 久久精品男人的天堂| 国产高清视频一区| 最近日韩中文字幕| 欧美图片一区二区三区| 性感美女久久精品| 日韩亚洲欧美综合| 国产激情视频一区二区在线观看| 欧美激情一区三区| 色婷婷久久99综合精品jk白丝 | 亚洲国产精品ⅴa在线观看| 成人国产一区二区三区精品| 综合色天天鬼久久鬼色| 欧美午夜精品久久久久久超碰| 亚洲高清在线视频| 日韩欧美色综合网站| 国产精品自拍网站| 亚洲日本在线观看| 日韩一级二级三级| 成人综合在线观看| 亚洲国产精品一区二区久久| 日韩一级免费观看| 成人污视频在线观看| 亚洲影院在线观看| 精品免费一区二区三区| 99视频精品全部免费在线| 午夜欧美在线一二页| 久久久精品国产免大香伊 | 717成人午夜免费福利电影| 久久99久久99小草精品免视看|