OpenEdv-开源电子网

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

单片机玄学问题,死机现象

[复制链接]

17

主题

77

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
263
金钱
263
注册时间
2019-4-28
在线时间
66 小时
发表于 2020-10-14 00:21:58 | 显示全部楼层 |阅读模式
5金钱
在stm32f103c8t6(最小系统板)里我在main函数里面定义里一个数组(相当于局部变量),然后main函数里面调用其他.c里面的函数使用了这个数组(函数功能就是求平均值,使用指针传参),此时单片机不会死机,也能正确计算平均值。但是我使用精英版也就是stm32f103zet6时,同样的代码,却会死机(仿真和实物流水灯确定是死机),仿真确定死机在求平均值的过程(仿真显示死机跳到void HardFault_Handler(void) {
  /* Go to infinite loop when Hard Fault exception occurs */
  while (1)
  {
  }
})这个函数里)然后我把那个数组定义在全局变量里之后就不会死机了。明明在c8t6里那个数组在main里面声明也不会死机啊,但精英版的却会?所以想问问为什么同样的代码不同的单片机一个死机一个不会?谢谢!

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

使用道具 举报

12

主题

3387

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8635
金钱
8635
注册时间
2020-5-11
在线时间
4082 小时
发表于 2020-10-14 10:13:49 | 显示全部楼层
专治疑难杂症
回复

使用道具 举报

3

主题

312

帖子

0

精华

高级会员

Rank: 4

积分
907
金钱
907
注册时间
2011-10-19
在线时间
196 小时
发表于 2020-10-14 10:31:20 | 显示全部楼层
本帖最后由 ufbycd 于 2020-10-14 10:34 编辑

技术没有玄学问题,那是你没有找出问题的原因。单片机找问题的第一要务是分清是硬件问题还是软件问题,你这个大概率是硬件问题,运行环境跟之前的不一样导致。

分享下我的一个经历:手工做样板时发现芯片的晶振没有起振,于是更换晶振、更换芯片、更换电路板、请FAE帮忙、请原厂帮忙、请大牛帮忙,还是不起振!差不多放弃了。最后试一下把锡线换了,竟然就起振了!之前的锡线不过存放有点久了、有点老化了,竟对晶振有影响!

研发能力主要就是找问题的能力。
回复

使用道具 举报

11

主题

2143

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4880
金钱
4880
注册时间
2015-1-10
在线时间
611 小时
发表于 2020-10-14 11:09:55 | 显示全部楼层
startup.s内堆栈设置是否合理
回复

使用道具 举报

5

主题

269

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1053
金钱
1053
注册时间
2020-5-11
在线时间
253 小时
发表于 2020-10-14 11:57:33 | 显示全部楼层
ufbycd 发表于 2020-10-14 10:31
技术没有玄学问题,那是你没有找出问题的原因。单片机找问题的第一要务是分清是硬件问题还是软件问题,你这 ...

所以这种问题查起来就很难受。也遇到过类似的。
回复

使用道具 举报

2

主题

458

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4464
金钱
4464
注册时间
2018-5-14
在线时间
957 小时
发表于 2020-10-14 12:34:39 | 显示全部楼层
大概率是你软件的问题,只是你没贴出你怎么传参的。进入仿真看一下原本数组的首地址指针与你进函数的指针是否相同。
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4478
金钱
4478
注册时间
2013-4-22
在线时间
337 小时
发表于 2020-10-14 16:50:07 | 显示全部楼层
数组溢出了吧
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-17 14:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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