打印
[STM32F4]

是可不可以将ad7606的读取结果直接存放在外扩的SRAM中

[复制链接]
1417|35
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pengf|  楼主 | 2022-1-3 19:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
用stm32f407的FSMC外扩了SRAM,同时还用的FSMC来驱动一个ad7606(A/D转换器),当然用的是bank1不同的区(FSMC_NEx),我想问的是可不可以将ad7606的读取结果直接存放在外扩的SRAM中

使用特权

评论回复
沙发
wyjie| | 2022-1-3 19:37 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
pengf|  楼主 | 2022-1-3 19:39 | 只看该作者

使用特权

评论回复
地板
pengf|  楼主 | 2022-1-3 19:42 | 只看该作者
赋值符号右边为AD7606读操作,左侧为定义在外扩SRAM中的一个数组,我想问一下可以这样操作吗

使用特权

评论回复
5
zhenykun| | 2022-1-3 19:45 | 只看该作者
还有什么现象?能再详细描述下吗?

使用特权

评论回复
6
pengf|  楼主 | 2022-1-3 19:47 | 只看该作者
FSMC的数据线是复用的,可以使用这样一条语句进行读取吗?

使用特权

评论回复
7
juventus9554| | 2022-1-3 19:52 | 只看该作者
估计

使用特权

评论回复
8
pengf|  楼主 | 2022-1-3 19:54 | 只看该作者
那应该怎么做,才能将ad7606读取结果放在外扩的SRAM中?

使用特权

评论回复
9
zwll| | 2022-1-3 19:56 | 只看该作者
先读到内部SRAM,然后再写入外部SRAM?

使用特权

评论回复
10
xxrs| | 2022-1-3 19:59 | 只看该作者

支持,非常给力的。ST是烧录器做的最好老大。

使用特权

评论回复
11
xxrs| | 2022-1-3 20:02 | 只看该作者
不知道,没试过这种,应该不行吧。

使用特权

评论回复
12
wuhany| | 2022-1-3 20:04 | 只看该作者
从同一个地址转移到同一个地址的不同设备,估计不行。

使用特权

评论回复
13
pengf|  楼主 | 2022-1-3 20:06 | 只看该作者
有人告诉我说  理论上可以,我也没试过,所以问问大家有没有这么做过的

使用特权

评论回复
14
pengf|  楼主 | 2022-1-3 20:08 | 只看该作者
SRAM和AD7606是挂载在bank1的不同区上,也就是它们的FSMC_NEx是不同的,所以地址肯定也是不一样的

使用特权

评论回复
15
lizye| | 2022-1-3 20:10 | 只看该作者
从理论上可行  因为有片选

使用特权

评论回复
16
pengf|  楼主 | 2022-1-3 20:12 | 只看该作者

哦哦  只是一个想法  那我试试

使用特权

评论回复
17
renyaq| | 2022-1-3 20:14 | 只看该作者
理论上来说应该是可行的。就算C代码只是一条赋值语句,编译后也是多条指令操作,应该会先读取到内部寄存器,再保存到外部RAM,只要各自的FSMC配置没问题,应该就没问题。楼主可以验证一下。期待楼主的验证结果!

使用特权

评论回复
18
renyaq| | 2022-1-3 20:16 | 只看该作者
应该是可以,不过和先读到寄存器再写是一样的,你可以看下编好汇编指令,直接写入是不可能的,因为fsmc数据和地址是分时复用的.
效率上和先读再写是一样的,所以不必纠结了.

使用特权

评论回复
19
pengf|  楼主 | 2022-1-3 20:21 | 只看该作者
嗯嗯  逻辑上应该是先读取ad7606的输出到片内寄存器,具体是哪个就不太清楚了,没看汇编,然后再从这个内部寄存器将数据写入外扩的SRAM,那条语句在C语言看上去是一条命令,但是底层的汇编执行是分若干步的,是这意思吧

使用特权

评论回复
20
pengf|  楼主 | 2022-1-3 20:25 | 只看该作者
Thank you 谢谢你的回复,也有人这么跟我解释的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

718

主题

10129

帖子

3

粉丝