⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sn9c102p.h

📁 凌阳SPCA5XX解码芯片USB驱动源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
static int sn9c102p_init(struct usb_spca50x *spca50x);static void sn9c102p_start(struct usb_spca50x *spca50x);static void sn9c102p_stop(struct usb_spca50x *spca50x);static __u16 sn9c102p_setbrightness(struct usb_spca50x *spca50x);static __u16 sn9c102p_getbrightness(struct usb_spca50x *spca50x);static __u16 sn9c102p_setcontrast(struct usb_spca50x *spca50x);static __u16 sn9c102p_getcontrast(struct usb_spca50x *spca50x);//static void sn9c102p_setAutobright (struct usb_spca50x *spca50x);//static void sn9c102p_shutdown(struct usb_spca50x *spca50x);static int sn9c102p_probesensor(struct usb_spca50x *spca50x);static __u8 sn9c102p[]= {  0x00, 0x03, 0x64, 0x00, 0x1A, 0x20, 0x20, 0x20, 0xA1, 0x11, 0x02, 0x09, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00,//reg0  reg1  reg2  reg3  reg4  reg5  reg6  reg7  reg8  reg9  rega  regb  regc  regd  rege  regf  reg10 reg11  0x00, 0x01, 0x03, 0x28, 0x1e, 0x41, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00//reg12 reg13 reg14 reg15 reg16 reg17 reg18 reg19 reg1a reg1b reg1c reg1d reg1e reg1f reg20 reg21 reg22 reg23};static __u8 reg9a[] = {	0x08, 0x40, 0x20, 0x10, 0x00, 0x04};static __u8 regsn20[] = { 	0x00, 0x2D, 0x46, 0x5A, 0x6C, 0x7C, 0x8B, 0x99, 0xA6, 0xB2, 0xBF, 0xCA, 0xD5, 0xE0, 0xEB, 0xF5, 0xFF};static __u8 reg84[] = {	0x14, 0x00, 0x27, 0x00, 0x07, 0x00, 0xE5, 0x0F, 0xE4, 0x0F, 0x38, 0x00, 0x3E, 0x00, 0xC3, 0x0F,	0x00, 0x00, 0x00, 0x00, 0x00};#if 0static __u8 qtable1[] = {	0x0B, 0x07, 0x07, 0x0B, 0x07, 0x07, 0x0B, 0x0B, 0x0B, 0x0B, 0x0E, 0x0B, 0x0B, 0x0E, 0x12, 0x1D,	0x12, 0x12, 0x0E, 0x0E, 0x12, 0x24, 0x19, 0x19, 0x15, 0x1D, 0x2B, 0x24, 0x2B, 0x2B, 0x27, 0x24,	0x27, 0x27, 0x2F, 0x32, 0x40, 0x39, 0x2F, 0x32, 0x3D, 0x32, 0x27, 0x27, 0x39, 0x4F, 0x39, 0x3D,	0x44, 0x48, 0x4B, 0x4B, 0x4B, 0x2B, 0x36, 0x52, 0x56, 0x4F, 0x48, 0x56, 0x40, 0x48, 0x4B, 0x48,	0x0B, 0x0E, 0x0E, 0x12, 0x0E, 0x12, 0x20, 0x12, 0x12, 0x20, 0x48, 0x2F, 0x27, 0x2F, 0x48, 0x48,	0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48,	0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48,	0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48 };static __u8 qtable2[] = {		0x09, 0x06, 0x06, 0x09, 0x06, 0x06, 0x09, 0x09, 0x09, 0x09, 0x0C, 0x09, 0x09, 0x0C, 0x0F, 0x18,	0x0F, 0x0F, 0x0C, 0x0C, 0x0F, 0x1E, 0x15, 0x15, 0x12, 0x18, 0x24, 0x1E, 0x24, 0x24, 0x21, 0x1E,	0x21, 0x21, 0x27, 0x2A, 0x36, 0x30, 0x27, 0x2A, 0x33, 0x2A, 0x21, 0x21, 0x30, 0x42, 0x30, 0x33,	0x39, 0x3C, 0x3F, 0x3F, 0x3F, 0x24, 0x2D, 0x45, 0x48, 0x42, 0x3C, 0x48, 0x36, 0x3C, 0x3F, 0x3C,	0x09, 0x0C, 0x0C, 0x0F, 0x0C, 0x0F, 0x1B, 0x0F, 0x0F, 0x1B, 0x3C, 0x27, 0x21, 0x27, 0x3C, 0x3C,	0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C,	0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C,	0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C };#endifstatic __u8 qtable3[] = {		0x07, 0x05, 0x05, 0x07, 0x05, 0x05, 0x07, 0x07, 0x07, 0x07, 0x0A, 0x07, 0x07, 0x0A, 0x0C, 0x14,	0x0C, 0x0C, 0x0A, 0x0A, 0x0C, 0x19, 0x11, 0x11, 0x0F, 0x14, 0x1E, 0x19, 0x1E, 0x1E, 0x1B, 0x19,	0x1B, 0x1B, 0x20, 0x23, 0x2D, 0x28, 0x20, 0x23, 0x2A, 0x23, 0x1B, 0x1B, 0x28, 0x37, 0x28, 0x2A,	0x2F, 0x32, 0x34, 0x34, 0x34, 0x1E, 0x25, 0x39, 0x3C, 0x37, 0x32, 0x3C, 0x2D, 0x32, 0x34, 0x32,	0x07, 0x0A, 0x0A, 0x0C, 0x0A, 0x0C, 0x16, 0x0C, 0x0C, 0x16, 0x32, 0x20, 0x1B, 0x20, 0x32, 0x32,	0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,	0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,	0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32};#if 0static __u8 qtable4[] = {		0x06, 0x04, 0x04, 0x06, 0x04, 0x04, 0x06, 0x06, 0x06, 0x06, 0x08, 0x06, 0x06, 0x08, 0x0A, 0x11,	0x0A, 0x0A, 0x08, 0x08, 0x0A, 0x15, 0x0F, 0x0F, 0x0C, 0x11, 0x19, 0x15, 0x19, 0x19, 0x17, 0x15,	0x17, 0x17, 0x1B, 0x1D, 0x25, 0x21, 0x1B, 0x1D, 0x23, 0x1D, 0x17, 0x17, 0x21, 0x2E, 0x21, 0x23,	0x27, 0x29, 0x2C, 0x2C, 0x2C, 0x19, 0x1F, 0x30, 0x32, 0x2E, 0x29, 0x32, 0x25, 0x29, 0x2C, 0x29,	0x06, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x13, 0x0A, 0x0A, 0x13, 0x29, 0x1B, 0x17, 0x1B, 0x29, 0x29,	0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29,	0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29,	0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29 };static __u8 qtable5[] = {		0x05, 0x03, 0x03, 0x05, 0x03, 0x03, 0x05, 0x05, 0x05, 0x05, 0x07, 0x05, 0x05, 0x07, 0x09, 0x0E,	0x09, 0x09, 0x07, 0x07, 0x09, 0x11, 0x0C, 0x0C, 0x0A, 0x0E, 0x15, 0x11, 0x15, 0x15, 0x13, 0x11,	0x13, 0x13, 0x16, 0x18, 0x1F, 0x1C, 0x16, 0x18, 0x1D, 0x18, 0x13, 0x13, 0x1C, 0x26, 0x1C, 0x1D,	0x21, 0x23, 0x24, 0x24, 0x24, 0x15, 0x1A, 0x28, 0x29, 0x26, 0x23, 0x29, 0x1F, 0x23, 0x24, 0x23,	0x05, 0x07, 0x07, 0x09, 0x07, 0x09, 0x10, 0x09, 0x09, 0x10, 0x23, 0x16, 0x13, 0x16, 0x23, 0x23,	0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23,	0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23,	0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23 };static __u8 qtable6[] = {		 0x04, 0x03, 0x03, 0x04, 0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x06, 0x04, 0x04, 0x06, 0x07, 0x0C,	 0x07, 0x07, 0x06, 0x06, 0x07, 0x0E, 0x0A, 0x0A, 0x09, 0x0C, 0x11, 0x0E, 0x11, 0x11, 0x10, 0x0E,	 0x10, 0x10, 0x13, 0x14, 0x1A, 0x17, 0x13, 0x14, 0x18, 0x14, 0x10, 0x10, 0x17, 0x20, 0x17, 0x18,	 0x1B, 0x1D, 0x1E, 0x1E, 0x1E, 0x11, 0x16, 0x21, 0x23, 0x20, 0x1D, 0x23, 0x1A, 0x1D, 0x1E, 0x1D,	 0x04, 0x06, 0x06, 0x07, 0x06, 0x07, 0x0D, 0x07, 0x07, 0x0D, 0x1D, 0x13, 0x10, 0x13, 0x1D, 0x1D,	 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D,	 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D,	 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D };static __u8 qtable7[] = {		 0x04, 0x02, 0x02, 0x04, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x05, 0x04, 0x04, 0x05, 0x06, 0x0A,	 0x06, 0x06, 0x05, 0x05, 0x06, 0x0C, 0x08, 0x08, 0x07, 0x0A, 0x0E, 0x0C, 0x0E, 0x0E, 0x0D, 0x0C,	 0x0D, 0x0D, 0x10, 0x11, 0x16, 0x13, 0x10, 0x11, 0x14, 0x11, 0x0D, 0x0D, 0x13, 0x1A, 0x13, 0x14,	 0x17, 0x18, 0x19, 0x19, 0x19, 0x0E, 0x12, 0x1C, 0x1D, 0x1A, 0x18, 0x1D, 0x16, 0x18, 0x19, 0x18,	 0x04, 0x05, 0x05, 0x06, 0x05, 0x06, 0x0B, 0x06, 0x06, 0x0B, 0x18, 0x10, 0x0D, 0x10, 0x18, 0x18,	 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18,	 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18,	 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18 };static __u8 qtable8[] = {		 0x03, 0x02, 0x02, 0x03, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x04, 0x03, 0x03, 0x04, 0x05, 0x08,	 0x05, 0x05, 0x04, 0x04, 0x05, 0x0A, 0x07, 0x07, 0x06, 0x08, 0x0C, 0x0A, 0x0C, 0x0C, 0x0B, 0x0A,	 0x0B, 0x0B, 0x0D, 0x0E, 0x12, 0x10, 0x0D, 0x0E, 0x11, 0x0E, 0x0B, 0x0B, 0x10, 0x16, 0x10, 0x11,	 0x13, 0x14, 0x15, 0x15, 0x15, 0x0C, 0x0F, 0x17, 0x18, 0x16, 0x14, 0x18, 0x12, 0x14, 0x15, 0x14,	 0x03, 0x04, 0x04, 0x05, 0x04, 0x05, 0x09, 0x05, 0x05, 0x09, 0x14, 0x0D, 0x0B, 0x0D, 0x14, 0x14,	 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14,	 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14,	 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 };#endif static __u8 hv7131r_sensor_init[][8]={	{ 0xC1, 0x11, 0x01, 0x08, 0x01, 0x00, 0x00, 0x10 },	{ 0xB1, 0x11, 0x34, 0x17, 0x7F, 0x00, 0x00, 0x10 },	{ 0xD1, 0x11, 0x40, 0xFF, 0x7F, 0x7F, 0x7F, 0x10 },	{ 0x91, 0x11, 0x44, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xD1, 0x11, 0x10, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xD1, 0x11, 0x14, 0x01, 0xE2, 0x02, 0x82, 0x10 },	{ 0x91, 0x11, 0x18, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0, 0, 0, 0, 0, 0, 0, 0 }};//initdone static __u8 hv7131r_sensor_config[][8]={		{ 0xA1, 0x11, 0x01, 0x08, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x01, 0x08, 0x00, 0x00, 0x00, 0x10 },	{ 0xC1, 0x11, 0x25, 0x00, 0x61, 0xA8, 0x00, 0x10 },	{ 0xA1, 0x11, 0x30, 0x22, 0x00, 0x00, 0x00, 0x10 },	{ 0xC1, 0x11, 0x31, 0x20, 0x2E, 0x20, 0x00, 0x10 },	{ 0xC1, 0x11, 0x25, 0x00, 0xC3, 0x50, 0x00, 0x10 },	{ 0xA1, 0x11, 0x30, 0x14, 0x00, 0x00, 0x00, 0x10 },	{ 0xC1, 0x11, 0x31, 0x10, 0x1A, 0x10, 0x00, 0x10 },	//	{ 0xA1, 0x11, 0x01, 0x08, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x20, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x21, 0xD0, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x22, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x23, 0x09, 0x00, 0x00, 0x00, 0x10 },	{ 0, 0, 0, 0, 0, 0, 0, 0 }};//setqtablestatic __u8 hv7131r_sensor_start[][8]={		{ 0xA1, 0x11, 0x01, 0x08, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x20, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x21, 0xD0, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x22, 0x00, 0x00, 0x00, 0x00, 0x10 },	{ 0xA1, 0x11, 0x23, 0x10, 0x00, 0x00, 0x00, 0x10 },	{ 0, 0, 0, 0, 0, 0, 0, 0 }};	static int sn9c102p_i2cwrite (struct usb_device *dev,__u8 *buffer,__u16 length){	__u8 mode[] = {0x81,0x11,0,0,0,0,0,0x10};	/* is i2c ready */	if (length > 5 || !buffer) return -1;	mode[0] = mode[0] |length << 4 ;	memcpy(&mode[2],buffer,length);	sonixRegWrite(dev,0x08,0x08,0x0000,mode,8);		return 0;}static void sn9c102p_i2cwritebuf (struct usb_device *dev,__u8 *buffer ){	sonixRegWrite(dev,0x08,0x08,0x0000,buffer,8);		} static int sn9c102p_i2cread (struct usb_device *dev,__u8 reg,__u8 *buffer,__u16 length){	__u8 mode[] = {0x91,0x11,0,0,0,0,0,0x10};	__u8 result[] = {0,0,0,0,0};	if (length > 5 || !buffer) return -1;	mode[2] = reg;	sonixRegWrite(dev,0x08,0x08,0x0000,mode,8);	mode[2] = 0;	mode[0] = 0x81 | length << 4 | 0x02;	sonixRegWrite(dev,0x08,0x08,0x0000,mode,8);	sonixRegRead(dev,0x00,0x0a,0x0000,result,5);	memcpy(buffer,result,length);	return 0;}static int sn9c102p_init(struct usb_spca50x *spca50x){		struct usb_device *dev = spca50x->dev;	int err = 0;	__u8 regF1 = 0x01;	__u8 regGpio = 0x74;	__u8 data = 0x00;	sonixRegWrite(dev,0x08,0xf1,0x0000,&regF1,1);	//{ 0x41, 0x08, 0x00F1, 0x0000, 0x0001, 0x0001, "\x01" },	sonixRegRead(dev,0x00,0x00,0x0000,&regF1,1);	//{ 0xC1, 0x00, 0x0000, 0x0000, 0x0001, 0x0001, "\x00" },	sonixRegWrite(dev,0x08,0xf1,0x0000,&regF1,1);	//{ 0x41, 0x08, 0x00F1, 0x0000, 0x0001, 0x0001, "\x00" },	sonixRegRead(dev,0x00,0x00,0x0000,&regF1,1);	//{ 0xC1, 0x00, 0x0000, 0x0000, 0x0001, 0x0001, "\x11" },	if (regF1 != 0x11) return -ENODEV;	sonixRegWrite(dev,0x08,0x02,0x0000,&regGpio,1);	//{ 0x41, 0x08, 0x0002, 0x0000, 0x0001, 0x0001, "\x74" },	regF1 = 0x01;	sonixRegWrite(dev,0x08,0xf1,0x0000,&regF1,1);	//{ 0x41, 0x08, 0x00F1, 0x0000, 0x0001, 0x0001, "\x01" },	//-------------------------------------------------------	regF1 = 0x00;	sonixRegWrite(dev,0x08,0xf1,0x0000,&regF1,1);	//{ 0x41, 0x08, 0x00F1, 0x0000, 0x0001, 0x0001, "\x00" },	sonixRegWrite(dev,0x08,0x01,0x0000,&sn9c102p[1],1);	//{ 0x41, 0x08, 0x0001, 0x0000, 0x0001, 0x0001, "\x03" },	// verify the sonix chips id and registers 0x01 access	//{ 0xC1, 0x00, 0x0000, 0x0000, 0x0001, 0x0001, "\x11" },	//{ 0xC1, 0x00, 0x0001, 0x0000, 0x0001, 0x0001, "\x03" },	// configure gpio 	sonixRegWrite(dev,0x08,0x01,0x0000,&sn9c102p[1],2);	//{ 0x41, 0x08, 0x0001, 0x0000, 0x0002, 0x0002, "\x03\x64" },	sonixRegWrite(dev,0x08,0x08,0x0000,&sn9c102p[8],2);	//{ 0x41, 0x08, 0x0008, 0x0000, 0x0002, 0x0002, "\xA1\x11" },	sonixRegWrite(dev,0x08,0x017,0x0000,&sn9c102p[0x17],3);	//{ 0x41, 0x08, 0x0017, 0x0000, 0x0003, 0x0003, "\x41\x1A\x00" },	sonixRegWrite(dev,0x08,0x9a,0x0000,reg9a,6);	//{ 0x41, 0x08, 0x009A, 0x0000, 0x0006, 0x0006, "\x08\x40\x20\x10\x00\x04" },	data= 0x60;	sonixRegWrite(dev,0x08,0xD4,0x0000,&data,1);	//{ 0x41, 0x08, 0x00D4, 0x0000, 0x0001, 0x0001, "\x60" },	sonixRegWrite(dev,0x08,0x03,0x0000,&sn9c102p[3],0x0f);	//{ 0x41, 0x08, 0x0003, 0x0000, 0x000F, 0x000F, "\x00\x1A\x20\x20\x20\xA1\x11\x02\x09\x00\x00\x00\x10\x03\x00" },	data= 0x43;	sonixRegWrite(dev,0x08,0x01,0x0000,&data,1);	//{ 0x41, 0x08, 0x0001, 0x0000, 0x0001, 0x0001, "\x43" },	data= 0x61;	sonixRegWrite(dev,0x08,0x17,0x0000,&data,1);	//{ 0x41, 0x08, 0x0017, 0x0000, 0x0001, 0x0001, "\x61" },	data= 0x42;	sonixRegWrite(dev,0x08,0x01,0x0000,&data,1);	//{ 0x41, 0x08, 0x0001, 0x0000, 0x0001, 0x0001, "\x42" },	// probe sensor	if((err = sn9c102p_probesensor(spca50x)) < 0)		return -ENODEV;		return 0;}static void sn9c102p_stop(struct usb_spca50x *spca50x){ 	struct usb_device *dev = spca50x->dev;	__u8 stopsensor[] = { 0xA1, 0x11, 0x02, 0x09, 0x00, 0x00, 0x00, 0x10 };	__u8 regF1 = 0x01;	__u8 data = 0x0b;	sn9c102p_i2cwritebuf (dev,stopsensor);	sonixRegWrite(dev,0x08,0x01,0x0000,&sn9c102p[1],1);	sonixRegWrite(dev,0x08,0x17,0x0000,&sn9c102p[0x17],1);	sonixRegWrite(dev,0x08,0x01,0x0000,&sn9c102p[1],1);	sonixRegWrite(dev,0x08,0x01,0x0000,&data,1);	sonixRegWrite(dev,0x08,0xf1,0x0000,&regF1,1);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -