led模组调试软件找不到芯片代码怎么办

led模组调试软件找不到芯片代码怎么办,第1张

百度知道

led模组调试软件找不到芯片代码怎么办

知道了问题的来源,解决就非常简单了,只需要修改以上两个宏定义的值就可以。

这里涉及到STM32F4主时钟的计算,主 PLL 时钟的时钟源要先经过一个分频系数为 M 的分频器,然后经过倍频系数为 N 的倍频器出来之后的时候还需要经过一个分频系数为 P(第一个输出 PLLP)或者 Q(第二个输出 PLLQ)的分频器分频之后,最后才生成最终的主 PLL 时钟。计算公式:

PLL = HSE_VALUE * N / (M*P)

8M晶体计算:

PLL = HSE_VALUE * N / (M*P) = 8M* 336 /(8*2) = 168MHz

25M晶体计算:

PLL = HSE_VALUE * N / (M*P) = 25M* 336 /(25*2) = 168MHz

所以25M晶体对应的HSE_VALUE=25000000,PLL_M=25,修改程序中的

stm32f4xx.h文件122行:

#if !defined (HSE_VALUE)

#define HSE_VALUE ((uint32_t)25000000) /*!<Value of the External oscillator in Hz *

system_stm32f4xx.c文件316行:

#if defined (STM32F40_41xxx) || defined (STM32F427_437xx) || defined (STM32F429_439xx) || defined (STM32F401xx)

/* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLL_M) * PLL_N */

#define PLL_M 25

修改完成后,重新编译工程,正常的话,应该还是调试器检测不到芯片,无法进行程序下载,所以为了挽救死机的芯片重新下载程序。我们需要在下载程序之前,先按住复位键不松开,然后点击下载按钮,等1秒钟,再松开复位按键,这样就可以下载进去了,程序正常运行,Amazing

可以运行。

板子所用的MCU为STM32F4,下载完程序后,发现程序不允许,必须手动Reset才可以。

电脑需先安装KeilMDK5。此固件库为Keil官方提供,直接双击安装即可,安装成功后在MDK5工程的Device中可以选择STM32f4该系列的ARM芯片。

天调试程序,改了下下位机,然后烧进去程序就无法运行了,再烧原来的好的程序进去也无法运行,板子上没做jtag接口,都是isp下载的,用了个led闪烁来验证板子是否正常工作,现在led常亮了,根本不闪

板子上各个器件温度正常,电压正常,硬件复位上电复位都试过,还是无法运行

没办法飞线出来swd调试,连上jlink,无法下载调试,试了好多次,都是显示下面两种情况,显示信息见最后

这种板子现在就剩这一块了,求各位高人能否帮我判断下是否是芯片坏了还是可能其他的原因

PS:SWD调试信息

Load "..\\ObjFlash\\stepmotor002.AXF"

Set JLink Project File to "D:\backup\项目\stepmotor\完全功能程序\stepmotor002\Project\JLinkSettings.ini"


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7743358.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-09
下一篇2023-04-09

发表评论

登录后才能评论

评论列表(0条)

    保存