在用原子哥标准库版本跑SRAM例程,没有问题,SRAM容量识别出来是1024k
而再用原子哥HAL版本跑SRAM历程,就出现了问题。读出来的SRAM容量永远只有4K,
将两个例程再三比对,发现在SRAM数据保存时间处存在差异 FSMC_ReadWriteTim.DataSetupTime=0x08; 标准库版本的将这个时间设置的长一些。后来在HAL库中将其数据保存时间该长一些,问题就解决了。
FSMC_DataSetupTime,控制FSMC的速度,越大越慢 但某些玄学原因,比如电路原因,SRAM芯片老化。将这个时间设置太短,可能会出错。 这个值的设置建议从大到小试,在保证可用的前提下,越小越好。 |