请教各位大神,我用的是6748的片子,使用技术手册里的例程performwrite()和performread()来进行数据的存储和读写,进行数据读写的数组是prddata[1][PRD][1024],PRD是4,结果每次读数据的时候,数组里那四个PRD,每个只能读取到256个数据,也就是1024的四分之一。我要是改成prddata[1][1][4096],就会读到1024个数据,还是四分之一。
这是为什么?
是我哪里设置有问题吗?
谢谢!
Shine:
请问参考的是哪个技术手册里的例程?
rp zhang:
回复 Shine:
Shine Zhang
请问参考的是哪个技术手册里的例程?
Shine:
回复 rp zhang:
performread, performwrite是你自己写的?请参考biospsp里的sata例程。http://software-dl.ti.com/targetcontent/legacy_files/targetcontent/psp/bios_psp/index.html
rp zhang:
回复 Shine:
performread和performwrite也是手册里的。
我发现是往硬盘里存的时候,数据就只存了四分之一。
prddata在例程里是8位的数据(UINT8),我改成了32位的数据(UINT32),数据少了应该是跟这个相关,但是我没找到设置什么寄存器能更改数据位数。还是说只能按照8位的数据格式往硬盘里存。