野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 411|回复: 9

sdio 中的 FindSCR函数返回SCR寄存器内容为何字节颠倒,字也颠倒

[复制链接]
发表于 2023-10-26 20:42:16 | 显示全部楼层 |阅读模式
dear fire:
在读SD卡章节,获取SCR卡寄存器内容的Findscr函数最后结果:
  *(pscr + 1) = ((tempscr[0] & SD_0TO7BITS) << 24) | ((tempscr[0] & SD_8TO15BITS) << 8) | ((tempscr[0] & SD_16TO23BITS) >> 8) | ((tempscr[0] & SD_24TO31BITS) >> 24);
  *(pscr) = ((tempscr[1] & SD_0TO7BITS) << 24) | ((tempscr[1] & SD_8TO15BITS) << 8) | ((tempscr[1] & SD_16TO23BITS) >> 8) | ((tempscr[1] & SD_24TO31BITS) >> 24);

为什么字节序要颠倒,字顺序也颠倒?
手册查不到,网上也查不到,也有网友在问,没有人回答.冀答疑.
thank you!
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:40:58 | 显示全部楼层
没有人知道么?自己先顶一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-30 07:27:04 | 显示全部楼层
好想知道答案
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-31 07:13:32 | 显示全部楼层
版主帮忙回答一下,谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-11-1 12:56:54 | 显示全部楼层
真的没有人会回答么?怎样悬殊赏火花,我也想悬赏火花来回答问题.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-11-2 13:12:42 | 显示全部楼层
再顶
回复

使用道具 举报

 楼主| 发表于 2023-11-10 21:26:16 | 显示全部楼层
谁能回答啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-11-14 19:20:46 | 显示全部楼层
有人研究过这个吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-11-16 21:29:00 | 显示全部楼层
@WishWish
来回答一下好吗?
回复 支持 反对

使用道具 举报

发表于 2023-11-17 16:25:50 | 显示全部楼层
野火论坛202311171610503388..png



野火论坛202311171612022537..png        野火论坛202311171613199712..png


按手册这里看就是SD那边寄存器数据过来是从高字节先过来,


在此用的ARM MCU默认小端,SD FIFO寄存器也是小端,既是低地址存放的是数据的低字节部分,

回到上面,SD那边寄存器数据以先高位字节顺序传输,

传输给到MCU这边填充内存地址/FIFO寄存器地址时,先从低地址开始写入(从低到高地址写入/读取数据顺序也是为规定),那么相当于低地址存放的是数据的高字节部分了,这样数据形式就变大端了,重新换回小端比较好对比看原本的寄存器位描述与程序数据处理等




回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-4-29 19:52 , Processed in 0.166746 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表