今天,发现板子不对劲,出了问题,明明main函数里面没有while循环,可main函数就是会执行三次,我以为工程代码太多哪个环节出问题了,就新建了一个简单再简单不过的工程,只会printf一条语句,结果板子还是打印了三次,搞了好久,找不到突破口,有遇到同样问题的请不吝赐教
真的很纳闷,网上的说法都说要在结尾加一个while(1), 我是可以打包票,前几天我写的代码都没有while(1)循环,只会执行一次,我有两块板子,一块正点原子的探索板,一块是stm32F4的最小系统板,现在两块板子都出现同样的问题了
今天这两块板子只做同一件事,就是移植了SDIO驱动,并移植了FAT文件系统,这些驱动不是正点提供的,而是在stm32f4-discovery.net下载的代码,里面有大神自己写的很规范的代码,并且都用到实际项目之中,我就自己移植着来用,看过源码了,无非就是配置了sdio、dma的各个寄存器,和原子提供的代码相似度非常高。可移植完之后,板子就出现自动循环3次这种怪异问题(之后烧写运行其他工程代码也是如此),搞了一天了,真的无从下手,请帮帮忙! 如果大家手头方便可以测试一下,看会不会循环3次 |