
芯片用的是stm32f407igt6,开发环境是cubeide 具体问题如下: 在TIM7的中断函数里,通过改变flag的值,控制单片机执行不同的函数。flag=0执行函数1,flag=1执行函数2。 用cubeide debug的时候,在观察窗切换flag的值,中断执行十多二十次之后,就跑飞了!并且无法改变flag的值。 在cubeIDE里按暂停或者停止都没有响应,先按了停止再按暂停,IDE才会停下来并且报错。 求问是什么原因。。 函数2里程序比较多,正常执行的话需要30多us,TIM7中断的周期设置成100us,按理说也不应该算不完啊。。 因为最小系统板是自己设计的,不排除硬件上的问题。但之前用keil调试时都没有出现类似的情况。。。 求大佬解答 |
在CUBEMX生成的STM32F407VET6的I2S主机接收模式与I2S主机发送模式能正常运行,如何进行动态调整或者如何实现主机全双工?
开发逆变器进行STM32学习,路径如何规划?
STM32F407 多机RS485串口通讯+地址位唤醒+DMA空闲线接收,无法进入中断服务程序。
设置RDP等级为2的同时,有什么办法可以确保后续还能够烧录程序
stm32编码器模式计数问题
外部按键硬件级防抖功能
cubeide登录不了,软件连不上网
STM32CubeIDE 报错 编译STM32MP135(Projects\STM32MP135C-DK\External_Loader)
STM32F407VET6 I2S 采用DMA传输问题
STM32N6的摄像头下采样是怎么实现的
你的flag是全局变量吗?把flag换成全局变量以后再测试一下?
如果不能连续输出,就查查中断什么时候被改了。
如果能连续输出,就要检查逻辑什么时候断档了。
我就是在里面翻转IO来看有没有进中断的
改了flag后,进中断十多次就进不去了
一开始以为是算法运行超时,导致无法进入中断之类的问题,但后来把算法全部注释掉,只在IDE的观察窗中修改flag,仍然会跑飞。甚至修改一个程序中完全不会出现的变量,依然跑飞,遂意识到应该是仿真器和mcu之间的通信出了问题。于是把程序移植到keil里,很顺畅,一点问题都没了。
应该还是仿真器和cubeIDE不匹配导致的,毕竟板子是st的,开发环境也是st的,配个盗版仿真器,怎么可能用的舒服。。。
我的仿真器是300多从淘宝买的jlink,唉
那你直接用stlink,正版的也不贵,有时候工具确实能搞死人