今天再接再励,字符在电脑上也显示出来了,这个字符和昨天的图片有点不一样,昨天显示的是一幅图片,可以行取模,然后将行地址赋给rom_addr,若要显示多幅图片,这个方法,还有待改进!今天要在电脑液晶屏上显示多个字符,可以列取模,然后,将列地址赋给rom_addr,然后,根据rom_data逐行判断点阵是否该点亮。还是,那句话其实大家只要把VGA的时序,、怎样取字模存入FPGA的ROM中,以及采取怎样的扫描方式在电脑上显示,这几个问题弄明白了,我想VGA接口也不是那么难!

//程序实现的功能:在电脑液晶屏上显示“大家来一起学习  FPGA”几个字符;64*640点阵module vga_zifu(clk,rst_n,hsync,vsync,vga_rgb);input       clk;           //系统时钟50MHZ;
input       rst_n;         //复位信号,低电平有效;output      hsync;       //列同步信号;
output      vsync;      //行同步信号;
output[2:0] vga_rgb;      //色彩信号;reg[9:0] x_cnt;        //行坐标;
always @ (posedge clk or negedge rst_n)beginif(!rst_n)x_cnt<=10'd0;else if(x_cnt==10'd665)x_cnt<=10'd0;else if(y_cnt==11'd1039)x_cnt<=x_cnt+1'b1;end reg [10:0] y_cnt;       //列坐标;
always @(posedge clk or negedge rst_n)beginif(!rst_n)y_cnt<=11'd0;else if(y_cnt==1039)y_cnt<=11'd0;else  y_cnt<=y_cnt+1'b1;endwire[9:0]   x_pos;         //有效显示区域坐标;
wire[10:0]  y_pos;assign  x_pos=x_cnt-10'd31;        // 显示的初始位置,相当于坐标(0,0);
assign  y_pos=y_cnt-11'd187;      wire valid;                //有效显示区;assign   valid=((x_cnt>=10'd31)&&(x_cnt<10'd631)&&(y_cnt>=11'd187)&&(y_cnt<11'd987));  reg vsync_r;             //行同步信号的产生;
always @ (posedge clk or negedge rst_n)beginif(!rst_n)vsync_r<=1'b1;else if(x_cnt==0)vsync_r<=1'b0;else if(x_cnt==6)vsync_r<=1'b1;else vsync_r<=vsync_r; end
assign  vsync=vsync_r;reg hsync_r;             //列同步信号的产生;
always @ (posedge clk or negedge rst_n)beginif(!rst_n)hsync_r<=1'b1;else if(y_cnt==0)hsync_r<=1'b0;else if(y_cnt==120)hsync_r<=1'b1;else hsync_r<=hsync_r;    endassign  hsync=hsync_r;reg [9:0]  rom_addr;          //64*640点阵,逐列取字模;
reg [63:0] rom_data;vga_hanzi    vga_hanzi_inst (.address ( rom_addr ),.clock ( clk ),.q ( rom_data ));always @(posedge clk or negedge rst_n)if(!rst_n) rom_addr <= 8'd0;else if(y_pos == 10'd55) rom_addr <= 8'd0;else rom_addr <= rom_addr+1'b1;wire dis_play = (x_pos >=10'd250) && (x_pos < 10'd315)               //字符显示区;&& (y_pos >=10'd58) && (y_pos < 10'd699);reg [2:0] vga_rgb_r;
always @ (posedge clk )beginif(!valid) vga_rgb_r<=3'b000;else if(dis_play)begin     if(rom_data[10'd314-x_pos])vga_rgb_r<=3'b100;                     else vga_rgb_r<=3'b001;endelsevga_rgb_r<=3'b001; end        assign  vga_rgb=vga_rgb_r;endmodule

转载于:https://www.cnblogs.com/tphust/archive/2012/07/18/2597984.html

