1. 本文目的
这篇笔记主要讲怎么一步步的通过修改ZStack-CC2530-2.3.1-1.4.0自带的Z-Stack项目例子去建立一个的属于自己的Z-Stack的项目模板,这样以后就可以自己用这个模板建立自己的zigbee应用了.
2. 准备条件
我们安装完ZStack-CC2530-2.3.1-1.4.0,在安装目录,默认是: C:\Texas Instruments\ZStack-CC2530-2.3.1-1.4.0\Projects\zstack\Samples,在这个目录里面会有GenericApp,SampleApp, SimpleApp三个项目,并且每个项目里面的Source文件夹里面的.c 和 .h文件将会被作为模板文件,比如:GenericApp\Source里面的三个文件:GenerateApp.c, GenerateApp.h, OSAL_GenericApp.c我们只需要修改它们便可,比如我们新创建的一个项目widget,那么source里面的文件夹将会是:Widget.c, Widget.h, and OSAL_Widget.c
3. 创建一个新的项目
3.1 平台选择
该教程使用的开发板平台是:CC2530DB
3.2 复制并且重命名文件名或者文件夹名字
首先要决定要创建的项目是属于何种类型的。如果你的项目是打算使用串口发送或者接受数据,那么你要从修改TI自带的SerialApp项目开始,在C:\Texas Instruments\ZStack-CC2530-2.3.1-1.4.0\Projects\zstack\Utilities目录里面。如果你的项目是没有任何串口程序的项目,那么你要从修改GenericApp 项目开始,他的目录在:C:\Texas Instruments\ZStack-CC2530-2.3.1-1.4.0\Projects\zstack\Samples
• 此例中我们要复制修改的是GenericApp项目,目录是:C:\Texas Instruments\ZStack-CC2530-2.3.1-1.4.0\Projects\zstack\Samples\GenericApp
• 拷贝文件夹GenericApp并且重命名为Widget文件夹,并且置于同一目录下。
• 我们把Source文件夹里面的GenericApp替换为Widget,如下图:
• 打开Widget项目的CC2530DB的文件夹,如下:
• 然后类似Source文件夹一样,把所有文件名里的GenericApp替换为Widget,如下图:
3.3 编辑项目文件
• 在…\ Widget\CC2530DB文件夹里面,对Widget.eww进行编辑,选中文件,鼠标右击,然后用文本编辑工具打开,对这个文件进行编辑。
• 用文本编辑工具替换功能,把Widget.eww文件里所有的GenericApp替换为Widget,然后保存文件退出。
• 同样的,在这个…\ Widget\CC2530DB文件夹里面,对Widget.ewp进行编辑,选中文件,鼠标右击,然后用文本编辑工具打开,对这个文件进行编辑
• 用文本编辑工具替换功能,把Widget.ewp文件里所有的GenericApp替换为Widget,然后保存文件退出。
• 按照同样的步骤修改WidgetSrc.eww 和WidgetSrc.ewp这些文件。
3.4 修改Source目录下的文件
• 在 …\Widget\Source 文件夹里, 鼠标右击Widget.c,编辑Widget.c文件
• 类似之前的步骤,选择编辑器的替换命令,把所有的GenericApp 替换为Widget
• 接着还要把所有的” GENERICAPP”替换为” WIDGET”,然后保存退出这个文件。
• 按照编辑Widget.c一样编辑Widget.h,替换GenericaApp为Widget ,替换GENERICAPP 为 WIDGET,然后保存文件即可。
• 在 …\Widget\Source文件夹, 鼠标右击OSAL_Widget.c, 编辑这个文件:
• 我们要把所有的GenericApp 替换为 Widget.然后退出。
3.5 测试修改的项目以及各个文件
• 在按照上面的步骤修改好之后,我们要通过重新重构下项目来测试是否我们修改成功了。在…\Widget\CC2530DB文件夹下,我们双击Widget.eww然后就打开了IAR Embedded
Workbench
• 为了重构项目,我们选择项目Widget-Coordinator,鼠标右击,选择重构所有。
• 编译器和连接器将会把一些过程信息显示到下面的Messages框内:
• 如果重构成功的话,那么这个Widget项目便可以作为一个zigbee的模板项目了,通常我们只需要修改Widget.c和Widget.h来创建自己的应用程序。其他的文件的话,全部都是TI公司Z-Stack协议栈自带的代码,我们可以根据需要再修改,不过记住一点,如果以后你升级了Z-Stack的协议栈,记住把你前一个版本修改的协议栈代码给更新到最新的协议栈包里。
文章的脚注信息由WordPress的wp-posturl插件自动生成