我用的探索者stm32F4的ov2640摄像头例程,如何将读取到RGB颜 {MOD}值提取出来,然后我通过一个处理,再将处理后的显示在lcd上

2019-07-20 20:47发布

我用的探索者stm32F4的ov2640摄像头例程,如何将读取到RGB颜 {MOD}值提取出来,然后我通过一个处理,再将处理后的显示在lcd上,怎么破
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
huyang201306
1楼-- · 2019-07-21 01:42
大神些,帮忙
white_fox
2楼-- · 2019-07-21 07:24
 精彩回答 2  元偷偷看……
huyang201306
3楼-- · 2019-07-21 09:07
white_fox 发表于 2016-8-11 11:23
把DMA传输的目的地址设为内存上的一个数组   然后数组里存的RGB565原始数据,这个不就是你要的吗    按照R5 ...

u32 buffer[320][240];
u16 i, j;
DCMI_DMA_Init((u32)&buffer,1,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Disable);
DCMI_Start();
for(j=0;j<320;j++)
{
  for(i=0;i<240;i++)
R= (buffer[j] & 0xF800) >> 8;
G= (buffer[j] & 0x07E0) >> 3;
B= (buffer[j]  & 0x001F) << 3;
if(..................)//判断条件
        buffer[j]=0x00FF;
else       
        buffer[j]=0x0000;       
}
就这里了,然后咋搞
huyang201306
4楼-- · 2019-07-21 14:06
white_fox 发表于 2016-8-11 11:23
把DMA传输的目的地址设为内存上的一个数组   然后数组里存的RGB565原始数据,这个不就是你要的吗    按照R5 ...

u32 buffer[320][240];
u16 i, j;
DCMI_DMA_Init((u32)&buffer,1,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Disable);
DCMI_Start();
for(j=0;j<320;j++)
{
  for(i=0;i<240;i++)
R= (buffer[j] & 0xF800) >> 8;
G= (buffer[j] & 0x07E0) >> 3;
B= (buffer[j]  & 0x001F) << 3;
if(..................)//判断条件
        buffer[j]=0x00FF;
else       
        buffer[j]=0x0000;       
}
就这里了,然后咋搞
white_fox
5楼-- · 2019-07-21 16:45
huyang201306 发表于 2016-8-11 14:57
u32 buffer[320][240];
u16 i, j;
DCMI_DMA_Init((u32)&buffer,1,DMA_MemoryDataSize_HalfWord,DMA_Mem ...

你把RGB 单 {MOD}提取出来   处理过程是你自己的。    处理完了 分别取高 R-5 G-6 B-5再组合成RGB565的16位数据   直接送到液晶显示。我以为我写的挺清楚了
huyang201306
6楼-- · 2019-07-21 20:44
 精彩回答 2  元偷偷看……

一周热门 更多>