OpenEdv-开源电子网

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

求助:结构体变量之间赋值,直接掉进HardFault

[复制链接]

8

主题

206

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1010
金钱
1010
注册时间
2016-4-6
在线时间
234 小时
发表于 2018-1-23 19:46:10 | 显示全部楼层 |阅读模式
10金钱
1.png
如上,我定义了一个结构体,均为uint32_t类型。然后在一个switch case 语句中。有这么一段, 2.png
程序添加图中划线部分的语句,就掉进harfFault中。。
哪位大神能帮吗解释一下。。这个为什么。。
还有,我的优化编译选项选择是时-O2  。。如果选择 -O0 不优化编译的话, 就不会掉进harfFault中。。求大神解释一波。。感激不尽!!

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

使用道具 举报

4

主题

349

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1046
金钱
1046
注册时间
2017-5-19
在线时间
335 小时
发表于 2018-1-23 23:01:58 | 显示全部楼层
不明白,看起来没什么问题。  我就想问 为什么 要写成 *(uint32_t *)(USART2_RX_BUF+6)     不能写成USART2_RX_BUF[6]  或者 *((uint32_t *)(USART2_RX_BUF+6))吗
回复

使用道具 举报

5

主题

266

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1526
金钱
1526
注册时间
2016-7-20
在线时间
155 小时
发表于 2018-1-24 09:26:32 | 显示全部楼层
帮顶!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-1-25 01:53:42 | 显示全部楼层
仿真,直接看结构体变量的地址,是否是正常值,
回复

使用道具 举报

1

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2014-9-29
在线时间
0 小时
发表于 2018-1-25 09:06:37 | 显示全部楼层
仿真看下 贴个图出来看看
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-9 02:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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