相關代碼如下:
do {
USBDevice->Open(d); // Open automatically calls Close( ) if necessary
vID = USBDevice->VendorID;
pID = USBDevice->ProductID;
if ((vID == b_vID) && (pID == v_pID))
{
//查詢設備信號
OV7670_WriteReg(0x12, 0x80); //Reset SCCB
Sleep(100);
OV7670_ReadReg(0x0a,&tmp[0]);
OV7670_ReadReg(0x0b,&tmp[1]);
sID= (tmp[0] << 8) + tmp[1];
if (sID == 0x7673)
{
sStatusBar1->Panels[0].Items[0]->Text = "設備:OV7670";
// OV7670_WriteReg(0x12,0x04);//RGB
// OV7670_WriteReg(0x40,0xD0); //RGB565
// OV7670_WriteReg(0x8C,0x00); //RGB565
// OV7670_WriteReg(0x12,0x03); //RGB565
//OV7670暫存器初始化
j = sizeof(OV7670_reg3)/2;
for (i=0;i<j;i++) OV7670_WriteReg(OV7670_reg3[i][0],OV7670_reg3[i][1]);
Sleep(200);
OV7670_ReadReg(0x12,&tmp[0]);
i = tmp[0] & 0x05;
switch(i)
{
case 0x00:s1 = "YUV";
break;
case 0x04:s1 = "Bayer RAW";
break;
case 0x01:s1 = "RGB";
break;
case 0x05:s1 = "Processed Bayer RAW";
break;
default:s1 = "未知模式";
break;
}
if ((tmp[0] & 0x02) > 0) s2 = "測驗彩條"; else s2 ="";
sStatusBar1->Panels[0].Items[1]->Text = s1+"565,"+ s2 + ",320*240";
// OV7670_Reset();
}else
{
USBDevice->Close();
//sStatusBar1->Panels[0].Items[0]->Text = "未找到視頻設備";
}
}
d++;
} while ((d < devices ) && (vID != b_vID) && (pID != v_pID));
求高手解答下這個sID是什么,如何獲取呢?
uj5u.com熱心網友回復:
看說明書,SDK庫,肯定有說明轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/88654.html
上一篇:關于Sift演算法的C++實作?
下一篇:vc++6.0上位機軟體
