基本信息
规则
视频课程
案例
内容介绍
软件 & 硬件
元器件
超低功耗FPGA、5280 LUTs, 1024kbit SPRAM,1.2V、48-pin QFN (7 x 7 mm)
ST的Arm Cortex-M0+微控制器,有64 KB Flash, 8KB RAM, 64MHz CPU, 2xUSART, timers, ADC, comm. I/F, 1.7-3.6V
Arm Cortex-M0,64kB flash, 12kB SRAM, HVQFN32 package
300mA的线性稳压器LDO,并有使能和自动放电的功能
重力感应传感器 - 3-Axis Orientation/Motion Detection Sensor
软件
Verilog HDL是一种硬件描述语言,用于设计和归档电子系统。
工具
Lattice的FPGA开发环境,支持Windows/Linux操作系统,支持ICE40系列器件的开发。
ST公司的图形化工具,可以非常方便地配置STM32微控制器和微处理器,以及相应的初始化C代码的生成。
平台
基于Lattice的iCE40UP5K FPGA和STM32G031 MCU,板载LPC11U35下载器,可以通过USB-C接口进行FPGA的配置和虚拟串口对STM32G031的配置,支持RISC-V软核的移植以及Arduino扩展板的使用
采用3PEAKS的3PA1030高速ADC芯片制作的16管脚的ADC模块,搭配FPGA可以做高速数据采集
基于3Peaks的3PD5651制作的高速DAC模块,搭配FPGA逻辑即可实现DDS任意波形产生功能,输出幅度为2Vpp。
物料清单
附件
-
UP5K_EVA_SCH.pdf
扩展板原理图
-
ice40_STM32+ADC+DAC_Schematic.zip
核心板+ADC+DAC原理图
-
代码文件.zip
含测试代码
2023年寒假练活动已结束,板卡已恢复原价,并不赠送数据线。
本页包含平台所需完成的任务,活动时间,活动规则和电子森林项目提交使用说明。
购买本平台板卡所需完成的项目如下(任选其一完成即可,项目均为单人项目,不支持团队合作完成,完成项目必须用上所购板卡):
项目1 - 单通道示波器/OLED显示
具体要求:
-
通过板上高速ADC(10bits/最高50Msps)采集模拟信号,并能够在OLED上显示出波形以及频率/幅度参数
-
被采集信号的频率范围为DC - 1MHz
-
如没有外接信号源,可以通过板上的高速DAC产生任意波形或通过GPIO产生频率可调、占空比可调的PWM波形作为测试信号
-
按键/旋转编码器可以控制波形的时间和幅度的缩放,按键的功能可以自行定义
项目2 - 单通道示波器/PC页面显示
具体要求:
-
通过板上高速ADC采集模拟信号,将采集到的数据通过串口发送到PC上,通过PC上的界面进行显示
-
被采集信号的频率范围为DC - 1MHz
-
PC上的界面显示可以使用Matlab、LabView或开源的串口调试工具
-
如没有外接信号源,可以通过板上的高速DAC产生任意波形或通过GPIO产生频率可调、占空比可调的PWM波形作为测试信号
-
按键/旋转编码器可以控制波形的时间和幅度的缩放,按键的功能可以自行定义
项目3 - DDS任意波形发生器/本地控制
具体要求:
-
通过板上的高速DAC(10bits/最高125Msps)配合FPGA内部DDS的逻辑(最高48Msps),生成波形可调(正弦波、三角波、方波)、频率可调(DC-)、幅度可调的波形
- 生成模拟信号的频率范围为DC-5MHz,调节精度为1Hz
- 生成模拟信号的幅度为最大1Vpp,调节范围为0.1V-1V
- 在OLED上显示当前波形的形状、波形的频率以及幅度
- 利用板上旋转编码器和按键能够对波形进行切换、进行参数调节
项目4 - DDS任意波形发生器/PC远程控制
具体要求:
-
通过板上的高速DAC(10bits/125Msps)配合FPGA内部DDS的逻辑,生成波形可调(正弦波、三角波、方波)、频率可调、幅度可调的波形
- 生成模拟信号的频率范围为DC-5MHz,调节精度为1Hz
- 生成模拟信号的幅度为最大1Vpp,调节范围为0.1V-1V
- 通过UART同PC连接,在PC上可以使用Matlab、Labview或其它调试工具来控制波形的切换、参数的改变
项目5 - 频率计(以下任选其一)
-
利用板上的高速比较器和STM32代码实现频率计的功能,并在OLED屏幕上显示出被测信号的频率
- 完成1997年全国大学生电子设计竞赛的B题
- 设计并制作一台数字显示的简易频率计
- 具体要求参照电赛题目的要求
- 完成2015年全国大学生电子设计竞赛的F题
- 设计并制作一台闸门时间为1s的数字频率计
- 具体要求参照电赛题目的要求
项目6 - RISC-V软核的设计或移植
-
设计或移植一款RISC-V软核(网上有很多)
-
能够用流水灯的方式点亮核心板上的LED
活动流程及时间安排
-
购买:活动参与者需先从硬禾学堂购买板卡(任选其一或多)参加活动,从活动上线日—2023/3/15前均可购买,购买即参加。
-
发货:于2023/1/3开始发货,受疫情影响,请填写一定能收到货的地址。
- 直播&答疑:待同学们收到板卡之后,硬禾官方将采用每个板卡2场直播的方式教大家上手,并有技术交流群一起讨论学习,直播前将在群内通知。
-
活动时间:从收到板卡日起,活动参与者需于2023/3/15 24:00前实现规定的项目,并按照规则将项目报告上传到电子森林,逾期提交者无效。
-
审核时间:硬禾学堂将于2023/4/10前审核完毕并邮件告知审核通过者。
-
返款时间:审核结束之后,将于2023/4/30前完成返款(原路退回)。
活动福利:
-
在硬禾学堂购买板卡且项目通过审核的同学,将退还购买板卡金额,板卡不回收,优秀的项目将给予一定的奖励,并在硬禾学堂微信公众号上展示
-
审核通过的项目均可获得活动证书和硬禾专属纪念章,拥有的纪念章越多,可兑换的奖品越丰厚
-
优秀的同学硬禾将给予带薪实习面试的机会(应届毕业生/研究生均可,需在硬禾持续工作6个月以上)
-
向知名企业内推实习机会(上海、苏州、深圳、北京)
以下内容包含2023年寒假在家一起练材料提交说明以及电子森林项目网站使用说明(请认真查阅)。
“2023年寒假在家一起练”材料提交及方式
一、完成项目之后在电子森林项目网站需提交以下材料
上传之前请先使用手机号注册电子森林账号:https://www.eetree.cn/,项目标题请命名为:用/基于xxx实现/完成/设计/制作xxx
1. 所参加活动板卡的3-5分钟短视频(要求横屏且1080p,放于“视频代码”处)
- 简短的自我介绍
- 硬件介绍
- 项目设计思路
- 项目实现功能(重要的代码介绍和实物功能展示)
注:视频太短(仅几十秒),视频无板卡演示效果,拍摄不清晰,镜头太晃均不合格。
2. 项目总结报告(放于项目的“描述”处)
- 项目描述(项目介绍、设计思路、框图和软件流程图(若是FPGA平台,请截取FPGA资源占用报告放在项目中)、简单的硬件介绍、实现的功能及图片展示、主要代码片段及说明、遇到的主要难题及解决方法、未来的计划或建议等,需达到除代码之外的约1500字左右)
项目案例参考:https://www.eetree.cn/project/detail/167,https://www.eetree.cn/project/detail/498
- 可编译下载的代码(放在项目的附件,用于验证)
注:项目的附件中没有上传源代码均被退回,抄袭的项目不予退款。
二、项目提交后需提交以下材料到training@eetree.cn 邮箱,以作项目关联和顺利返款
邮件请命名:2023寒假在家练+购买板卡的简称+真实姓名(例:2023寒假在家练+电赛板卡+姓名)
1. 电子森林注册昵称(不是用户名)
2. 下单时所留姓名和电话
订单查看方式:请关注“硬禾学堂”公众号,移动端点击底部“硬禾学堂”,进入后点击“我的”,即可查看全部订单信息。
3. 订单号和付款截图
在全部订单信息中点击对应订单即可复制订单号(在“微信支付”中可截图付款凭证):