VGA接口(四)字符相关推荐

  1. zynq7000 学习(二十四)VGA 接口原理分析和控制逻辑的实现学习

    VGA 接口原理分析和控制逻辑的实现学习 学习内容 本课程首先 进行 VGA 接口 的原理介绍,然后 编写逻辑 控制代码,最终进行 仿真和实现. 本课程 主要包括原理介绍和 设计实现 两个部分. 原理 ...

  2. 高速接口之VGA接口

    原理介绍 VGA(Video Graphics Array)即视频图形阵列,是IBM在1987年推出的使用模拟信号的一种视频传输标准,在当时具有分辨率高.显示速率快.颜色丰富等优点,在彩色显示器领域得 ...

  3. VGA接口复习笔记(原理,时序)VGA接口FPGA实现

    VGA接口复习笔记(原理,时序)VGA接口FPGA实现 一.显示器工作原理 显示器扫描方式分为逐行扫描和隔行扫描:逐行扫描是扫描从屏幕左上角一点开始,从左向右逐点扫描,每扫描完一行,电子束回到屏幕的左 ...

  4. DVI VGA 接口定义

    DVI(Digital Visual Interface),即数字视频接口.它是1998年9月,在Intel开发者论坛上成立的,由Silicon Image.Intel(英特尔).Compaq(康柏) ...

  5. VGA接口之显示彩色条

    本博文介绍下spartan-3e start kit board上的VGA接口的用法. 一.VGA简介 VGA(Video Graphics Array)是IBM于1987年提出的一个使用模拟信号的电 ...

  6. 电脑html接口显示器不亮,VGA接口连接显示器电脑点不亮

    我想把电脑与电视连接,我显卡上有15针VGA.DVI.S端子借接口,电视是数字电视,有15针VGA.S端子,我用S端子连接后图象不好,我想用VGA接口连接,怎么样效果好又经济又简单?我想用显示器玩游戏 ...

  7. 输入端口 HDMI接口,S端子,AV接口,VGA接口, 分量视频接口,TV输入,USB接口的对比

    VGA输入接口:VGA 接口采用非对称分布的15pin 连接方式,其工作原理:是将显存内以数字格式存储的图像( 帧) 信号在RAMDAC 里经过模拟调制成模拟高频信号,然后再输出到等离子成像,这样VG ...

  8. 如何用VGA接口乳法?

    1.什么是VGA接口 1.1.VGA接口介绍 VGA,英文全称"Video Graphics Array",译为视频图形阵列,是一种使用模拟信号进行视频传输的标准协议,由 IBM ...

  9. HDMI和VGA接口

    HDMI英文全称为:High Definition Multimedia Interface,它是一种全数字化视频和声音发送接口,可以发送未压缩的音频及视频信号. HDMI接口与VGA接口区别如下: ...

  10. VGA接口一根针折了

    注意!!要由 针 对照着 接口 看!!别看反了! VGA接头图如下: VGA接口,15根针,其对应接口定义如下: 1红基色 red 2 绿基色 green 3 蓝基色 blue 4 地址码 ID Bi ...

最新文章

  1. js常用阻止冒泡事件
  2. TextArea的滚动条看不到了,可能与height有关
  3. Appium录制脚本520-2
  4. 使用application log分析Fiori navigation target解析错误
  5. .NET 指南:使用可变数量的参数的成员
  6. VC预处理指令与宏定义的妙用
  7. python结构_科学网—Python与结构分析(1)---反应谱 - 潘超的博文
  8. 考研复试C程序设计基础
  9. 当下移动互联网的6个泡沫,快要破了!
  10. 《私募股权基金投资基础知识》---第二章
  11. VUE踩坑——this.$nextTick、头条小程序组件传值报错问题
  12. ubuntu18.04 cuda卸载及安装
  13. STM32 GPIOx_CRL/GPIOx_CRH 寄存器
  14. obiee12c ssl 启动服务报错BEA-149535BEA-149504
  15. 2022-2028全球水下激光扫描仪行业调研及趋势分析报告
  16. 在线怎么将pdf文件转换成word文档转换器使用
  17. Python 问题 SyntaxError: Non-ASCII character '\xe9' in file
  18. 数据标注平台-LabelStudio
  19. 英文文献(期刊/书籍)搜索及下载方法汇总
  20. Athentech Perfectly Clear Complete 3.6.3汉化版|一键智能清晰磨皮插件

热门文章

  1. Flutter功能 设置Container背景色
  2. JSP — 项目篇《I》【打印九九乘法表】
  3. 第一次JAVA课,第一次课堂考,课后感受
  4. python连接数据库--查询数据
  5. oracle操作字符串:拼接、替换、截取、查找、长度、判断
  6. 夺命雷公狗---node.js---7fs模块初步
  7. WINDBG常用方法
  8. 前台跨站点获取session
  9. angularjs自动加载和手动加载
  10. Ctrl+F5为强制刷新