
芯片用的是stm32f407igt6,开发环境是cubeide 具体问题如下: 在TIM7的中断函数里,通过改变flag的值,控制单片机执行不同的函数。flag=0执行函数1,flag=1执行函数2。 用cubeide debug的时候,在观察窗切换flag的值,中断执行十多二十次之后,就跑飞了!并且无法改变flag的值。 在cubeIDE里按暂停或者停止都没有响应,先按了停止再按暂停,IDE才会停下来并且报错。 求问是什么原因。。 函数2里程序比较多,正常执行的话需要30多us,TIM7中断的周期设置成100us,按理说也不应该算不完啊。。 因为最小系统板是自己设计的,不排除硬件上的问题。但之前用keil调试时都没有出现类似的情况。。。 求大佬解答 |
想要一个成熟产品OTG通信的程序。
请教下,使用 filex 文件系统需要支持中文的目录及文件名要怎么配置呀 ?
STM32F429V烧录是无法识别到芯片怎么办?
观测器
stm32f405rgt6为什么无法串口连接STM32CubeProgrammer?
STM32F429 二级启动程序 (sboot) 开发难点:LD 文件 / 堆栈 / NVIC 及 startup.s 修改疑问
stm32G071RBT6跑TOUCHGFX的时候使用仪表控件,更新数值的时候会卡死,怎么解决
touchgfx添加文字不能显示,直接死(HardFault_Handler)
STM32CubeIDE 2.0 有啥新变化?
CubeIDE生成MP257的M33工程出现RCC配置问题(Bug?)
你的flag是全局变量吗?把flag换成全局变量以后再测试一下?
如果不能连续输出,就查查中断什么时候被改了。
如果能连续输出,就要检查逻辑什么时候断档了。
我就是在里面翻转IO来看有没有进中断的
改了flag后,进中断十多次就进不去了
一开始以为是算法运行超时,导致无法进入中断之类的问题,但后来把算法全部注释掉,只在IDE的观察窗中修改flag,仍然会跑飞。甚至修改一个程序中完全不会出现的变量,依然跑飞,遂意识到应该是仿真器和mcu之间的通信出了问题。于是把程序移植到keil里,很顺畅,一点问题都没了。
应该还是仿真器和cubeIDE不匹配导致的,毕竟板子是st的,开发环境也是st的,配个盗版仿真器,怎么可能用的舒服。。。
我的仿真器是300多从淘宝买的jlink,唉
那你直接用stlink,正版的也不贵,有时候工具确实能搞死人