一、串口传图设计图

这一部分在之前写的SDRAM控制顶层模块的基础上加了pll时钟,之前写的tft4.3寸显示屏控制模块,串口接收数据模块和比特计数器。
pll时钟:之前在初始化部分提到过,此处有四路时钟信号,整体系统、字节接收为开发板自带的50M时钟,另有pll产生的一路9M时钟是给tft4.3寸显示屏驱动,两路相位相差180度(实际考虑电路时延,一般设置为150度)的100M时钟给SDRAM,由于在上升沿读取数据,相位不变的用于时钟计数,用来发送信号、做控制;相位改变180度的时钟上升沿正好在写入数据时的中间,用它来读写数据。(详细记在了初始化那里)
tft4.3寸显示屏控制模块:直接调用之前写的480272的显示屏驱动,tft的场信号控制是确定的,比特数=行像素点列像素点/2(RGB565格式16位的,即比特数的两倍),比特计数器记满即下一帧(场)图像。
串口接收数据模块:在字节接收时,八位字节与之前设计的fifo16位不一致,更改fifo_read为8字节进入,16位字节输出。
比特计数器:对串口接收字节计数,写使能时开始计数,记满一帧则产生图片可显示信号,说明数据已完全写入SDRAM。(此处就可得出使用SDRAM的作用——缓存帧数据)
二、控制信号

assign TFT_begin = (hcount_r==0)&&(vcount_r==0)?1'b1:1'b0;          //帧起始标志位信号输出assign Rd_en = (disp_state && TFT_de)?1'b1:1'b0;                   //SDRAM控制器读FIFO的读使能assign TFT_de   = dat_ack;                                   //区别显示区和消隐区dat_ack = ((hcount_r >= hdat_begin)&&(hcount_r < hdat_end))&&((vcount_r >= vdat_begin)&&(vcount_r < vdat_end))?1'b1:1'b0;    //数据、同步信号输出在显示区parameter   img_data_byte = img_h*img_v;              //总的数据数目,行列16位的,即比特数的两倍,下面计数的时候要<< 1

三、fifo输入输出位数更改
这个地方开始没有勾选输入输出位数不一致,出了问题,调了好一会儿。

然后串口传图这个地方是把图片转成RGB565比特流的形式,用的小梅哥提供的转换小程序,他是高低位不一致的

.Data_in({Rd_data[7:0],Rd_data[15:8]}),             //fifo是{高8,低8};Picture2Hex图片产生数据是{低8,高8},这个地方要进行一个调换

四、仿真

initialbeginRst_n     = 0;tx_en     = 0;tx_data   = 0;        #(`CLK_PERIOD*200+1)Rst_n     = 1;       //等待初始化完成@(posedge uart2sdram2tft.sdram.sdram_control.init_done)#2000;//串口传输400个数据repeat(Img_H*Img_V*2)begintx_en   = 1;tx_data = tx_data + 1;#(`CLK_PERIOD)tx_en   = 0;@(posedge tx_done);#20;end//等待图片可显示状态到来@(posedge uart2sdram2tft.disp_state);       //图片可显示状态行列都为0   @(posedge uart2sdram2tft.TFT_vs);           //TFT 场同步信号@(posedge uart2sdram2tft.TFT_de);#50000;$stop;end




五、实际上开发板传图


