z258121131 发表于 2018-9-26 10:15:37

返回结构体时进入硬件错误

各位好,请问通过片上flash读取数据进行返回,返回数据类型为一个共用体,当返回数据float类型的数据小于17*4字节时正常,大于时 进入硬件错误,望指点。

toofree 发表于 2018-9-26 14:29:32

z258121131 发表于 2018-9-26 13:54
各位好,问题已经找到。是因为在写flash时使用了memcpy函数,但是接收的数据缓冲区只有64字节大小,但是传 ...

就是呀,你的主楼的问题,跟5楼的解决,没有半点关系。
只给出问题,没有工程,没代码。神仙也找不出问题

发表于 2018-9-26 10:18:40

楼主最好能贴代码,不能让别人光靠猜测。

MrJiu 发表于 2018-9-26 10:19:20

返回啥?返回数据?不是指针?不是地址?返回17*4Byte?具体还是要看代码,最好是把相关代码贴上拉!!!

stm1024 发表于 2018-9-26 10:22:16

你这丢出一个错误报告的截图,对帮你解决问题毫无帮助,至少丢出联合体的定义吧?

z258121131 发表于 2018-9-26 13:54:27

各位好,问题已经找到。是因为在写flash时使用了memcpy函数,但是接收的数据缓冲区只有64字节大小,但是传递的数据却是80字节,debug时赋值等都没有提示数组越界等错误,但只要write后return就挂了,后面吧接收缓冲区也改成80就好了。

z258121131 发表于 2018-9-26 19:11:32

toofree 发表于 2018-9-26 14:29
就是呀,你的主楼的问题,跟5楼的解决,没有半点关系。
只给出问题,没有工程,没代码。神仙也找不出问题 ...

是粗心了。因为相对来说hardfault的原因就那么几种,所以准备看看有没有什么思路的。

青葱岁月 发表于 2018-10-13 15:19:10

学习了。
页: [1]
查看完整版本: 返回结构体时进入硬件错误