一、前言
CC2640是TI全新设计的BLE开发平台,是完整的BLE SoC解决方案。芯片内部包含了2.4GHz RF射频,128KB的Flash内存,20KB的SRAM内存,以及丰富的外设。另外,CC2640采用多核架构:一个Cortex-M3内核,一个Cortex-M0以及一个洗衣处理器内核。
支持以下集成开发环境(IDE):
(1)IAR Embedded Workbench for ARM(我使用的)
(2)Code Composer Studio(CCS)
二、IAR安装
IAR Embedded Workbench 是瑞典 IAR Systems公司为微处理器开发的一个集成开发环境。不同的微处理器,需要安装不同内核平台的IAR软件,所以,安装IAR之前,需要根据目标微处理器,选择合适版本的IAR软件。本教程以IAR EMBEDDED WORKBENCH FOR ARM7.8为例,演示IAR安装及破解的全过程。 其他版本IAR安装大同小异。
安装环境: Windows 8 IAR 7.80.4 安装包: EWARM-CD-7804-12495.exe 安装之前建议先将电脑相关杀毒软件退出(强烈建议关闭,特别是腾讯管家),否则,安装过程中,会将部分驱动文件隔离,导致使用时出现不可预测的错误。如果忘记退出杀毒软件,安装过程中提示危险程序时,要给予其相应的权限。不得阻止。
2.1安装步骤
强烈建议新手初次安装时全部全装在默认C盘路径,否则会出现意想不到的问题。
IAR 7.80.4下载地址
2.2IAR 破解 破解工具: IARkg_Unis.exe
破解工具及方法下载地址
三、第一个工程编译错误问题分析
博主查阅网上资料总结下来主要有一下几个问题:
(1)IAR版本不对导致编译错误,ble sdk版本与IAR版本不兼容(少见)
(2)ble sdk安装路径不对,导致IAR在编译时无法找到对应工具
(3)app程序编译通过,但是stack程序编译不通过(是我遇到的问题,网上还没有网友遇到过这种问题,但是很重要)
解决方法:
(1)、(2)中问题导致的编译错误,最笨的解决方法就是全部卸载干净,重新按照默认路径(C盘)安装就可以解决了,适用于新手。但如果有些人就是不想安装在C盘占用空间,你可选择其他盘安装。那对应的IAR在编译前要设置好ti工具的路径地址,如图
选择Tool里面的configure custom argument variables选项,进入可以看到编译过程中调用了C盘ti文件夹下的一些文件和工具,如果有网友将ti文件夹安装在E盘,则对应的将C:改成E:就可以解决。
(3)问题是比较坑的一个问题,博主在编译第一工程文件的时候发现app程序编译通过,但是stack程序编译错误,这说明IAR和ti的安装是没有问题的,那问题在哪里呢??编译结果如下图所示:
可以看出,编译过程中使用lib_search.exe寻找lib,生成lib_linker.cmd,从编译结果看,生成这个文件失败。
在编译stack工程时会出现lib_search快速打开cmd窗口又迅速关闭,然后出现以下现象:
腾讯管家将python27.dll当做是木马自动清除了,但是高手都应该知道,cc2640在编译stack工程的时候会调用python。
所以博主尝试关闭腾讯管家后,果然编译通过了。然后好奇的我又试了试将python27.dll和lib_search.exe添加到腾讯管家的信任区,结果还是不行,所以最后的结果是,如果遇到app编译通过,stack编译出现以上问题,只能关闭腾讯管家或者其他杀毒软件。纯属本人的个人的实践,不对地方多多指教。谢谢