打印
[MCU]

430怎么处理32位的数据?

[复制链接]
480|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2020-11-5 11:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TE, sd, AD, spi, pi
最近在做SD卡的程序,从32上移植了个SD卡程序。如下。

//向SD卡发送一个命令
//输入: u8 cmd   命令
//      u32 arg  命令参数
//      u8 crc   crc校验值
//返回值:SD卡返回的响应
u8 SD_SendCmd(u8 cmd, u32 arg, u8 crc)
{
    u8 r1;
        u8 Retry=0;
        SD_DisSelect();//取消上次片选
        if(SD_Select())return 0XFF;//片选失效
        //发送
    SD_SPI_ReadWriteByte(cmd | 0x40);//分别写入命令
    SD_SPI_ReadWriteByte(arg >> 24);
    SD_SPI_ReadWriteByte(arg >> 16);
    SD_SPI_ReadWriteByte(arg >> 8);
    SD_SPI_ReadWriteByte(arg);
    SD_SPI_ReadWriteByte(crc);
        if(cmd==CMD12)
                SD_SPI_ReadWriteByte(0xff);//Skip a stuff byte when stop reading
    //等待响应,或超时退出
        Retry=0X1F;
        do
        {
                r1=SD_SPI_ReadWriteByte(0xFF);
        }while((r1&0X80) && Retry--);
        //返回状态值
    return r1;
}



其中arg是32位的数据,编译时CCS警告溢出,放在这里该怎么处理?

使用特权

评论回复

相关帖子

沙发
ayb_ice| | 2020-11-5 15:52 | 只看该作者
警告不等于错误

使用特权

评论回复
板凳
ayb_ice| | 2020-11-5 15:53 | 只看该作者
强制转换下就可以了

使用特权

评论回复
地板
heimaojingzhang| | 2020-12-2 15:23 | 只看该作者
可以完全忽略警告的

使用特权

评论回复
5
keaibukelian| | 2020-12-2 15:25 | 只看该作者
转换成其他长度的

使用特权

评论回复
6
labasi| | 2020-12-2 15:35 | 只看该作者
实际运行一下 看看有木有问题

使用特权

评论回复
7
paotangsan| | 2020-12-2 15:37 | 只看该作者
转换成8位的就行啊

使用特权

评论回复
8
renzheshengui| | 2020-12-2 15:39 | 只看该作者
分段处理就行了啊

使用特权

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

本版积分规则

2039

主题

7368

帖子

10

粉丝