我看到MCSDK中有一下几种用来操纵外设的库:CSL, LLD, Platform, 还有就论坛中提供的keystone的一些*.c文件,里面有一些用来操纵外设的函数。
对于这些库之间的关系,我的理解是这样的,不知道对不对:
CSL:最基本的库,用来直接操纵外设
LLD:可以认为是建立在CSL上面,但是添加了多核共享资源的一些互斥机制
platform:主要针对开发板上的各种片外资源,以及一些片上接口
keystone:和csl类似,但是提供了csl中没有提供的外设api
不知道这样理解对不对
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我看到MCSDK中有一下几种用来操纵外设的库:CSL, LLD, Platform, 还有就论坛中提供的keystone的一些*.c文件,里面有一些用来操纵外设的函数。
对于这些库之间的关系,我的理解是这样的,不知道对不对:
CSL:最基本的库,用来直接操纵外设
LLD:可以认为是建立在CSL上面,但是添加了多核共享资源的一些互斥机制
platform:主要针对开发板上的各种片外资源,以及一些片上接口
keystone:和csl类似,但是提供了csl中没有提供的外设api
不知道这样理解对不对
keystone是DSP系列的名字,如keystone 1代,keystone 2代,论坛里提供的是基于CSL库的针对keystone系列DSP的开发例程;
其它的理解都差不多,没什么问题。
谢谢,我指的keystone是只论坛置顶帖子里面cifae_KI_STK_Deyi的一个开发包,里面有很多keystone打头命名的。c和.h文件。请问这个开发包里面的很多外设的库是csl的补充吗?为什么csl没有提供所有的外设库呢
CSL库只是对外设寄存器的封装,便于操作而已,但具体怎么做初始化的流程并没有涉及,所以STK给你提供了一个示范。