你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
查看全部评分
党国特派员 发表于 2018-8-27 10:39 在任务初始化(OSTaskStkInit)的时候,跟一下。看浮点寄存器有没有入栈。
wangweili1978 发表于 2018-8-28 11:43 根据你所说的错误描述,很可能是任务切换时浮点寄存器数据破坏了。 看下汇编代码,有没有使用S16-s31以上 ...
小黑111 发表于 2018-9-14 23:14 这个问题我在半年前遇到过,我的临时解决方法是所有的浮点数全部替换成整型处理了。 我认为这 ...
看下汇编代码,有没有使用S16-s31以上的寄存器。如果有的话,有可能就是s16-s31这几个寄存器没有入栈。
评分
查看全部评分
查看是否入栈是要看汇编执行的情况吗?
不太会这些操作,有没有相关的资料教程之类的,求大侠分享
我认为这个问题的根本原因是OS_CPU_A.ASM这个文件的问题,现在网上所有的这个文件都是用的cortex-m4的,
这个文件包含多个函数用于任务切换,其中包括多个与浮点数寄存器堆栈有关的函数,它只支持single precision,显然stm32f767(cortex-m4)的double precision是不兼容的。
这个文件本应该是官方发布(可惜一直没发),由于本人水平有限,不懂汇编,还请高人参照数据手册实现函数,为民造福
评分
查看全部评分
那个帖子其实就是我发的