注:如不参与退款,也需邮件发送订单信息。
电子森林项目网站使用说明
2. 请注意每编辑完成一个页面一定要点击底部“保存”
3. “基本信息”页
- 标题请按照规则填写
- 封面图一定要更换成适合本人项目的图,不要用默认的
- 视频请先上传到B站/优酷/腾讯,然后在“视频代码”处粘贴iframe格式代码
- 类型选择“分享类”
- 标签请填写3-5个描述你所做项目的关键词,其中一个要包括“2023寒假在家练”标签
- 在“高校”处选择个人学校
- 在“团队介绍”和“团队成员”处添加个人姓名和学校/公司
注:寒/暑假练项目均为个人项目,团队合作完成者仅退一人款
- 在“描述”中编辑项目总结报告
- 图片的上传请点击右上角的“上传”
- 代码的插入请使用插入工具
- 注意格式整洁,正文字号建议用12pt,标题建议用14pt,并加粗显示,正文首行不要缩进两字符
- 描述下面的“规则”、“参与推广”、“支付协议”则无需填写’
4. “进度”页和“软硬件”
- 在“进度”页中可添加个人的每一个阶段项目进程

- 在“软硬件”页中可选择使用的软件和工具,若没有则无需填写
- 在附件处一定要添加可下载的代码文件,若是文件太大, 可上传到百度网盘上,并在“描述”中粘贴链接
- 编辑完成后一定要点击“保存”
5. 其他页
- “视频课程”、“应用案例”和“商品”页若没有则无需填写
6. 点击“预览”,并“发布”项目
- 本人先点击“预览”查看自己的项目,若没有问题之后再点击“发布”
- 发布之后若查出存在问题,可点击“取消审核”再次修改。若在项目通过之后发现存在问题,依旧可再次修改项目,直到项目完善

