搜索
查看: 2970|回复: 9

[原创] cube生RTOS的问题

[复制链接]

该用户从未签到

52

主题

1122

帖子

67

蝴蝶豆

论坛元老

最后登录
2021-4-24
发表于 2015-7-19 23:54:00 | 显示全部楼层 |阅读模式
今天,周么在家试验cube-RTOS,首战即很不顺利。
先列举一下实验条件:
cubeMX  4.9.0 (the newest)
cubeF4   1.7.0(the newest)
cubeF1   1.1.0(the newest)
keil v5.12.0.0
硬件环境STM32F4-Discovery板。

过程和现象:
今天在看freeRTOS的教程,本想做个实验,为了快速部署项目,在mx中选择F4-Discovery板作为原始模板。启用RTOS和UART2。输出MDK V5的工程。然后打开工程,直接编译。这时提示错误如下,基本上就是说没有预定义__TARGET_FPU_VFP。
keil.PNG

接着,全局搜索__TARGET_FPU_VFP,发现只有两处提到,其中一处是刚才出错的位置。另一处是core_cm4.h文件中Line 118的位置。由此发现若要启用FPU还需要定义__FPU_PRESENT。尽管我不需要启用这个但是可以做个实验。我再工程设置中预定义这两个字符串。结果整个项目输出就一片糟糕,最终有134项错误,64个警告。大部分的错误都是1114错误,在于不支持register这个关键字。我暂时没法解决。
如下图:
keil2.PNG

然后我做了另一个实验,我将同样的cube模板生成IAR的程序测试,直接编译通过。

最后我有利用F103建立一个模板,生成keil MDK V5工程。结果编译通过。


问题和分析:
1、 RTOS在F4上难道必须定义__TARGET_FPU_VFP,这样定义是不是并不意味这要使用FPU。要使用FPU还需要打开__FPU_PRESENT。
2、 为什么在keil中编译通不过,而在IAR中却能够通过。编译不通过的原因的确与register有关吗?怎样才能通过编译。
3、 在F103种顺利编译,这个是不是意味着问题不来源于mx而是来源于cubef4?
4、 这是不是意味着cube库有些bug,而这是其中之一。如果是我是不是倒退到老的就能解决?

希望有类似环境的可以测试一下!
回复

使用道具 举报

该用户从未签到

57

主题

1216

帖子

0

蝴蝶豆

金牌会员

最后登录
2023-6-4
发表于 2015-7-20 08:44:09 | 显示全部楼层
帮顶                    
回复 支持 反对

使用道具 举报

该用户从未签到

10

主题

1661

帖子

0

蝴蝶豆

论坛元老

最后登录
2020-2-15
发表于 2015-7-20 10:18:46 | 显示全部楼层
还是用成熟的系统吧。
回复 支持 反对

使用道具 举报

该用户从未签到

47

主题

1683

帖子

7

蝴蝶豆

论坛元老

最后登录
2022-4-9
发表于 2015-7-20 11:41:03 | 显示全部楼层
感觉是F4直接从F1复制而来,但一些问题未能测试解决。
回复 支持 反对

使用道具 举报

该用户从未签到

7

主题

919

帖子

0

蝴蝶豆

金牌会员

最后登录
2020-7-4
发表于 2015-7-20 11:45:56 | 显示全部楼层
是不是图片上面的那个蓝色部分的选项选择错误,应该选择 not use吧。
1.png
回复 支持 反对

使用道具 举报

该用户从未签到

52

主题

1122

帖子

67

蝴蝶豆

论坛元老

最后登录
2021-4-24
 楼主| 发表于 2015-7-20 22:55:50 | 显示全部楼层

谢谢你,对cube还是不熟。希望有人能提出建议。
回复 支持 反对

使用道具 举报

该用户从未签到

52

主题

1122

帖子

67

蝴蝶豆

论坛元老

最后登录
2021-4-24
 楼主| 发表于 2015-7-20 22:58:54 | 显示全部楼层
JackieLaura 发表于 2015-7-20 11:45
是不是图片上面的那个蓝色部分的选项选择错误,应该选择 not use吧。

对,一直没找到。但今晚在测试的发现可能是asm设置的问题,不过现在没确定。
谢谢你!
回复 支持 反对

使用道具 举报

该用户从未签到

52

主题

1122

帖子

67

蝴蝶豆

论坛元老

最后登录
2021-4-24
 楼主| 发表于 2015-7-20 23:18:05 | 显示全部楼层
本帖最后由 watershade 于 2015-7-20 23:21 编辑

世界上最悲惨的是你费劲心机花了精力,却没找到答案。然后,你只是简单的从零重来一遍问题就解决了,可是问题是你连问题是怎么解决的都不知道!

今晚先忙别的事情,然后将之前的所有RTOS相关的工程啥没出,但是保留mx的模型,又生成一遍。这是没问题了。

稍后再找找之前的错误是什么造成的。

但是初步怀疑是编译器或编译器设置造成的,与ST的cube和MX没有关系。因为记得白天用自己的笔记本试过发现port里面的__ASM都不能被识别。
回复 支持 反对

使用道具 举报

该用户从未签到

41

主题

2582

帖子

282

蝴蝶豆

论坛元老

最后登录
2021-4-1
发表于 2015-7-22 10:50:31 | 显示全部楼层
帮顶            
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

47

帖子

0

蝴蝶豆

初级会员

最后登录
2015-7-25
发表于 2015-7-25 16:55:57 | 显示全部楼层
领教领教了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-29 20:42 , Processed in 1.230363 second(s), 42 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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