STM32
直播中

刘桂英

8年用户 1281经验值
私信 关注
[问答]

IAR FOR STM8 v3.10.4调试时软件崩溃的原因?

环境:  ide是  iar for stm8 v3.10.4 版本, 芯片stm8L051,调试器是Risym 的ST-LINK v2, swim连接
部分程序如下:
void main(void)
{
  CLK_Config();
  ioConfig();
  ADC_Config();
  timerConfig
  enableInterrupts();
...
}

enableInterrupts()  是iar 开中断的函数

问题描述:程序和硬件都没有修改,前两天调试都没有问题,今天再来调试只要执行到enableInterrupts(); 这一行IAR 软件就卡死了,几秒钟以后就自动关闭了。 程序可以下载进去,非调试模式也能正常运行。有遇到相似问题的么,有谁知道如何解决?

回帖(2)

刘易

2024-4-26 10:50:45
有时出现故障的原因不在 enableInterrupts();

楼主可以先取消
ADC_Config();
timerConfig();
后看看开中断故障还在否。

还有这个 timerConfig函数写法好像有点不对劲。
举报

李梅

2024-4-26 17:40:23
IAR for STM8 v3.10.4调试时软件崩溃的原因可能有以下几点:

1. 软件冲突:可能存在其他软件与IAR for STM8冲突,导致IAR在调试过程中崩溃。请检查是否有最近安装的软件可能与IAR产生冲突。

2. 系统资源不足:在调试过程中,系统资源可能不足以支持IAR for STM8的正常运行。请检查系统资源使用情况,关闭不必要的程序以释放资源。

3. IAR for STM8软件问题:软件本身可能存在一些已知或未知的bug,导致在特定情况下崩溃。尝试更新到最新版本的IAR for STM8,或者查看官方论坛和社区是否有类似问题的解决方案。

4. 调试器或硬件问题:Risym的ST-LINK v2调试器或STM8L051芯片可能存在问题。尝试使用其他调试器或芯片进行调试,看是否仍然出现崩溃现象。

5. 代码问题:虽然您提到程序和硬件都没有修改,但仍然有可能存在代码中的某些问题导致IAR崩溃。尝试逐步调试,找出可能导致崩溃的代码部分。

6. 系统问题:操作系统可能存在问题,导致IAR for STM8无法正常运行。尝试重启计算机或在其他计算机上运行IAR for STM8,看是否仍然出现崩溃现象。

为了解决这个问题,您可以尝试以下步骤:

1. 检查并关闭可能与IAR for STM8冲突的软件。
2. 更新IAR for STM8到最新版本。
3. 检查系统资源使用情况,确保有足够的资源供IAR for STM8使用。
4. 尝试使用其他调试器或芯片进行调试。
5. 逐步调试代码,找出可能导致崩溃的部分。
6. 重启计算机或在其他计算机上运行IAR for STM8。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分