RISC-V软核的设计----基于STM32+iCE40的电赛训练平台
RISC-V ice40 三天三夜,从零开始实现RV32I的78%指令。
Javion
基于STM32+iCE40的电赛训练平台实现了DDS任意波形发生器/本地控制
基于STM32+iCE40的电赛训练平台,使用FPGA,STM32G031,涵盖了SPI协议,DDS原理,U8G2库驱动oled,实现了DDS任意波形发生器
ZHAO
南京邮电大学
基于STM32+iCE40的电赛训练平台设计的DDS任意波形发生器(本地控制)
本项目是基于STM32+iCE40的电赛训练平台设计的DDS任意波形发生器/本地控制
sqzr
南京信息工程大学
2023寒假在家练(2)基于STM32+iCE40的电赛训练平台制作频率计
利用STM32单片机和外部高速比较器制作频率计(测试信号FPGA产生的DDS信号)
野生阿波
河南城建学院
基于ICE40的RISC-V软核移植
本项目旨在将基于Murax SoC的RISC-V软核移植到ICE40 FPGA上,并通过实现一个流水灯应用程序来验证软核的正确性。
maskmoo
基于ice40+stm32电赛训练板制作本地控制DDS信号发生器
使用电赛训练板,基于stm32g0+ice40fpga的架构制作dds信号发生器
游泳的鸟儿
福州大学
基于STM32+iCE40的电赛训练平台实现DDS任意波形发生器/本地控制
使用FPGA+MCU架构完成任意波形发生器,DAC 并行数模转换芯片速度比较高 ,数据发送用FPGA做比较合理;而OLED显示、按键、旋转编码器的控制使用用MCU处理较为简单;发挥两者的优势,高效简捷地实现任意波形发生器。
且听风吟123
基于STM32+iCE40的电赛训练平台制作的频率计
基于STM32+iCE40的电赛训练平台,项目5 - 频率计,利用板上的高速比较器和STM32代码实现频率计的功能,并在OLED屏幕上显示出被测信号的频率
亚历鸽斯
西安电子科技大学
2023寒假一起练平台(2)- 基于STM32+iCE40的电赛训练平台 DDS信号发生器
通过板上的高速DAC(10bits/最高125Msps)配合FPGA内部DDS的逻辑(最高48Msps),生成波形可调(正弦波
yao
基于 STM32+iCE40 的电赛训练平台移植 Reindeer 软核并实现流水灯功能
在 ICE40UP5K FPGA,移植 Reindeer RSICV 软核,重新映射串口的 Tx 和 Rx 管脚,增加一个寄存器,映射到控制板卡上的 4 个 LED 灯。在软核上运行一个程序,实现打印调试信息到串口输出、执行流水灯等功能。
topgear
ice40+stm32 频率计-寒假一起练
ice40+stm32 频率计 以STM32产生PWM波,经过一阶低通滤波,与被测信号作比较,产生较为稳定的脉冲信号,在时间t内对被测信号的时钟周期N进行计数,然后求出单位时间内的时钟周期数,即为被测信号的频率。
Upton
山东科技大学
基于STM32+iCE40的电赛训练平台完成RISC-V软核的移植
这是一个在iCE40UP5K中移植的一个RISC-V软核:FemtoRV,并根据核心板情况做出修改,实现RV32I基础指令集,通过RISC-V指令兼容性测试,能够用流水灯的方式点亮核心板上的LED。
pei
福州大学
基于STM32+iCE40电赛训练平台的DDS任意波形发生器(本地控制)
板卡主要包括单片机部分和FPGA部分。单片机部分主要用于显示、控制和复杂运算;FPGA主要用于数据的运输和处理。两者以SPI为桥梁进行通信。最终完成了硬禾所要求的《DDS任意波形发生器/本地控制》的要求。
zhiwu
南京邮电大学
用STM32+iCE40的电赛训练平台实现本地控制的DDS任意波形发生器
通过板上的高速DAC配合FPGA内部DDS的逻辑,生成波形可调,频率可调,幅度可调的波形,由MCU作为主机,通过SPI协议将信号的参数发送给FPGA,同时在OLED屏幕上显示相应的参数
尼古丁真
北京理工大学
用STM32+iCE40电赛训练平台完成一款开源RISCV软核——NEORV32的移植
将一款热门的开源RISCV软核NEORV32移植至STM32+iCE40电赛训练平台,并且使用软核运行编译好的C代码以流水灯的形式点亮核心板上的LED。
dangel
北京工业大学
基于STM32和FPGA制作的任意波形发生器(本地控制)
本项目利用STM32G031G8U6和iCE40UP5K结合OLED、DAC、按键和旋转编码器,完成了一个本地控制的任意波形发生器的制作
echu
基于STM32+iCE40的电赛训练平台实现的DDS任意波形发生器/本地控制
本次使用的项目使用基于STM32+iCE40的电赛训练平台完成。使用FPGA控制高速DAC产生波形,使用MCU控制OLED屏幕和读取按键、旋转编码器输入并进行处理。完成的任务为:项目3 - DDS任意波形发生器/本地控制
MALossov
电子科技大学
基于STM32+iCE40平台实现的DDS任意波形发生器
通过板上的高速DAC(10bits/最高125Msps)配合FPGA内部DDS的逻辑(最高48Msps),生成波形可调(正弦波、三角波、方波)、频率可调(DC-)、幅度可调的波形
冷月烟
基于STM32+iCE40的电赛训练平台项目4 - DDS任意波形发生器/PC远程控制
本项目使用STM32+iCE40核心板来实现DDS任意信号发生器,并借助‘基于STM32+iCE40的电赛训练平台'板卡上的DAC来实现波形的产生,并使用PC来进行远程控制波形、幅度、频率等信息
wyk
北京交通大学
"2023年寒假在家一起练"基于STM32+iCE40的频率计设计
该项目将完成2015年电赛F题数字频率计设计,将由型号为:STM32G031G8U6单片机与型号为:ICE40UP5K的FPGA,以及前级比较电路,完成设计。
begin
安徽师范大学
2023寒假在家练 基于STM32+iCE40的电赛训练平台 设计RISC-V软核到ICE40UP5K
设计基于RISC-V的软核CPU,控制流水灯点亮,使用ICE40UP5K FPGA和STM32G031 MCU开发板,支持FPGA开发工具链,扩展性强。
john
基于STM32+ICE40板卡实现DDS任意波形信号发生器(本地&PC远程控制)
本项目为基于STM32+ICE40板卡实现DDS任意波形信号发生器,既有本地按键,编码器控制功能,又有PC远程串口控制功能。
dd_ee
基于STM32+ICE40电赛训练平台的RISCV软核移植
本项目使用硬禾课堂基于ICE40UP5K FPGA以及STM32G031设计的电赛训练平台,实现了一款RISCV软核FemtoRV的移植,并成功运行由汇编代码编写的LED流水灯程序以及ADC-DAC直通程序。
电子卷卷怪
南京大学
基于STM32和FPGA的波形可调频率可调幅度可调的信号发生器
使用STM32和FPGA异构的电赛训练板,实现了单片机与FPGA的数据交互控制显示,能通过DAC发送任意波形
爆肝儿
中山大学
基于STM32电赛训练平台的频率计设计
本项目是2023寒假在家一起练项目,实现了一个基于STM32+iCE40的电赛训练平台的频率计的设计。
tinySDR
基于STM32+iCE40的电赛训练平台完成dds项目
通过板上的高速DAC配合fpga内部dds的逻辑,生成了波形可调,幅度可调的波形。并在oled上显示当前的波形的形状频率和幅度。
Reast
哈尔滨工程大学
2023年寒假在家练-基于STM32+ICE40实现DDS任意波形发生器/本地控制
此项目主要实现DDS 任意波形发生器,通过按键和旋转编码器可以实现 波形选择、频率选择、频率步进调整、增益调整等功能
xinshuwei
基于STM32与FPGA实现本地控制DDS任意波形发生器
本项目是在2023年寒假在家一起练的电赛训练平台实现的项目3,基于STM32与FPGA实现本地控制DDS任意波形发生器。
山与风
成都大学
团队介绍
-
苏州硬禾信息科技有限公司