本实验的任务要求是利用串口像开发板发送图片数据,比较简单,因为是采用了ram来做缓存,最终显示出来的图片分辨率非常小,下一步学习完SDRAM,做个SDRAM控制器,就可以传大图了,本小白还在学习中,后续争取搞出来上传到博客上。
这里本人是借鉴了野火FPGA学习的第40章基于RS232的VGA图像显示,在此进行实验的一个扩展学习。
实验总体框架:
1.图像数据处理
2.模块搭建以及修改
3.实验效果
1.主要是利用Matlab进行对图片的数据进行处理,处理代码如下:
clc; %清理命令行窗口
clear all; %清理工作区
RGB=imread('test2.bmp'); %使用imread函数读取图片数据
[ROW,COL,D]=size(RGB); %图片行,列,维度
R=RGB(:,:,1); %提取图片中的红色分量
G=RGB(:,:,2); %提取图片中的绿色分量
B=RGB(:,:,3); %提取图片中的蓝色分量
imgdata=zeros(1,ROW*COL); %定义一个初值为0的数组,存储转换后的图片数据
%转换为RGB332格式
for r=1:ROW
for c=1:COL
imgdata((r-1)*COL+c)=bitand(R(r,c),224)+bitshift(bitand(G(r,c),224),-3)+bitshift(bitand(B(r,c),192),-6);
end
end
%打开或生成txt文件,将格式转换完成的数据写入txt文件
fidc=fopen('data_test.txt','w+');
for i =1:ROW*COL
fprintf(fidc,&