你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【银杏科技ARM+FPGA双核心应用】STM32H7系列4——TIMER

[复制链接]
heart蓝色CD 发布时间:2020-3-23 09:16
一、硬件平台# ]/ _  @9 n7 C0 _( B6 C0 q+ b
! F# ]& ~0 A0 T
icore4t.png % k- J: \( k" H7 q' N& B, S$ y
4 N9 E! a3 F/ T" e; T' [0 q
二、实验简介8 y" r3 z* E$ _
本实验基于ARM+FPGA超mini款iCore4T双核心板,一步一步带你利用STM32CubeMx工具完成对通用定时器TIM3的基本配置,实现500ms的定时功能。
( f6 G% i) `# _& _  p通过编写通用定时器中断回调函数的内容以实现对板载LED的定时控制
2 c' U0 W/ U! a# V+ J6 }; E0 ]8 k
* p+ X5 Z" S6 P三、资料下载(实验源码+详细文档操作说明)
0 K% o  [8 c) v" B& I* |; f& y% c, b1、源代码- ~. h; d6 a7 z' }
5_timer.zip (912.46 KB, 下载次数: 4)
收藏 评论15 发布时间:2020-3-23 09:16

举报

15个回答
maxtch 回答时间:2020-3-24 01:01:19
下次来一个 STM32MP1 + FPGA 的版本吧。(有点像 Zynq?)- R7 d  l8 a2 {4 c( K: S7 K1 L0 w
还有,建议取消 FPGA 上的 Flash 颗粒,改成通过 SPI 或 FMC 来连接 FPGA 和 STM32,同时相应配置 FPGA 的启动模式为 SPI 从设备或并行接口。这样的话在实际应用中,FPGA 完全依赖 STM32 启动,两者的软件可以同时更新;同时 FPGA 启动接口兼做与 STM32 之间的高速通信接口,节省 FPGA 管脚。至于说 SPI 闪存颗粒,可以完全取消,也可以改接 STM32 的 QSPI 接口。另外,FPGA 有源晶振也可以取消,改成由 STM32 通过 MCO 向 FPGA 输出时钟。其三,FPGA 的 nPROG 和 STM32 的 nRESET 可以接在一起,使得两者可以一起复位。这样做的话,FPGA 独立支持电路几乎完全取消,彻底作为 STM32 的外设来使用。
7 t5 Z( w( s) j7 Z/ Y" H9 k6 P# L  u+ I
我有设计过一款 AGM FPGA + STM32L4 的开发板,就是这样的设计结构:FPGA 配置成 SPI 启动,接在 STM32 的 SPI 管脚上;STM32 同时负责通过 MCO 给 FPGA 提供时钟;两者的复位信号也是接在一起;另外在 STM32 挂了一片 QSPI 闪存来存放 FPGA 配置数据。
" o6 Q. t) v) l. W# R$ t; ~9 Q
heart蓝色CD 回答时间:2020-3-24 08:27:12
maxtch 发表于 2020-3-24 01:01
" q4 q5 V1 y' O下次来一个 STM32MP1 + FPGA 的版本吧。(有点像 Zynq?): N+ H, _1 H& _* b& ]3 r! k- n
还有,建议取消 FPGA 上的 Flash 颗粒,改成通过 ...
: L" D! A  q  D' V9 W# k; e. x
FLASH颗粒在iCore4T中已经选配了,默认不焊接,只留出了位置对一些只开发FPGA的用户提供方便。目前STM32MP1+FPGA已经在原理图阶段了,ARM+FPGA计划QSPI连接。另外其他的两点可以考虑哦
maxtch 回答时间:2020-3-24 11:34:55
heart蓝色CD 发表于 2020-3-24 08:27
4 d' u7 \: J! u4 ?; ?9 B- W  qFLASH颗粒在iCore4T中已经选配了,默认不焊接,只留出了位置对一些只开发FPGA的用户提供方便。目前STM32M ...

: _% g0 y/ U+ j: q/ A( P3 F* hQSPI 的话要注意兼容性问题,而且由于 STM32 QSPI 的特性 FPGA 端开发可能会有困难。我觉得 FMC 会更合适一点。
heart蓝色CD 回答时间:2020-3-24 16:58:36
maxtch 发表于 2020-3-24 11:346 r( K, B, _* X, t
QSPI 的话要注意兼容性问题,而且由于 STM32 QSPI 的特性 FPGA 端开发可能会有困难。我觉得 FMC 会更合适 ...
+ s8 R* |% }& T. U6 e
QSPI跑个几十MB的速度已经完全够用了,比起来FMC节省了不少IO资源
maxtch 回答时间:2020-3-25 03:10:06
heart蓝色CD 发表于 2020-3-24 16:58( k9 b, E+ v; s7 ~: D% z3 f
QSPI跑个几十MB的速度已经完全够用了,比起来FMC节省了不少IO资源
5 S* ^3 V! q2 p' \
FMC 在 FPGA 一侧要方便的多:
  • 其一,FMC 的确费 IO,但几乎所有厂家都有现成的 IP 核可以简单地把 FMC 接口转成片内总线接口:Avalon、AXI4、Wishbone、AHB-Lite 等等,用起来简单的多。
  • 其二,FMC 接口相当于将 ARM 侧的内部总线直接引出,可以支持内存映射模式下写数据、等待状态、批量传输、DMA 访问等总线模式,功能强大得多;STM32 的 QSPI 虽然支持内存映射,但是不支持内存映射模式下发写指令,也不支持等待状态。
  • 其三,FMC 接口可以轻易兼容 FPGA 的并口启动模式,同一组接口直接就地复用。
  • 其四,FMC 接口启动 FPGA 的代码非常简单,只要通过 DMA 或 CPU memcpy 函数把 FPGA 字节流复制到 FPGA 地址范围就可以,字节流可以是某处闪存(片内闪存或 QSPI Flash 皆可)也可以是别的外设(USB、网络等等)。
  • 其五,FMC 的数据吞吐量远大于 QSPI。
  • 其六,对于 STM32MP1 或其他基于 Linux 的方案,通过 FMC 来启动 FPGA 和访问其中的逻辑单元有现成的主线驱动(其实就是直接借用 Zynq 的代码)但通过 QSPI 由于没有现有驱动,需要用户或贵公司自行开发维护。
    ( z: g/ b$ t4 f

" I* K2 ^1 j) d/ M1 R0 |
zhuzhe 回答时间:2020-3-25 14:27:53
沙发,学习
wker83e103 回答时间:2020-11-30 18:28:40
先收藏学习学习
zhuzhe 回答时间:2020-12-18 08:58:02
实货,学习一下
wszys 回答时间:2020-12-19 16:43:44
精彩实用的内容
稳稳果 回答时间:2021-1-6 14:07:54
真不赖
wszys 回答时间:2021-1-15 08:47:54
感谢分享,很实用
wszys 回答时间:2021-1-20 12:58:43
很详细,值得学习
wker83e103 回答时间:2021-1-25 19:42:20
资料不错,学习学习
wker83e103 回答时间:2021-2-1 18:16:52
板子资源很丰富,教程也很好。
12下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版