在配合客户调试的时候,客户端出现“error:#5: cannot open source input file "cmsis_version.h": No such file or directory”这个错误,翻译过来就是说“无法打开源代码输入文件“cmsis_version.h”:没有这样的文件或目录”;具体如下图1:

图1 报错内容

这个文件在我手里编译是没有问题的,为什么换到客户那边就出现错误了呢?

那我们就开始找错误提示里面提到的“cmsis_version.h”这个文件,(其其他文件也是一样的,只有丢失就先去找文件应该在哪个文件夹下面包含):

从左侧的文件列表查找cmsis_version.h,发现应该在system.c里面,但是错误版本里是没有的,把system.c删掉重新添加一遍,还是没有变化;具体如下图2:

图2  左边正常图,右边缺失图

在keil的上方有一个Manage Run-Time Environment,用来管理运行环境,里面的software component有一个CMSIS选项,勾选了里面的CMSIS core,应该就默认有了CMISIS的环境,但是重新编译以后还是不可以;具体如下图3所示:

图3  CMSIS_CORE选项框

最终编译还是不成功,显示CMSIS文件缺失,仔细观察发现,不能成功编译的这个CMSIS CORE的版本是4.3.0,较低,可以正常编译的是5.5.0,所以先升级一下ARM.CMSIS.PACK,升级之后,重新勾选,发现可以了,说明是CMSIS的版本太低了,具体这个CMSIS的版本可以去哪里找,官网上下载可以,也可以去那个高的keil版本根目录里面的“PACK”里面去找,如下图4所示:

图4 ARM.CMSIS.pack文件夹

OK,就这样就可以解决啦,希望可以帮助到你哦!

推荐文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: