平头哥剑池CDK教程——硬件无关组件开发

 SDK组件节点下面的组件列表都是与硬件相关的组件

与硬件无关的组件是放在我们工程根节点目录下,我们在根节点目录选择创建一个组件到common package

这样我们可以看到,在我们的工程节点下面,多出了一个packages节点,这个节点就是我们当前工程所依赖的与硬件不相关的所有的组件集合

我们会把一些工程使用到的跟方案本身不相关的逻辑导入到我们的common组件中,我们右击common组件,选择add sourse folder,我们将我们需要导入的目录选中,这样的话就会把我们需要导入的资源全部导入到我们的组件列表中

我们右击option for xxx,去配置该组件

我们需要去配置一下global config选项的include选项,也就是说,这个组件需要对外开放的一些接口,需要在这里去配置出来,一般是一些头文件所在的路径,那么这样的话一个common类型的组件就配置完成。

我们需要把与方案相关的一些资源也导入到我们的SDK工程中,点击方案的add source folder,我们找到外部需要导入的一些资源。

这里我们导入了一个配置文件, 这个头文件是我们整个工程需要用到的

我们右击工程,选择compiler,在global config中,将configs目录路径包含到include中

最后我们把我们需要使用到的main.c文件也复制进来,我们直接把代码复制到src文件夹下的main.c里

这样的话我们就完成了与硬件无关资源的开发配置工作,我们可以看到,一个芯片SDK工程应该是由方案逻辑、平台相关的组件集合以及与平台无关的组件集合组成,这样的话我们在切换不同的平台就可以非常方便。

我们配置完成可以选择编译工程

此时,我们的芯片组件需要更新我们的芯片列表,我们发现编译报错,可以看到是我们cpu选项的问题,cpu选项是在我们芯片组件配置中

在info中我们找到芯片选项,选择工程用到的cpu型号。

 

我们可以看到,程序会报一些头文件找不到的错误

这里的原因是我们对某一些头文件的配置可能是没有配置正确,我们发现这个报错的头文件目录是我们没有进行配置的,我们在芯片的节点中,右击配置选项,在compiler中去包含该目录在我们的搜索路径集下

 

再次编译我们的工程发现又报错,可以看到该错误的意思是board_init的函数没有去定义

这个函数是定义在了我们的board_init.c的应用文件中,之所以没有定义的一个原因是我们链接库的顺序是没有配置正确

解决方法是我们右击工程,在工程设置选项中的linker中的link type选择start-group的方式,点击编译,我们的工程可以正常链接了,这样的话我们就完成了工程的初始配置和开发的工作。

参考视频:

https://www.bilibili.com/video/BV1gA411K7Qr/?p=21&vd_source=77c874a500ef21df351103560dada737

猜你喜欢

转载自blog.csdn.net/qq_42233059/article/details/134948092