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

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

[复制链接]
heart蓝色CD 发布时间:2020-3-23 09:16
一、硬件平台: p- C7 a, Z+ V8 {" ~$ {6 M" D, f
8 G; P, L( j+ F4 q' Y
icore4t.png ' `: u& o* y3 G' ~9 E/ c
5 K  o! t. I8 x) E  S3 s
二、实验简介
2 V: ]* p; o  e- f" @+ }1 ?本实验基于ARM+FPGA超mini款iCore4T双核心板,一步一步带你利用STM32CubeMx工具完成对通用定时器TIM3的基本配置,实现500ms的定时功能。
# a/ P& {8 ]  X! w# m) u$ t! X% \通过编写通用定时器中断回调函数的内容以实现对板载LED的定时控制" s' F% a0 J- o: m

, A: U, U* Z0 B三、资料下载(实验源码+详细文档操作说明)
3 A7 y# I- U5 [& y9 e. t1、源代码
3 J: P) X2 U$ W 5_timer.zip (912.46 KB, 下载次数: 4)
收藏 评论15 发布时间:2020-3-23 09:16

举报

15个回答
maxtch 回答时间:2020-3-24 01:01:19
下次来一个 STM32MP1 + FPGA 的版本吧。(有点像 Zynq?)) F# ?2 D* D9 J6 t0 X3 g
还有,建议取消 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 的外设来使用。
4 s* j, s( \3 v+ M( d6 E
7 o( P4 ]& r/ W6 T$ ^' q我有设计过一款 AGM FPGA + STM32L4 的开发板,就是这样的设计结构:FPGA 配置成 SPI 启动,接在 STM32 的 SPI 管脚上;STM32 同时负责通过 MCO 给 FPGA 提供时钟;两者的复位信号也是接在一起;另外在 STM32 挂了一片 QSPI 闪存来存放 FPGA 配置数据。$ ~! h5 V/ H( h- L& Y+ G' ^, ?
heart蓝色CD 回答时间:2020-3-24 08:27:12
maxtch 发表于 2020-3-24 01:019 t8 n: k1 W8 s8 f
下次来一个 STM32MP1 + FPGA 的版本吧。(有点像 Zynq?)
4 D6 p8 |: ^( x, p0 l还有,建议取消 FPGA 上的 Flash 颗粒,改成通过 ...

4 r! T- w0 K- q6 w0 X* t; \2 ], iFLASH颗粒在iCore4T中已经选配了,默认不焊接,只留出了位置对一些只开发FPGA的用户提供方便。目前STM32MP1+FPGA已经在原理图阶段了,ARM+FPGA计划QSPI连接。另外其他的两点可以考虑哦
maxtch 回答时间:2020-3-24 11:34:55
heart蓝色CD 发表于 2020-3-24 08:27
. K: A$ U! X5 a) {# U: E' zFLASH颗粒在iCore4T中已经选配了,默认不焊接,只留出了位置对一些只开发FPGA的用户提供方便。目前STM32M ...
5 O) U" w( `" C- w/ k
QSPI 的话要注意兼容性问题,而且由于 STM32 QSPI 的特性 FPGA 端开发可能会有困难。我觉得 FMC 会更合适一点。
heart蓝色CD 回答时间:2020-3-24 16:58:36
maxtch 发表于 2020-3-24 11:34
* W+ ^3 E' u# }QSPI 的话要注意兼容性问题,而且由于 STM32 QSPI 的特性 FPGA 端开发可能会有困难。我觉得 FMC 会更合适 ...

4 o7 ~! m7 n8 ?0 U8 N4 _6 VQSPI跑个几十MB的速度已经完全够用了,比起来FMC节省了不少IO资源
maxtch 回答时间:2020-3-25 03:10:06
heart蓝色CD 发表于 2020-3-24 16:58( C8 s  Q1 a% [7 {6 |- y
QSPI跑个几十MB的速度已经完全够用了,比起来FMC节省了不少IO资源
: Z5 h9 v' p6 O
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 由于没有现有驱动,需要用户或贵公司自行开发维护。
    0 M6 [% m: ~* z9 q3 y& e/ }& n
; F; W- S$ f/ g2 g; ^4 z
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 手机版