当前位置: 首页 > news >正文

第十章 VGA显示圆

FPGA至简设计实例


目录

FPGA至简设计实例

前言

一、项目背景

二、设计目标

三、设计实现

1. 顶层接口

2. 信号设计

三、信号定义

四、总结代码

五、综合上板

总结


前言


一、项目背景

        在一个平面内,一动点以一定点为中心,以一定长度为距离旋转一周所形成的封闭曲线叫做圆, 如下图所示,同时其也可以理解为在同一平面内到定点距离为定长的点的集合。圆有无数个点,可以 表示为集合{M||MO|=r}。

        

        在平面直角坐标系中,以点O(a,b)为圆心,以r为半径的圆的标准方程是 𝑥−𝑎 2+ 𝑦−𝑏 2= 𝑟2。同理,以原点为圆心,半径为r(r>0)的圆的标准方程为𝑥2+𝑦2=𝑟2。

        举个例子,在平面直角坐标系中以坐标(4,4)为圆心画一个半径为2的圆,如下图所示。由于 圆的定义即到圆心的距离相等点的集合,因此该坐标系中点到圆心的距离公式为 𝑥−4 2+ 𝑦−4 2。 如果想要判断一点是否在圆内,可以将该点到圆心的距离与圆的半径进行比较,这一距离如果大于半 径该点即在圆外,如果小于半径该点即在圆内。

        如下图中的红色点所示,其坐标为(3,5),已知圆心坐标为(4,4),因此红点到圆心的距离则 为 3−4 2+ 5−4 2= 2。可知( 2)²=2,半径r²=2²=4,由于24,即蓝点到圆心的距离大于半径,因此可以判断蓝点为圆外一点。

        可以看出:不论是红点还是蓝点到圆心的距离均需要进行开根号这一步骤,这样会大大增加对比 数字大小的难度,因此在实际使用中,可以将距离的平方与半径的平方进行对比。即 𝑥−𝑎 2+ 𝑦−𝑏 2≤𝑟2时点在圆上, 𝑥−𝑎 2+ 𝑦−𝑏 2≥𝑟2时,点在圆外。本次工程将利用这一公式完成设 计。

二、设计目标

        掌握了圆的产生条件后来进行本次工程的设计。上一章中本书学习了通过 VGA 显示矩阵图像, 这一章将在上一章的基础上进行难度提升,学习通过VGA显示颜色的设计。按照至简设计法的思路, 在进行设计之前首先应明确设计目标。明确了设计目标后,后续的每一步操作就是围绕设计目标进行 展开的。如果没有牢记设计目标就开始动手进行实践操作,最终的作品也是东拼西凑的产物,一旦在 设计过程中出现了问题就需要花费大量的精力进行寻找修复。只有在开始学习时就养成良好的设计习 惯,才能在后续的职业生涯中受益。因此建议一定要弄懂设计目标再进行后面部分的学习。

        本设计需要通过VGA连接线将显示器和开发板进行连接,FPGA在连接成功后产生640*480分 辨率,刷新频率为60Hz的VGA时序,使得显示器产生图像其中图像中间有一个直径为100像素的 圆。圆内显示颜色为绿色,圆外显示颜色是白色,其效果图如图3.10-3所示。

        显示器一般都具有分辨率自适应功能,无须设置就能识别不同分辨率的图像。本设计的相应参数 参见表3.10-1中的第一行,这里VGA常用分辨率的对应时序参数并不是随意设定的,而是国际通用 标准,每个关于VGA的设计工程都需要遵守这一标准。其中,行的单位为“基准时钟”,即频率为 25MHz、周期为40ns的时钟,列的单位则为“行”,请读者朋友们一定区分好。

三、设计实现

        确定了设计目标后,本书会逐步分析讲解工程的制作步骤。建议初学者认真学习每一步,因为这 里分享给同学们的不仅仅是案例,还有在操作过程中的一些设计理念及原理。当然本书也会分享一些 至简设计法的设计技巧,最终希望每一位读者都可以具备独立设计工程的能力。当然已经拥有扎实的 功底、只是想要根据步骤完成项目的读者朋友们可以跳过此部分,直接进入第五节中的简略版操作步 骤分享。

1. 顶层接口

        新建目录&#

相关文章:

  • # 使用 OpenCV 和神经网络实现图像风格化
  • AISEO中的JSON 如何部署?
  • 为 MinIO AIStor 引入模型上下文协议(MCP)服务器
  • kafka副本同步时HW和LEO
  • Linux驱动开发 中断处理
  • IP-PBX(IP专用交换机)
  • 《HarmonyOS Next开发实战:从零构建响应式Todo应用的基石》
  • 车载以太网网络测试-25【SOME/IP-报文格式-1】
  • RabbitMQ简单介绍和安装
  • OkHttp的拦截器是如何工作的?
  • 【Django】教程-7-分页,默认使用django的
  • LiteDB 数据存储与检索效率优化的最佳实践指导
  • Linux内核内存管理 ARM32页表映射流程和案例分享
  • 华三交换机配置常用命令
  • 【nvidia】Windows 双 A6000 显卡双显示器驱动更新问题修复
  • excel时间与时间戳互转,excel纯数字sql转为时间,日期函数
  • 从压测到选型:如何通过压力测试确定高防需求?
  • 软件测试 - 测试分类篇
  • 使用Java ApI 实现Hadoop文件上传
  • Navicat导出mysql数据库表结构说明到excel、word,单表导出方式记录
  • 开饰品店网站建设预算/seo免费资源大全
  • 网页设计实训报告不足/湖南关键词优化首选
  • 门户网站宣传方案/十大技能培训机构排名
  • 廊坊网站建设佛山厂商/河北百度seo点击软件
  • 太原做网站个人/谷歌浏览器下载手机版中文
  • 免费书画网站模板/福州外包seo公司