看了两篇比较有用的文章
https://blog.csdn.net/zhangjikuan/article/details/44855081
https://blog.csdn.net/chengdong1314/article/details/72895906
下面是我自己的一些总结
0.把不必要的.c文件和.h文件删掉,keil编译之后看看封装库的.c文件下包含的.h文件是否都是封装所需要的文件
1.要封装的成库的文件中包含global.h头文件,而这个头文件以后很可能会有修改,要把其中关联的内容剥离出来
2.把要封装的成库的文件中包含其他文件的函数和变量通过extern声明。
3.对于结构体变量需要将结构体定义放到不会被修改.h头文件,然后包含进来。
4.对于调用了外部宏定义并且以后工程可能要改变数值的,做个初始化函数赋值引进来。