首页/文章/ 详情

FPGA有多简单?看看这几个项目,找工作不用愁

1年前浏览3625
工程师看海▼
  大家好,我是工程师看海,本文来自:刘皇叔

最近在知乎上看到一个关于深入学习FPGA的优秀回答,现分享如下,已取得刘皇叔授权。


下面几个小项目,只要有一个做出demo机,就会有人抢着要你。

问:

FPGA只会写SPI、串口和IIC,感觉毕业之后会找不到工作,请问下一步应该学什么?


答:

做实际的案例,给你建议三个方向:

1、做一个简易示波器

(1)双通道,8位分辨率,采样率50MSA/s(可调),采样深度250M。

(2)支持自动采样,触发采样,单次采样。

(3)数据处理和存储

    A. 增加带宽抑制,一般20MHz限制;

    B. 支持两通道的算数运算:加减乘除;

    C. 支持信号叠加平均;

    D. 屏幕截取存储到SD卡或者U盘,可以选择存屏幕图片、屏幕数据、内存数据。

(4)显示屏幕1080分辨率,用个显示器代替就行。

实现上面功能已经很了不起了,如果还不过瘾,增加如下功能:

    A. 支持通道FFT;

    B. 支持USB读取内存数据;

    C. 支持以太网采集;

    D. 16通道数字信号采集,分辨率1ns。


2、做一个多功能测控卡

(1)8通道模拟信号输入:16位AD分辨率,最大采样率1MHz,可调。带外触发采样。支持简单的数据预处理算法(平滑、抽取等)。

(2)2路模拟信号输出:8位DA输出,最大打点速率1M。可输出正弦波、方波、三角波、斜坡等常见函数波形。用户可以设置参数。

(3)8路数字输入,8路数字输出。

(4)数据可以通过以太网远程读取,远程控制。

实现上面功能已经很不错了,如果还嫌不过瘾,可以增加下面内容:

增加输入输出缓存

1)对于模拟输出AO0和AO1:分配128MB内存,用作自定义数据缓存区,用户可以预先编制波形,打点输出到通道上。例如以1MHz采样频率,输出到AO1通道,则最长可以编制最长128秒的数据。如果选择AO0和AO1,则可以预编制最长64秒的数据。

2)对于模拟输入:可以分配512M内存作为输入缓存,这样如果1个模拟输入通道1MHz采样,可以存储16位的数据128秒、2个通道同时采样可以存储数据64秒……

3)如果上面的输入输出采样频率可以修改,那就更棒了!采样频率降低一半,采样时长增加1倍。

3、做视频分割、拼接

(1)1个1080视频输入,3×3分割显示;

(2)多个摄像头读取数据,合并到一个屏幕显示;

(3)同屏异显。

上面的内容做完了,你已经很棒了,如果还想来点高端的,可以增加以下内容:

1)异常捕捉,如有人闯入区域、着火了等等。

2)增加智能调整帧率或降低清晰度算法,应对带宽有限。

3)活体特征识别,比如认出是一条狗、一个人、人是谁等等。大胆的想吧。

上面这3个小项目,只要有一个做出demo机,就会有人抢着要你。

本文来自:刘皇叔

来源:工程师看海
电源更多行业控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-10-11
最近编辑:1年前
工程师看海
硕士 签名征集中
获赞 131粉丝 40文章 251课程 2
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