配置:CCS8.3 + CC3200 + SDK1.3.0
踩了一下午的坑,才完整的创建了一个能够用工程。为了方面说明,后面直接使用SDK中的PWM例程中的文件。
一、红色框框为须要注意的地方
二、右键工程,选择添加文件,而后定位到SDK中的pwm例程中,选中三个文件,以下图:
而后点击打开,ccs会提示复制仍是连接到工程中,以下图
这里须要注意:
(1)添加这个main文件以前须要删除建立工程时自动建立的main文件。
(2)若是是添加库文件的话,由于库文件咱们通常不会去改动,因此选择link to files,连接该文件便可,若是是添加后面可能会改动的文件,那么就选择copy files。
这里由于咱们添加的主函数和引脚配置函数,不属于库文件,因此最好选择copy。
三、接下来就是配置工程属性了,主要包括一下几个步骤,
(1)先建立一个路径变量,方便后面使用。
(2)CCS对于工程的配置有两种模式,debug和release,debug模式下生成的bin文件很大,大概是release模式下的10倍还要多(实测debug模式bin文件47k,release只有4k),并且我在debug模式下生成的bin文件下载到板子上以后没法运行,不知道怎么回事。
因此索性刚开始我就把模式改成release模式,不用默认的debug模式。修改方式以下图
(3)优化等级调为off,不须要优化。
(4)添加包含路径,这一步很重要,保证程序编译过程当中编译器能找到正确的头文件。添加以后以下图
固然,若是工程中须要的文件比较多的话,为了便于管理,可能会本身新建文件夹,这时也须要把本身新建的文件夹路径包含进去。
(5)修改堆和栈的大小为0x800。
(6)添加连接器的查找路径
四、重要问题解决
通过上面的配置,一个工程基本上创建了,编译发现没有问题,在线调试也是妥妥的:
可是当想要下载到开发板上的时候,发现release文件夹中没有生成bin文件!
百度了不少,都说须要在build选项卡中添加一段代码
添加的代码具体内容以下:
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"
可是添加完了以后,从新编译仍是没有生成bin文件!
经过对比标准工程的配置,发现了上面配置的一个疏忽的地方:预约义标志,以下图
那么为何须要添加这个预约义标志呢?
经过搜索main文件,会发现主函数中有下面这段代码:
也就是说没有定义ccs的时候,这个函数得不到执行。进一步查看这个函数的功能:
用来为中断向量表分配地址!
那么这个函数的参数就应该是中断向量表了:
那么以前之因此没法生成bin文件,多是由于没有中断向量表!
因此在工程属性选项卡中添加了CCS的预约义标志以后,再次编译,发如今release文件夹中出现了bin文件:
至此,一个完整的工程算是创建了。