于嗟鸠兮 发表于 2017-10-17 22:10:29

csr8670 内存块(假设是这么说吧)太小

我在使用 FileFind(...)、StreamFileSource(...)、SourceMap(...)这三个函数read image目录下的二进制文件(29k大小的文件),但是最多只能读到3072个字节,如果在访问下一个字节就会出现“Read from illegal address”的错误,在此恳求大神:这里的内存块如何设置得更大些,比如有64k这样的大小,而不是只有3072个字节。

hhyytt 发表于 2017-10-17 22:10:30

获取总大小:SourceSize(Source source);

应该是一个packet一个packet读取,用下面将读过的扔掉。
void SourceDrop(Source source, uint16 amount);

uint16 SourceBoundary(Source source);这个是packet大小,适当运用这几个函数。

source,sink,stream是ADK的核心操作,然后就是message send/handle,就没有什么深奥的东西了。

mupro 发表于 2017-10-18 17:26:09

建议把文件分块,这个东西限制很多

于嗟鸠兮 发表于 2017-10-18 19:28:42

mupro 发表于 2017-10-18 17:26
建议把文件分块,这个东西限制很多
谢谢回复。当时也是这样想的,但感觉有点low;最终还是找到了解决方法:要调用void SourceDrop(Source source, uint16 amount);这个函数来丢掉已经使用的数据。
页: [1]
查看完整版本: csr8670 内存块(假设是这么说吧)太小