单片机/MCUwilliam hill官网
直播中

swhsl789

12年用户 153经验值
擅长:RF/无线
私信 关注
[问答]

51读写SD卡用数组buf存储读取的数据输出问题

51读写SD卡用数组buf存储读取的数据输出到窜口
unsigned char buf[256];定义256个数组输出正常
unsigned char buf[512];定义512个数组输出显示索引超出数组界限,这是为什么?
芯片采用STC12C5A60S2
求大神解答

回帖(4)

愤怒的企鹅

2014-4-1 11:46:46
你程序的读取应该是扇区读取,扇区读是对SD卡驱动的目的之一。SD卡的每一个扇区中有512个字节,一次扇区读操作将把某一个扇区内的512个字节全部读出,程序定义512个数组输出显示索引超出数组界限,应该是根据这个来定义的
举报

颜聪

2014-4-1 21:02:57
是不是超过了内存256B
对于内部扩展RAM 应该设置编译器 为目标设置选项--》项目---》存储模式选large..
举报

z00

2014-4-2 08:59:17
STC12C5A60S2片上集成1280字节RAM;楼主定义的数组是不是超出了1280?

或是堆栈设置的太小
举报

swhsl789

2014-4-2 13:47:27
引用: z00 发表于 2014-4-2 08:59
STC12C5A60S2片上集成1280字节RAM;楼主定义的数组是不是超出了1280?

或是堆栈设置的太小 ...

应该是这个问题,移植到STM32上是正常的
举报

更多回帖

发帖
×
20
完善资料,
赚取积分