基于RTE创建项目时必须注意Keil for ARM版本5.33
本书与“ ARM 5.33的最新KEIL版本无法正常编译,如何解决?”相关联。 “上次我们第一次使用Keil的新版本进行ARM编程时,遇到了默认的编译器AC6。
在配置中,如果未选择标准外围设备库,请检查Framework和RCC(实际上,配置工具为橙色警告“提示这两个遗漏”)。一个简单的hello Word程序可以报告许多错误和警告。
项目配置完成后,如果在项目配置上切换到AC5(旧版本)编译器,则可以解决问题并实现0错误0警告。奇怪吗,所以我错误地认为这是新版本中的错误?看到我的帖子后,一个朋友告诉我这是AC6的新功能,并且程序代码的审核更加严格。
接下来,让我们重建另一个项目,看看发生了什么。 1.创建一个新项目,然后选择使用的芯片模型。
2.进入RTE配置菜单。配置选项如下。
根据需要选择使用的标准外围设备库。如果省略Framework和RCC,将显示橙色警告,如下所示:橙色警告,单击左下角的“解决”以为您检查。
如果您此时不组成这两个,那就可以了。不用担心,您可以稍后进行补救。
单击“确定”后,进入项目并添加main.c的主功能文件:如果此时进行编译,效果如下。为什么?仔细观察警告类型。
其中大多数是对直接分配和转换不同数据的警告。没什么可担心的,但是像我这样的许多人对于强迫症有0错误和0警告。
看到1条警告不舒服。怎么办,打开项目配置选项:我发现这里的AC编译器默认为AC6,这是新事物。
我以前没用过。尝试使用AC5。
0错误和0警告。棒极了。
如果您刚刚在RTE配置期间错过了Framework和RCC,则直接编译时将出现多个错误和数十条警告。如果遇到此问题,可以阅读我的上一篇文章。
说起。在项目配置中,将AC6更改为AC5版本,然后保存并编译项目。
此时,您会发现相同的错误为0,警告为0,因为AC5会自动添加回您错过的Framework和RCC。 AC6更严格。
如果您没有添加它,它将不会主动为您添加它。它认为您不需要它。
如果更改为AC5,执行编译,然后再切换回AC6,会发生什么情况?它仍然是0错误和0警告。太神奇了,不是吗?为什么它没有报告数据分配类型不同的警告?注意以下位置的变化。
刚构建时,默认为所有警告。更改为AC5并编译一次后,我又切换回类似AC5的警告。
可选的警告显示类型有5个选项。只有AC6默认的“所有警告”选项会引起一堆警告,这很烦人。
这意味着,如果您使用AC6,则可以使警告实施标准像AC5一样不受限制。你明白吗?对于那些对AC6不太了解的人来说,这是一个设计错误。
对于AC6的设计师来说,这就是他们想要的结果。因此,这不是错误。
用户应了解产品设计师的初衷。很好地使用此工具。
另一个关键点是,本文的目的不是真正讨论它是否是BUG,而是与您分享如何快速创建一个新项目并使您的代码0错误0警告。 END本文是21ic论坛Blue V gaoyang9992006的原始作者。
免责声明:本文的内容是在21ic授权后发布的。版权属于原始作者。
该平台仅提供信息存储服务。本文仅代表作者的个人观点,并不代表该平台的立场。
如有任何疑问,请与我们联系,谢谢!。
在配置中,如果未选择标准外围设备库,请检查Framework和RCC(实际上,配置工具为橙色警告“提示这两个遗漏”)。一个简单的hello Word程序可以报告许多错误和警告。
项目配置完成后,如果在项目配置上切换到AC5(旧版本)编译器,则可以解决问题并实现0错误0警告。奇怪吗,所以我错误地认为这是新版本中的错误?看到我的帖子后,一个朋友告诉我这是AC6的新功能,并且程序代码的审核更加严格。
接下来,让我们重建另一个项目,看看发生了什么。 1.创建一个新项目,然后选择使用的芯片模型。
2.进入RTE配置菜单。配置选项如下。
根据需要选择使用的标准外围设备库。如果省略Framework和RCC,将显示橙色警告,如下所示:橙色警告,单击左下角的“解决”以为您检查。
如果您此时不组成这两个,那就可以了。不用担心,您可以稍后进行补救。
单击“确定”后,进入项目并添加main.c的主功能文件:如果此时进行编译,效果如下。为什么?仔细观察警告类型。
其中大多数是对直接分配和转换不同数据的警告。没什么可担心的,但是像我这样的许多人对于强迫症有0错误和0警告。
看到1条警告不舒服。怎么办,打开项目配置选项:我发现这里的AC编译器默认为AC6,这是新事物。
我以前没用过。尝试使用AC5。
0错误和0警告。棒极了。
如果您刚刚在RTE配置期间错过了Framework和RCC,则直接编译时将出现多个错误和数十条警告。如果遇到此问题,可以阅读我的上一篇文章。
说起。在项目配置中,将AC6更改为AC5版本,然后保存并编译项目。
此时,您会发现相同的错误为0,警告为0,因为AC5会自动添加回您错过的Framework和RCC。 AC6更严格。
如果您没有添加它,它将不会主动为您添加它。它认为您不需要它。
如果更改为AC5,执行编译,然后再切换回AC6,会发生什么情况?它仍然是0错误和0警告。太神奇了,不是吗?为什么它没有报告数据分配类型不同的警告?注意以下位置的变化。
刚构建时,默认为所有警告。更改为AC5并编译一次后,我又切换回类似AC5的警告。
可选的警告显示类型有5个选项。只有AC6默认的“所有警告”选项会引起一堆警告,这很烦人。
这意味着,如果您使用AC6,则可以使警告实施标准像AC5一样不受限制。你明白吗?对于那些对AC6不太了解的人来说,这是一个设计错误。
对于AC6的设计师来说,这就是他们想要的结果。因此,这不是错误。
用户应了解产品设计师的初衷。很好地使用此工具。
另一个关键点是,本文的目的不是真正讨论它是否是BUG,而是与您分享如何快速创建一个新项目并使您的代码0错误0警告。 END本文是21ic论坛Blue V gaoyang9992006的原始作者。
免责声明:本文的内容是在21ic授权后发布的。版权属于原始作者。
该平台仅提供信息存储服务。本文仅代表作者的个人观点,并不代表该平台的立场。
如有任何疑问,请与我们联系,谢谢!。
- 电话:0797-4282799
- 邮箱:sales@tonevee.com
- 联系人:李先生 13510435585
- QQ:
- 地址:江西省赣州市定南县良富工业区电子产业区5栋

