2018年6月22日编程记录

今天从下午开始编程。处理的程序是SD卡读取的协议。


对于SD卡,stm32提供了官方的固件库。使用官方的API是最为高效地方式。但是在本次移植中,首先出现了DMA运输过程中总是停止不曾运输的问题,这就引出了stm32移植程序的一个重要的注意点:

移植程序的时候一定要注意除了初始化函数以及移植程序外,中断函数也要相应地检查,因为很多过程实际上是在中断中处理的。

而后面,在移植的过程中,不知道为什么,虽然调用的都是API提供的函数,但是例程中的程序可以顺利运行,但是自己移植的程序却总是在初始化的过程中出现故障。后来做了分析:

初始化的过程中可能是不允许打断的,所以这个时候就要失能其他的中断源。

在移植的程序中我们利用了ADC,所以就可能造成ADC打断了初始化从而导致故障。

这里提供一份移植于野火开发板ADC数据读取与存储的程序:

程序在此


猜你喜欢

转载自blog.csdn.net/STM_32starter/article/details/80779346