OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3177|回复: 7

STM32程序运行一会突然停止是怎么回事

[复制链接]

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2016-6-1
在线时间
9 小时
发表于 2016-11-6 15:03:55 | 显示全部楼层 |阅读模式
10金钱
我是用串口一和电脑通信,然后串口二和GPS模块通信,在定时器三里更新GPS发送标志位,然后串口一打印GPS定位信息。结果串口打印了四五次就突然停了,我的发送GPS函数如下:
void Send_GPS()
{
    UART1_SendString("Enter send GPS mode");
    UART1_SendLR();
    Delay_nMs(100);
    UART1_SendString((char *)Uart2_Buf);
    UART1_SendLR();
    Delay_nMs(100);
   
    TIM_Cmd(TIM3, DISABLE);
    TIM_ITConfig(TIM3,TIM_IT_Update,DISABLE);
    UART1_SendString("TIM3 closed");
    UART1_SendLR();

        Second_AT_Command("AT+CIPSEND",">",2);
      Delay_nMs(1000);
//        UART2_SendString((char *)Uart2_Buf);
      Second_AT_Command(link(Uart2_Buf,"\32\0"),"SEND OK",6);
    UART1_SendString("GPS send OK");
    UART1_SendLR();
    TIM_ClearITPendingBit(TIM3, TIM_IT_Update  );
    TIM_Cmd(TIM3, ENABLE);
    TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE );
    UART1_SendString("TIM3 opened");
    UART1_SendLR();
}

然后串口打印停止在TIM3 closed。

求助,这是怎么回事啊?

[img]file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\1825048925\QQ\WinTemp\RichOle\YDMJ__1FAM23J}{R([SGE3X.png[/img]

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2016-6-1
在线时间
9 小时
 楼主| 发表于 2016-11-6 17:19:18 | 显示全部楼层
不能沉啊!!!顶起来
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-11-6 18:10:07 | 显示全部楼层
停的这么快,那就仿真看停哪了。是进hardfault还是进到哪个while循环出不来了
我有故事,你有酒吗
回复

使用道具 举报

4

主题

47

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
299
金钱
299
注册时间
2014-10-26
在线时间
29 小时
发表于 2016-11-7 09:05:38 | 显示全部楼层
神奇的图片,,
回复

使用道具 举报

13

主题

448

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1755
金钱
1755
注册时间
2015-2-7
在线时间
369 小时
发表于 2016-11-7 09:29:27 | 显示全部楼层
按照2楼仿真试试看
回复

使用道具 举报

28

主题

218

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
498
金钱
498
注册时间
2013-11-19
在线时间
92 小时
发表于 2016-11-17 16:05:27 | 显示全部楼层
把完整的工程发出来?应该是没处理好标准位
回复

使用道具 举报

1

主题

561

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1183
金钱
1183
注册时间
2015-5-28
在线时间
149 小时
发表于 2016-11-18 10:49:23 | 显示全部楼层
先确定死在哪里了~
回复

使用道具 举报

84

主题

766

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2775
金钱
2775
注册时间
2015-6-1
在线时间
394 小时
发表于 2016-11-18 13:17:44 | 显示全部楼层
顶一下,也遇到一个:
我的一台测试机,只在执行一个while(1)中的if判断+串口打印,外加一秒一次的定时器,跑着跑着突然就不动了,没有跑飞,没有卡死在打印中,连续开机可能几天出一次问题也可能一天出几次问题。
目前这么多测试机只有它一个有情况,我想问如果只有这一台机器程序突然停止,有没有可能是硬件原因?硬件上哪里会出这种bug呢?
自在随心
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-25 08:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表