SD卡上的内存和信号记录限制
SD卡记录内存限制:SD卡记录分配了所有记录的信号的静态内存。分配的内存基于记录的类型,即保存格式
,,,,样本时间,模型停止时间,拆卸
和将数据点限制为最后
。由于Arduino板的RAM大小,例如Due,MKR1000,MKR WIFI 1010和MKRZERO的RAM大小有限,因此启用SD卡记录时会有可能发生内存分配故障。看SD卡上的日志信号。
启用SD卡记录时的数据内存分配失败
尝试以下步骤,如果数据存储器分配失败:
选择较低的值
将数据点限制为最后
。较低的值可能导致较小的静态内存分配
将记录类型设置为
大批
代替随时间的结构或结构
。减少可以在模型中记录的信号数量
通过使用速率降低记录的采样率
过渡块
或者拆除
范围
代码内存分配故障
当SD卡功能和算法一起生成比分配的代码内存更大的代码时,代码内存分配失败。
在代码内存失败的情况下尝试以下步骤:
通过减少生成的代码来减少那里的模型的大小
SD卡记录连接限制:SD卡记录使用SPI(串行外围接口)在处理器和内存之间发送数据。数据记录将根据SPI连接和SPI参数设置受到影响。
如果信号未在SD卡上记录,请尝试以下步骤:
确保为SD卡记录选择适当的SPI模块
如果您使用的是外部SD卡接口,请确保
spi
引脚是正确的确保将正确的供应和接地连接到外部SD卡接口
从SPI的波特率较低开始。在配置参数中更改SPI BAUD率设置