基于野火的STM32H743开发板
使用CubeMX V6.2.1添加Freertos以及fatfs,由于使用CubeMX添加lwip没搞明白,就将示例中lwip相关的文件添加到工程中,调通网络后又添加了串口、CAN、ADC、PWM等功能(工程A),一直没有测试SD卡读写功能。
在测试SD卡读写时,挂载SD卡一直有问题,对比野火的demo程序发现fatfs的版本不一样,CubeMX使用的fatfs为R0.12c版本,函数参数有差异,刚开始一直怀疑参数传递问题,后来一直没解决问题。
用CubeMX重新生成了只有Freertos、fatfs的工程(工程B),测试sd读写正常,终于发现了一丝曙光。
对比两个工程,屏蔽工程A中的初始化函数与工程B相同,测试sd读写正常,然后逐条恢复,发现屏蔽SCB_EnableDCache();后sd读写正常,网络异常;使能SCB_EnableDCache();网络正常,sd卡读写异常,脑袋大了,然后进入了漫长的尝试中.......
|