RTT与NRF52832移植问题记录

RTT移植到NRF52832官方使用的是SDK13,需要从SDK13移植到SDK15,在RTT移植好的基础上移植SDK15时的修改记录:

1、出现Undefined symbol sdh_req_observers$$Base符号是由于在linker的Misc controls中没有加入--diag_suppress 6330导致

2、在编写Sconscript时需要注意头文件的包含顺序,因为有些头文件有内联函数,内联函数会调用其它头文件中的函数,这个时候其它头文件需要包含在前

3、有时候在某些c文件中,用Scons编译的时候会提示错误,这个时候需要看下系统中是不是有重名的h文件,真正需要的h没有被包含进去导致错误

4、编译的时候c文件与h文件都添加了,但还是提示函数符号未定义,此时有可能是sdk_config文件没有打开相关的驱动库定义

5、SrcRemove并未起作用,原因待分析

6、用Scons编译的时候未能识别s汇编文件,原因待分析,但此时已经可以生成无误的MDK工程文件了

7、startup.c中组件的初始化不应该放在rtthread_startup中,因为初始化组件的时候某些组件需要使用系统信号量等,信号量需要调度器开始后才能使用,通常将组件初始化放在初始化线程中

posted @ 2020-04-03 15:46  yeshenmeng  阅读(858)  评论(0编辑  收藏  举报