|
发表于 2011-8-15 17:09:54
|
显示全部楼层
可能是delphi处理现实部分不对。。。
下面是我测式用的,我也是用OV7670,但是后来我没有直接传送RGB565数据,数据量太大了。我压缩后再传输。。你可以这样,首先不要用你自己写的串口接收程序接收数据来显示,你可以先用串口调试助手来接收数据,然后把他复制到delphi的一个数组里去显示。。排除一下串口部分问题
tt[]数组就是存放像素数据的数组。。。。
var
bmp1:TBitMap;
P:array[0..153599] of PByteArray;
Hight,Width,index:integer;
begin
index:=0;
bmp1:=tbitmap.Create;
bmp1.PixelFormat:=pf16bit;
bmp1.Height:=240; // 81
bmp1.Width:=320;// 150
for Hight:=1 to 240 do//图像高度
begin
P[Hight-1]:=bmp1.ScanLine[Hight-1];//图像宽度
for Width:=1 to 320 do
begin
P[Hight-1][(Width shl 1)]:=tt[index]; //BGR RevDate
index:=index+1;
P[Hight-1][(Width shl 1)+1]:= tt[index]; //RevDate
index:=index+1;
end;
end;
form1.Image1.Picture.Assign(bmp1);
end; |
|