STMCU小助手
发布时间:2023-3-6 12:21
|
本质是把FPGA当做一个SRAM去操作。 ! `6 t) m- p3 _ M5 c" H 首先调试STM32写入FPGA数据,FPGA通过串口发出接收的数据。2 y$ I0 k% D' r, t [1 P 3 }, [9 d% i- o) ?& U0 N# W3 b9 | ; A8 ^! {2 V/ V. X( r STM32部分 1、首先通过cube配置stm32 ; o1 x5 D5 q" O: y8 N# y2 P6 e 原理图地址总线如下
1 b) Z& X) E6 R2 t
原理图数据总线如下: , o' W8 E2 O x8 e( ^# }8 a
' y% F& S: b" Y
% h% t% R3 x1 L( Z+ l 原理图其余部分7 x# {! |- u# N8 S ) W. b5 {) S6 d, o0 R1 L3 y N
+ Y* n* |# }- V% @
9 b1 l# T6 n1 w5 f" }9 R3 o cube配置如下# D* x- x7 z. T' c- d* o
3 ~2 M' o7 z7 J! |" E 2、打开工程,在FSMC配置文件中加入这一段写FSMC。 . ~4 c3 m7 o* n) l8 h& Y7 t
' [5 K2 i2 z* I' K 3、主函数中加入这三句话,则实现了对FSMC的循环写" ~4 Z* k) y" `( [) k9 A( c 5 g/ S1 x9 {6 {- s: S, M/ O' A
4 q6 L% w& i% J0 v( n. G0 t8 O8 E+ D - V" ?) ~; v9 O7 x. v FPGA部分 首先要知道FPGA模拟了一个SRAM。在FSMC_NWE下降沿代表有新数据写入了。我们接收的STM32数据应该首先存起来。之后再通过串口发送。 ! v$ f( R5 i# N0 @ 在每个FSMC_NWE的下降沿存储一个16位的数据。" k# {- i [5 g( L FPGA将从STM32接收到的数据通过串口发出如下 8 A! u/ d: I$ c K. a
4 o* J* T- g; Q5 u8 C1 T * O5 j+ C8 V+ d 调试STM32读出FPGA数据。 1、在应用过程中往往是FPGA作为接口采集了大量数据需要通过FSMC去传输到STM32的。基本思路是每当FPGA准备好数据时,我们通过一个IO口告诉STM32数据准备好了。 2、这个时候STM32开始进行FSMC读操作,函数是 + a" ]: E' O& P. x4 S1 J F # M* Y* w* r o# [6 O# C DATA = *( vu16*)((u32)(0x68000000)+CC); //CC是从哪个地址开始读取数据4 e$ N2 H: ^: ] 3、FPGA程序就是根据地址来给出具体的数据,对数据总线操作。 ————————————————$ O q' V2 g/ Y* `, n' F' N 版权声明:冬麻麻 / a. v& }$ F- u G2 u6 E- H# m9 K 5 }/ _0 s" L2 ?1 q, t3 G6 ` |
【STM32MP257-DK】01开发板开箱、ST MPU 生态资源使用、环境搭建以及镜像更新
基于STM32在线升级OTA经验分享
【STM32C0测评】Nucleo-C092开发板驱动DS1302实验
Keil下的STM32N6之RAM运行工程配置说明
兔哥的初代M33【002】-H503Nucleo 内部flash操作
兔哥的杂谈【002】——如何性价比更高地去编译STM32
汇编浮点库qfplib移植STM32F769I-DISCO开发板与硬件浮点运算性能测试对比
FreeRTOS学习笔记2
【NUCLEO-H533RE评测】+05 调试PWM
基于STM32 hardfault问题分析经验分享
微信公众号
手机版