SDRAM学习(五)——串口传图相关推荐

  1. UART串口传图LCD显示----图像处理

    UART串口传图LCD显示----图像处理 设计介绍 首先需要准备一个txt文本,里面存储一个16进制200* 200的图片数据,通过串口调试助手使用串口传输一个200* 200图片,然后通过开发板上 ...

  2. 基于FPGA的串口传图SDRAM缓存VGA显示

    简介 在DE2开发板上,使用串口接收PC上的Qt程序发送的640*480彩色图片,以RGB565格式存入SDRAM,通过VGA显示在屏幕上. 开发板:DE2 开发工具:Quartus II 13.0 ...

  3. 基于FPGA的串口传图SRAM缓存VGA显示

    简介 在DE2开发板上使用串口接收PC发送的640*480分辨率灰度图,存入SRAM,通过VGA进行显示. 开发板:DE2 型号:EP2C35F672C6 开发工具:Quartus II 13.0 + ...

  4. python可视化学习五(抖动图与计数图)

    #########抖动的带状图与技数图########### ##04与05 import numpy as np import importlib as mpl import pandas as p ...

  5. 听歌学日语2 五十音图 たなは行

    听歌学日语--基础入门篇2 欢迎来到沪江日语网 听歌学日语 大家好我是小安  关于一些上期节目一些沪友们的问题 小安在这里也简单的回答一下大家 策划: 小安 蛋蛋老师 编辑后期: 小安 朗读: 蛋蛋老 ...

  6. DanDan日语学堂 入门篇01 五十音图(上)

    欢迎加入蛋蛋日语学堂博客园分站>> [hjp3]hjptype=song&player=7&file=http://file.hjbbs.com/hj-dandan/dan ...

  7. 日语学习之——五十音图

    前言 学习外语最难的是如何开始-->从哪儿入手-->如何入门-->循序渐进:本文介绍个人在学习外语时的摸索:以新东方日语网络课程为基础+京东阅读(微信阅读)+翻译软件(百度翻译/有道 ...

  8. 日语五十音图学习笔记

    看完银魂,四月是你的谎言,宫崎骏的系列动画,和新海诚新作你的名字之后,学日语的想法越来越强烈,日语取材于中国的草书,讲道理应该很容易学懂的.于是就开始了日语学习之旅-. 在网上搜索了各种资料,大部分稍 ...

  9. 学习数据结构--第五章:图(图的应用)

    第五章:图(图的应用) 1.最小生成树 生成树:连通图包含全部顶点的一个极小连通子图 这里需要注意的是是一个极小连通子图 上面第一个是一个连通图,右侧两个图实它的生成树,他们包含了全部顶点且是极小连通 ...

最新文章

  1. NDK JNI Android Studio开发与调试DEMO(三)(生成 .so 文件)
  2. C++ 退出双层for循环,解决 break、return、continue无法实现问题
  3. php 实例说明 socket通信机制
  4. 【转】使用 lsof 查找打开的文件
  5. 蓝桥杯 - 历届试题 - 日期问题
  6. quartz cron 每周一_quartz框架和关闭超时订单
  7. final阶段成员贡献分
  8. jQuery ajax 结合vue 获取豆瓣api 数据 ,jsonp解决跨域
  9. 电脑显示器尽快触摸化
  10. iOS-详解没有dSYM文件 如何解析iOS崩溃日志
  11. URDF文件导入Simscape后生成slx文件
  12. 扁平卡通风毕业论文答辩PPT模板
  13. WIN10合并磁盘扩展区是灰色的
  14. 远程重启h3c路由器_H3C路由器简单命令
  15. WebRTC收集网卡地址信息 源码剖析
  16. c语言素数筛法与分解素因数,质因数分解及代码:
  17. 关于Ajax请求服务器端的处理
  18. 《设计心理学》学习笔记之设计未来(第四册)
  19. 互联网晚报 | 10月17日 星期日 | 锤子论坛宣布下线;《长津湖》跻身中国影史票房前四;华为云专属月·行业深耕专项行动开启...
  20. 如何用panda3d写一个游戏

热门文章

  1. 微信群总有人发广告?用Python写一个自动化机器人消灭他
  2. PS轻松制作四种扁平化风格图标
  3. sql 闩锁 原因_如何识别和解决SQL Server中的热闩锁
  4. 有人说“星座对自己的运势预测和性格描述很准”。请谈读你的看法。 “星座热”的社会学解读
  5. uefi能重置系统吗_重装系统提示系统平台为uefi+gpt,无法进dos,请到pe中还原怎么办...
  6. 一招惊艳所有人,HTML制作网页成绩表
  7. Paravirtualization
  8. 无线键盘全国产化电子元件推荐方案
  9. 做数据分析如何从囚徒困境到合作的进化
  10. 计算机网络专业以后装网线,一种便于安装的计算机网络用网线安装盒的制作方法...