
基于fpga的嵌入式图像处理
文章平均质量分 68
专栏主要介绍了fpga基础功能、python图像处理方法、verilog图像算法加速实现和验证、fpga图像系统处理和实现这几个部分。通过学习本专栏,同学们可以真正掌握图像算法、学会用verilog加速图像算法、用fpga搭建图像处理的框架和平台,实现理论和实践的有机结合,而不只是空洞的理论方法。
嵌入式-老费
计算机科班出身,09年研究生毕业即投入嵌入式开发工作,欢迎付费咨询,微信联系:xiaoxing_fei。
展开
-
基于fpga的嵌入式图像处理(总结篇)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 做图像的同学很多,大部分都是用matlab、c、python。做fpga的也不少,不过大部分都是做运动控制、数据通讯、或者ic验证等工作的。实际开发中,用fpga做图像加速的有,但是不多。正是基于对图像和fpga的好奇,编写了这一系列的blog,希望对有志于这个方向学习的同学提供一点帮助。 整个系列分成四个部分,第一部分主要讲解基本的fpga操作;第二部分主要是利用原创 2023-02-09 20:37:24 · 4956 阅读 · 0 评论 -
fpga实操训练(按键输入)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在fpga上面进行按键的输入,要比stm32编写按键输入要容易的多。这里面最主要的工作就是把led输出和按键输入绑定在一起。当然,因为按键抖动的关系,需要进行一定的节拍,再将信号传递给led。原创 2022-12-12 22:08:11 · 1832 阅读 · 0 评论 -
fpga实操训练(基础)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前我们虽然说过怎么编写verilog代码,怎么用iverilog软件和gtkwave软件进行仿真验证,但是一直没有说明如何在真实的板子上进行开发。今天正好来试一下。因为两年前买了ax301开发板,使用的是altera fpga,所以这些测试都是以altera进行讲解的。1、准备quartus软件 每个品牌的fpga都有自己的eda软件。比如altera,就原创 2022-12-11 14:09:55 · 2142 阅读 · 0 评论 -
上位机图像处理和嵌入式模块部署(qmacvisual测量标定)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在机器视觉中,测量是很重要的一个环节。如果是简单的定位,可能精度要求并不那么严格。但是如果是对产品进行QA测量,需要精确到0.1mm,甚至是0.05mm这样的精度,那就需要对camera进行好好标定了才能使用。所谓的标定,就是判断camera成像当中,x轴像素的宽度,以及y轴像素的宽度。原创 2024-03-30 09:47:23 · 274 阅读 · 0 评论 -
fpga图像处理(腐蚀和膨胀)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 腐蚀和膨胀是图像处理较常用的两种方法。两种方法针对的都是白色区域。比如说,白色区域变多,这叫膨胀;而白色区域减少,这叫腐蚀。这是需要注意的地方。如果整个图像是白底黑图,那么可以先转换成黑底白图,等腐蚀和膨胀做好了,再反转回去就可以了。和cpu处理图像反转不同的是,fpga处理图像反转就是多一个clock的事情。 除此之外,腐蚀和膨胀是开运算、闭运算的基础。开运算被定原创 2023-02-09 08:15:55 · 1117 阅读 · 0 评论 -
fpga图像处理(laplacian算子)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 之前谈到边缘提取的时候,共谈到了三种算子计算。一种是prewitt算子,一种是sobel算子,另外一种就是laplacian算子。鉴于sobel算子已经讲过了,prewitt算子和sobel算子又非常接近,所以今天讲一下剩下来的laplacian算子。原创 2023-02-08 20:51:59 · 550 阅读 · 0 评论 -
fpga图像处理(均值滤波)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 均值滤波是图像处理中常用的一种方法。基本原理就是利用周围像素的平均值来代替当前点的像素值。方法主要有两种,一种是[010;101;010]这个算子;还有一种是[111;101;111]这个算子。如果是前面一个算子,那么像素之和直接除以4,即向右移动两位即可;如果是后面一种,则处理8,像素之和向右移动三位即可。我们以后一种为例,滤波后的效果应该是这样的,原创 2023-02-08 08:28:58 · 615 阅读 · 0 评论 -
fpga图像处理(对比度增强)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 所谓的对比度增强,其实就是对像素数值进行重新映射,明暗之间的区别要拉大。这里面典型的增强方法有指数变换和gamma变换。如果是用cpu写代码,那么可以直接用函数来进行计算。但是如果用fpga来处理,就不能这么处理,一般都是用映射表的方式来解决的。 所谓的映射表,其实就是提前把数值计算好,等到遍历到对应的数值时,直接映射为关联的像素值即可。下图就是gamma映射后的效果原创 2023-02-07 20:42:19 · 1584 阅读 · 0 评论 -
fpga图像处理(图像取反)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 对于cpu来说,图像取反不是很复杂的事情。一般来说,就是在图像进行灰度计算后,依次对每一行、每一列的元素进行取反的工作。这个工作的难点不在于算法,而在于算力。有人也许会说,这样的计算对于cpu来说不算是难事。但经常做图像算法的同学就知道了,很多算法的预处理,就是由这样一件一件不起眼的小事构成的,最后消耗了cpu很多的算力。原创 2023-02-06 20:38:45 · 724 阅读 · 0 评论 -
fpga图像处理(sobel算子)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 关于sobel算子,前面已经讲过计算方法了。一种是上下的sobel算子,一种是左右的sobel算子,两者都相当于prewitt算子的进一步拓展。当然,之前的实现方法都是基于python和opencv实现的,今天来谈谈怎么用fpga来实现,首先来看下效果,原创 2023-02-05 22:02:03 · 855 阅读 · 0 评论 -
fpga图像处理(二值化)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在解决了fpga对图像进行二值化处理的问题后,下面一个比较容易操作的问题就是图像二值化。前面我们其实讨论过,二值化究竟是一个什么样的处理过程。简单来说,就是对于一个灰度图像来说,如果指定的像素点大于某一个数值,那么该点设置为255;反之则设置为0。这就是图像二值化的由来。 处理效果如下所示,原创 2023-02-05 11:08:58 · 793 阅读 · 0 评论 -
fpga图像处理(灰度化)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们谈到过灰度图像的处理,不过当时是使用python实现的。这当中也用verilog编写过灰度代码,不过是在testbench里面实现的,如果需要把这个代码运行在fpga上面,那一般都是用YCbCr的方法提取的,公式如下所示 Y = 0.183R + 0.614G + 0.062B + 16 CB = -0.101R - 0.338G + 0.439B + 1原创 2023-02-05 10:20:56 · 1064 阅读 · 0 评论 -
fpga图像处理(基于sd卡图像读取和显示)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 除了cmos摄像头之外,还有一种图像读取和显示的办法,那就是基于sd卡的图像处理方法。相比较需要单独购买一个cmos摄像头,这种方法只需要把micro sd卡格式化成exFat系统,把bmp文件保存到sd卡即可。这样的话,fpga系统就可以从sd卡搜索到bmp文件,写入到sdram里面,进而lcd模块把图片从sdram读取出来,显示到液晶屏幕上。原创 2023-02-04 11:35:12 · 3218 阅读 · 0 评论 -
fpga图像处理(基于camera的图像读取和显示)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 市面上目前很多的fpga开发板都有camera到lcd的显示demo。处理流程也是很相似的。一般的流程都是fpga首先初始化cmos,接着就是把数据从cmos读出来存储到sdram里面,显示模块再从sdram里面把数据读出来,显示到lcd上面。原创 2023-02-04 10:05:33 · 4118 阅读 · 0 评论 -
verilog图像算法实现和仿真(代码与实践)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 这里的代码指的是verilog代码,而不是之前的python代码。因为verilog处理的是数据,所以之前我们也谈到过,如果需要用verilog处理图像数据,需要先用python把图像变成文本文件,等到verilog处理结束后,再用python把文本文件转换成图像数据。需要的同学可以在订阅专栏后,和作者私信联系获取verilog仿真代码和文件。 目前需要处理的每一个原创 2023-02-03 20:37:38 · 1099 阅读 · 0 评论 -
verilog图像算法实现和仿真(并行处理方法)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 图像处理中,verilog的并行处理是最神奇的。我想,这或许也是verilog图像处理的优势之处。那么,verilog一般又是怎么实现并行的呢?假设在fpga上面图像需要经过这几个步骤来处理, 这是一个典型的图像处理流程,从摘取感兴趣区域,到灰化、降噪、sobel、二值化、膨胀、腐蚀,都是标准的图像处理流程。cpu来处理的话,任何时候都只有一个像素处于一个状态原创 2023-02-01 23:33:21 · 1048 阅读 · 0 评论 -
verilog图像算法实现与仿真(流程和实现)
【声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们谈到了fpga,谈到了用python+cv2实现图像算法,直到现在才算是慢慢进入了正题。毕竟用verilog实现图像算法,才是我们真正想要做的事情。而对图像的加速和实时处理,也只有verilog+fpga才能帮助我们完成。 目前网上能找到的verilog图像算法仿真的内容不多,要么就是需要安装matab、modelsim这些商用软件,要么就是没有细节实现,不原创 2023-01-30 22:22:22 · 2425 阅读 · 0 评论 -
python图像处理(轮廓提取)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 对于fpga来说,大部分轮廓提取算法都不是很适合在fpga上面完成。比较适合复杂算法运行的还是cpu。但是对一个项目来说,轮廓提取却是图像处理很重要的一个环节。提取了轮廓,意味着图像得到了很好的分割,对进一步的识别和判断都是有好处的。 以lena图像为例,一般轮廓提取是这个样子的,原创 2023-01-30 21:17:41 · 2527 阅读 · 0 评论 -
python图像处理(开运算和闭运算)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面说过了图像膨胀和腐蚀,对于区域分割错误,或者希望区域分割开来这两种情况,都可以用对应的方法来解决。那么这个时候,有些同学也许会问,既然膨胀和腐蚀已经解决了问题,为什么还要引入开运算和闭运算。 所谓的开运算,其实就是先腐蚀,再膨胀。而闭运算则为,先膨胀,再腐蚀。那为什么要把两个操作连在一起做呢?就我个人的理解,主要还是任何单一操作其实都已经改变了图像本来的属性,对原创 2023-01-30 08:15:46 · 788 阅读 · 0 评论 -
python图像处理(腐蚀和膨胀)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 经过二值化的图像,似乎可以马上就可以进行轮廓查找了。但事实上并不是这样的。真实场景中,图像会出现各种各样的噪声。比如说,你想分开的区域结果被合并在了一起,你想合并的区域结果被分开了。举个图说明一下,原创 2023-01-29 21:14:23 · 838 阅读 · 0 评论 -
python图像处理(二值化)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 边缘检测之后,一般需要对图像进行二值化处理。简单地说,所谓的二值化,就是小于阈值的像素点全部设置为0,也就是黑色点;大于阈值的点,全部设置为255,逻辑还是比较简单的。大家也许会说,为什么要做这个操作?主要还是为了对相似的像素点进行归类使用。 我们不妨挑一个像素值,看看二值化后的lena图像时什么样子的,原创 2023-01-28 23:26:17 · 2155 阅读 · 0 评论 -
python图像处理(laplacian算子)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 和之前的prewitt算子、sobel算子不同,laplacian算子更适合检测一些孤立点、短线段的边缘。因此,它对噪声比较敏感,输入的图像一定要做好噪声的处理工作。同时,laplacian算子设计比较精巧,之前看到的算子都是利用一侧的像素点减去另外一侧的像素点,利用微分数值代替像素值。laplacian算子则不同,它是利用内部的像素点和周围的像素点做微分计算,两者之间的差值赋值给中原创 2023-01-28 22:57:08 · 484 阅读 · 0 评论 -
python图像处理(sobel算子)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 sobel算子和prewitt算子差不多,所以大家可以把这两个算子一起进行学习,也方便记忆。两者最大的不同就是权重不同。还记得上一章说过,如果需要检测直线的左侧和右侧边缘的话,那么给出的算子是[-1,0,1;-1,0,1;-1,0,1]。这个时候,大家可以试想一下,如果我们修改下中心点两侧像素的权重,是不是就可以构成一个新的算子了。从物理意义上说,这种算子就说明,它更相信同一行左右两原创 2023-01-28 22:21:45 · 610 阅读 · 0 评论 -
python图像处理(prewitt算子)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面几章谈到了灰化、增强、旋转、滤波等内容,今天来谈一谈边缘检测。边缘检测是图像处理的重要内容。很多图像分割、图像识别的前一步就是边缘检测。某种意义上说,边缘检测的好坏决定了图像分割的成败。 抛开今天的prewitt算子不谈,大家可以思考一下,怎么在一个图像中把一条竖线的边缘识别出来?或者换句话说,一条竖线,它的边缘有什么特征?原创 2023-01-28 21:48:25 · 863 阅读 · 0 评论 -
python图像处理(高斯滤波)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在谈高斯滤波之前,我们不妨回顾一下之前谈到的均值滤波和中值滤波。均值滤波,就是对像素点以及周围的8个点计算平均值,然后赋值给新像素点。而中值滤波,则是对像素点及周围的8个点进行排序,选择最中间的那个点赋值给新像素点。那什么是高斯滤波呢?可以观察下均值滤波中,当时是对9个点进行平均操作,这样求解下来的就是平均值。试想一下,如果每一个像素点的权重不一样呢? 高斯滤波正是原创 2023-01-27 23:04:07 · 520 阅读 · 0 评论 -
python图像处理(中值滤波)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 中值滤波和均值滤波的区别,有点像中位数收入和平均收入的区别。比如有三个人,年收入分别是10万、1万和1千,那么他们的平均收入就是(10+1+0.1)/3,平均数是3.3万左右,但是中位数收入其实就是1万。通过这个例子可以看的很明显,如果贫富差距过大,平均收入会把高收入和低收入做均值计算,这样出来的数据的确很漂亮,但是却不符合事实。而如果采用中位数收入1万,则可以相对比较准确地获得真实原创 2023-01-27 21:30:43 · 1468 阅读 · 0 评论 -
python图像处理(均值滤波)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在图像处理过程中,一个绕不开的话题就是噪声。其中比较经典的就是椒盐噪声。为了降低这些噪声对最终图像处理效果的影响,人们想了很多的方法,比如说均值滤波、中值滤波、高斯滤波等等。和其他滤波方法相比较,均值滤波是直觉上面比较容易想得到的方法。 所谓均值滤波,就是用一个区域内的平均值来代替当前灰度数值,这样至少可以降低噪声给图像处理造成的影响,我们以一个5*5滤波为例,在对原创 2023-01-27 20:39:22 · 4448 阅读 · 1 评论 -
python图像处理(直方图增强)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面几篇文章谈到了对图像的处理,但是它们大多数都是对图像像素进行一些时空的转换,本身像素的内容并没有发生转变。比如旋转,镜像、移动、放大、缩小等等,像素还是这些像素,只是位置发生了改变,像素之间的关系其实没有发生改变。从这篇文章开始,我们开始对像素进行直接的修改操作,直方图就是其中的一种。 实际生活中,由于曝光的不足,我们拍摄的图片常常偏暗,因此需要对原有的图像进行原创 2023-01-27 15:46:06 · 800 阅读 · 0 评论 -
python图像处理(图像缩放)
图像缩放也是isp处理的一个基本功能。现在的camera像素越来越大,但是显示设备的分辨率是一定的,如果想把图像显示在显示器或者lcd上面,那就要符合对应显示设备的分辨率。一般来说,现在默认hdmi的分辨率是1920*1080,vga的分辨率是1024*768,4英寸的lcd屏幕的分辨率是480*272,所以同一幅图片要先是在这么多介质上面,图像的缩放是很有必要的。 缩小一般比较容易理解,就是将高分辨率的图像压缩成低分辨率的图像。那么图像的扩展是什么意思呢?我们知道从信原创 2023-01-27 10:49:10 · 6873 阅读 · 3 评论 -
python图像处理(图像平移)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 图像平移也是较为常见的一种处理方法。按照平移的方向,大约可以分成四种。第一种,向右向下移动;第二种,向右向上移动;第三种,向左向下移动;第四种,向左向上移动。不妨以向右向下移动来举例,移动后,左侧和上侧留下来的像素会被白色填满,而整个图像会往右下角偏移y和x个像素点,如下图所示,原创 2023-01-26 23:24:28 · 1736 阅读 · 0 评论 -
python图像处理(旋转)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 除了图像镜像之外,另外一个经常遇到的、差不多的功能就是图像旋转。旋转分成顺时针旋转和逆时针旋转两种情况。但是对于isp来说,一般旋转的角度都是提前设置好的,比如只支持90、180、270度旋转,并不支持其他角度的旋转。 在此,我们可以先看一下旋转的效果是什么样的,如下图所示。此外因为图像的长和宽本来就是512,所以旋转之后长和宽本身没有改变。原创 2023-01-26 21:58:57 · 2526 阅读 · 0 评论 -
python图像处理(图像镜像)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 图像镜像处理是图像处理中的一个常见动作。熟悉isp的同学,应该对镜像这个做法并不陌生。所谓的图像镜像,主要有两种。一种是左右镜像,一种是上下镜像。当然,不管是哪种镜像,图像的大小其实都没有发生改变,也就是说长和宽还是原来的数值。 以上下反转为例,反转后的效果是这样的。图像看上去稍微有点别扭,但至少说明我们的处理已经达到了效果,原创 2023-01-26 11:05:43 · 610 阅读 · 0 评论 -
python图像处理(灰度化)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 我们拿到的图像一般都是彩色图像,但是如果需要对图像进行处理,一般处理的是灰度图像。这样虽然流失掉了彩色信息,但是对最终处理的结果一般影响不大。当然,如果需要依靠颜色来识别特定的物体和形状,这就是另外一回事了。 让图像灰度化有很多的方法,主要有这么四种:1)直接调用opencv里面的api函数,这个比较快捷,缺点就是不知道实现的细节;2)使用平均值法计算灰度值;3)使原创 2023-01-26 10:22:52 · 2034 阅读 · 0 评论 -
python图像处理(opencv入门)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们讨论了fpga的基本操作,这些都是作为整个图像处理的基础部分进行学习的,本质上还是希望用fpga来对部分算法进行加速处理。当然,fpga实现的只是一部分算法,并不是所有的算法都适合用fpga来加速。为了学习这些算法,我们可以利用python语言和opencv库来学习这些算法。等到这些算法都学习完毕之后,就可以编写verilog代码来实现这些算法了。 学习过《原创 2023-01-25 23:51:37 · 1020 阅读 · 2 评论 -
fpga实操训练(fpga和cpu之间的配合)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 cpu和fpga之间,各有各的优势,cpu开发比较快捷,程序员比较好找;fpga对于基础运算效率高,但是找人不好找。实际产品的开发中,一般cpu负责需要接口定义和个性化定制的地方,而fpga多用于特定方法的加速、特定接口的处理。还是以图像处理为例,通常我们拿到的开发板为例。一般开发者会告诉我们,图像可以直接从cmos模块获取,经过fpga处理结束后,直接通过lcd显示出来即可。但是,原创 2023-01-25 13:22:20 · 2234 阅读 · 1 评论 -
fpga实操训练(系统开发和硬件接口)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 相信很多学习fpga的同学都会有这样的一个感受,一开始fpga学习还比较简单,但是一旦涉及到呼吸灯、uart、spi、iic、ddr2后面就会越来越难。遇到这样的困难之后,学习的激情一下子少了很多,甚至于说就此放弃fpga,这都是很常见的情况。究其原因,主要还是学习的门槛过高,对自己的要求过高。要知道,spi+ic手册、iic+ic手册、ddr2、camera这每一个接口后面都有很多原创 2023-01-24 17:44:19 · 1858 阅读 · 0 评论 -
fpga实操训练(一个典型的fpga系统)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 对于刚学习fpga的同学来说,很多人可能一开始并不了解,一个典型的fpga系统应该是什么样子的。今天正好来熟悉一下。此外,我们也可以通过这个系统,从另外一个角度学习下,为什么要学习uart、spi、iic这些总线接口。 今天我们谈到的系统是一个典型的fpga图像处理系统。相比较soc而言,fpga处理图像的优势是非常明显的。处理的速度非常快,整个流程可以按照流水线的原创 2023-01-23 09:58:35 · 1403 阅读 · 0 评论 -
fpga实操训练(lcd字符显示)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 用fpga编写屏幕显示,和c语言编写有很大的不同。用c语言开发,很大程度上是遵循soc ip提供的规范进行编写。而用fpga开发的话,则需要考虑不同信号的时序关系。但是,用fpga开发也有它自己的优势,那就是流水线和并行运行。 举个例子来说,处理图像的时候,如果是c语言,只能每一个像素都处理好了,才能进行接着后面的运算。但是fpga不需要,它可以边接收边处理,流水线原创 2023-01-22 10:29:48 · 2623 阅读 · 0 评论 -
fpga实操训练(lcd测试)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们测试过vga输出,当时是找了一个老式的显示器来完成的,也就是本身自带vga接口的显示器。但是,现在市面上大部分显示器都是默认支持hdmi接口的。所以说,如果真的想用fpga测试vga输出的话,还需要购买一个vga转hdmi的转换器,这对于我们测试来说确实不是很方便。 为了解决这个问题,能想到的另外一个处理办法,就是用lcd输出代替vga输出。过程也不复杂,做原创 2023-01-19 11:06:11 · 2035 阅读 · 0 评论 -
fpga实操训练(从模块到系统开发)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们学习了fpga的一些基本操作,熟悉了这些操作,基本上说fpga已经入门了。但是距离我们用fpga开发产品,这中间还有一些距离。这就好比,掌握了c语言的语法后,还不能立马来开发软件,还需要掌握数据库编程、qt编程、网络编程、多线程编程、文件读写、内存分配等等,如果涉及到业务层面,还有必要了解客户的作业流程,这样才能开发出符合客户需要的软件。fpga的学习过程也是一样,掌握了le原创 2023-01-01 17:15:45 · 699 阅读 · 2 评论