高级会员

- 积分
- 981
- 金钱
- 981
- 注册时间
- 2015-9-20
- 在线时间
- 148 小时
|
首先恭喜原子哥开发板都做到了F4,F7了......有点落后哈,至今还在鼓捣mini RBT6板子,今天突然发现寄存器版本例程SD卡实验接收数据函数 u8 SD_RecvData(u8*buf,u16 len)
中的形参u16没有初始化而直接使用了.......
u8 SD_RecvData(u8*buf,u16 len)
{
if(SD_GetResponse(0xFE))return 1;
while(len--)
{
*buf=SD_SPI_ReadWriteByte(0xFF);
buf++;
}
SD_SPI_ReadWriteByte(0xFF);
SD_SPI_ReadWriteByte(0xFF);
return 0;
}
但神奇的是MDK4.7居然没报任何错误,而且在硬件上还能跑的欢快......仿真了一下发现第一次系统给len这个变量赋值为16,
第二次则是256.........好像是随机分配的.......这么说的话当超出16个字节时是不是就会接收到好多垃圾数据......
不知道原子哥在其他版本中是否有修改.....
|
|