This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

求助,28335在程序执行到ADC_cal()函数时,会卡死。

Other Parts Discussed in Thread: TPS75005

同样的程序,在另一块板子上执行,不会有问题。但在我新做的板子上执行时,总是会死在ADC_cal()处。如果屏蔽掉这条语句,一切正常。但是工程中需要做ADC转换。

应该是硬件有问题,想知道问题出在哪里?

启动引导已经固定上拉入下:

受不了,我找到问题。写了一大串思路,经过网页直接奔溃了。一句话,电源问题。仅供参考。

  • 已经找到问题。虽然这个论坛很多问题都有始无终,但我还是想写下自己的思路,供他人借鉴:

    我程序中使用了ADC,同时还使用了时间中断函数(基于150MHz的时钟速率)。我的板子使用的是30MHz的外部时钟,因此需要PLL(10,2)到150MHz。外部电源使用TPS75005,而问题就在这里。

    屏蔽ADC_cal(),能够流畅运行程序,包括进入中断。

    我将时钟改到100MHZ,发现可以运行ADC_cal(),但是无法进入中断函数。

    因此,很明显,问题就出现在了运行的时钟上面。但是我的时钟不应该有问题。因此,查阅数据手册,发现100Mhz和150MHz描述区别,最终发现如下:

    而电源芯片TPS75005通过引脚设置,可以选择1.8V和1.9v.而我这次选择的是1.8V。至此,问题原因找到了,就在这里。

    怪自己不够仔细,以前一直用的1.9V,所有没出现过这种问题。

    总的来说,有问题还是要看数据手册。还有,我的解决办法不一定适应于其他人,但可供参考。

  • 感谢您这么详细的讲述!