无线传感器网络开发环境搭建手册.docx
- 文档编号:5614734
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:37
- 大小:6.28MB
无线传感器网络开发环境搭建手册.docx
《无线传感器网络开发环境搭建手册.docx》由会员分享,可在线阅读,更多相关《无线传感器网络开发环境搭建手册.docx(37页珍藏版)》请在冰豆网上搜索。
无线传感器网络开发环境搭建手册
参考手册
1MEC2440安装Linux系统
MEC2440开发板为ARM开发板,我们使用这块板子来充当网关,可以完成数据采集,指令下发等功能,而且可以使用ARM板子来完成CC2430无法达到的运算功能。
在使用开发板前,应该给开发板烧写操作系统,这样能充分利用操作系统的优点,缩短开发周期,由于Linux具有开源,稳定的特点,该系统中,选择嵌入式Linux作为开发环境。
该章将介绍,Linux系统的烧写。
1.1nandflash存放文件位置介绍
文件名称
起始位置
大小
u-boot
0
40000
环境变量
40000
10000
Kernel
50000
200000
FileSys
250000
3DB0000
1.2使用SJF2440工具烧写bootloader到flash
(1)用25针排线将MEC2440的20针JTAG接口(J3)与JTAG小板的相连,再用并口线将JTAG小板与PC机相连。
然后将/Flash烧写文件夹拷贝到C盘(硬盘的其他地方也行)。
(2)安装giveio驱动,进入“Flash烧写”文件夹下,点击“安装驱动.exe”,将弹出如下界面。
图1-1
先点击“InstallParallelPortDriver”栏目下的“Remove”按纽,然后点击该栏目下的“Install”按纽。
出现“Serviceisinstalledandrun”说明giveio驱动安装成功。
(3)然后点击开始->运行,打开cmd,到存放sjf2440.exe的目录下在命令行输入:
SJF2440.EXT/F:
u-boot.bin如下图:
图1-2
烧写程序所支持的FLASH都列出来了,有AM29LV800(NORFLASH),K9S1208(NAND,64M)等。
(4)NANDFLASH的烧写
图1-3
在出现上面的界面后,我们在“SelecttheFunctiontotest:
”提示下,输入‘0’,然后回车,这时将选择K9S1208进行烧写,显示如图1-3:
接着在“Selectthefunctiontotest:
”提示下,输入“0”,然后回车,选择K9F1208进行烧写,接着在“Inputtargetblocknumber:
”栏下输入偏移地址“0”,显示信息如图1-3:
接着回车,回车后,开始烧写程序,程序烧写完成后,按“2”退出。
关闭电源,拔掉JTAG插头,将PC的串口和开发板的串口0通过串口线连接好,在PC上启动超级终端,并设置波特率为115200,数据位为8,无奇偶校验,停止位为1,出现以下界面,说明bootloader烧写成功。
注意:
不要有其他程序占用选中的串口!
图1-4
1.3TFTP下载内核kernel
用交叉串口线将MEC2440板与用户PC机相连,打开超级终端,设置串口号为用户PC机实际的串口号,波特率设置为115200bps,8位数据位,无奇偶检验,1位停止位。
打开板子电源开关,进入u-boot的命令行模式:
图1-5
输入printenv回车如下可以查看配置信息如下
图1-6
注意serverip=192.168.1.102和ipaddr=192.168.1.3其中serverip为PC的IP地址,ipaddr为目标ARM开发板的IP,要保证这两个IP在同一个网段.如果你的PC机的IP是192.168.1.115而不是192.168.1.102则可以通过手动的方式将你的PC机IP地址修改为192.168.1.103,或者可以输入如下命令来重新设置serverip地址为192.168.1.115命令“setserverip192.168.1.115”,回车然后输入“printenv”回车执行结果如下:
图1-7
发现我们的设置发生了改变.但是如果掉电后,再启动系统,该设置是没有被保存下来的。
我们可以输入命令saveenv将我们的设置保存下来.保存到nandflash中了。
图1-8
注意设置参数的命令格式如下:
Set命令值
也就是printenv显示的内容中的第一个“=”前面的字符串是命令,“=”后面的是值。
大家可以灵活的去模仿,再此不多介绍。
其中有几个重要的命令需要设置如下:
setbootargsroot=/dev/mtdblock2rootfstype=yaffsrwconsole=ttySAC0,115200mem=64Minit=/Linuxrcnoinitrd
setbootcmdnandread3020000050000200000\;bootm30200000
特别注意“;”前面必须要有“\”
别忘了设置后需要saveenv
用交叉网线将板子与用户PC相连,设置好两边的IP后。
打开tftpd32.exe软件,点“Browse”,将“BaseDiretory”设置为指向即将要下载的文件所在的文件夹,(Linux内核镜像是/镜像文件/Images/uImage.bin)
图1-9
点“ShowDir”弹出对话框,可以看到目标文件夹中的所有目标文件:
图1-10
如果要更新
在超级终端的命令行模式下输入“nanderase50000200000”命令,回车,擦除要烧写Linuxkernel的块,擦除成功后界面如下:
图1-11
擦除FLASHOK后再输入“tftp30200000uImage”,回车,将内核文件uImage下载到内存(SDRAM)的0x30200000开始地址,正常只需2-3秒就可下载完成:
图1-12
再输入命令“nandwrite3020000050000200000”,回车,将刚才下载的内核文件写入到NANDFLASH从50000开始的地址空间,此过程需1-2秒来完成:
图1-13
此过程完成后,内核文件uImage已经成功下载到目标板的目标位置。
1.4TFTP更新bootloader
如果需要更新bootloader,可以通过tftp的方式下载更新。
在超级终端的命令行输入“nanderase040000”,回车,擦除nandflash0-40000要烧写bootloader的位置,擦除成功如下图:
图1-14
输入命令“tftp302000000u-boot.bin”,回车将文件系统下载到内存的0x30200000的地址,此过程大概需要几秒钟,操作成功后界面如下:
图1-15
输入命令“nandwrite30200000040000”,回车,将刚才下载到内存的文件写入到FLASH的0到40000的地址空间
图1-16
1.5TFTP下载根文件系统
内核文件下载完成后,再来下载文件系统(文件系统即/镜像文件/Images/mec_root_yaffs),在超级终端的命令行输入“nanderase2500003DB0000”,回车,擦除要烧写文件系统的位置。
擦除成功如下图:
图1-17
输入命令“tftp30200000mec_root_yaffs”,回车(mec_root_yaffs根据实际情况进行替换)将文件系统下载到内存的0x30200000的地址,此过程需要的时间较长,大概需要1分钟左右,操作成功后界面如下:
图1-18
输入命令“nandwrite.yaffs30200000250000a0e840”,回车,将刚才下载到内存的文件写入到FLASH的250000以后的地址空间,文件大小为“a0e840”(注意:
a0e840根据实际情况而定,上图倒数第二行括号中的数字),此过程大概需要1分30秒来完成,完成后仍然在超级终端的命令行模式:
图1-19
此时输入命令“printenv”,回车,按照以下界面设置好所有参数并输入命令“saveenv”保存所设置的参数:
图1-20
设置完成后,对MEC2440Linux系统的更新已经全部完成,现在在超级终端命令行输入“boot”命令,MEC2440板就可以正常启动了。
启动完成后,超级终端界面如下:
图1-21
此时,可以将系统关电,再开机时可以自动启动Linux系统。
2.开发环境搭建
2.1ZIGBee无线网络开发环境搭建
2.1.1IAR开发环境安装
打开目录/软件/,运行EW8051-EV-720H.exe,安装步聚如下:
1.打开IAR软件安装包进入安装界面
2.按照提示步骤执行,一直到授权页面,输入序列号,IAR中有两层序列号,要输入两组
序列号(说明:
须购买IAR软件注册许可证方可进行接下来的安装)。
3.选择安装路径(最好默认,不默认也不影响使用)
4.选择全部安装(Full)。
2.1.2ZigBee仿真器驱动程序安装图解
AR安装完成后,IAR自带了CC2430的仿真下载调试驱动程序,只要找到这个文件就可以安装。
第一次使用仿真器的时候,操作系统会提示找到新硬件,并弹出下面操作图所示的窗口。
用USB线连接ZF-3多功能仿真器与计算机,系统提示发现新硬件,选择-->从列表或指定位置安装-->点击“下一步”-->,选择驱动所在文件夹安装驱动。
具体操作步聚如下:
在IAR的安装路径中找到chipcon文件夹(路径位:
C:
\ProgramFiles\IARSystems\EmbeddedWorkbench4.05Evaluationversion\8051\drivers\chipcon),按系统提示直至完成安装。
上述完成安装后双击“控制面板\系统”图标,,右键点击“设备管理器”按钮,打开设备管理器界面:
显示设备ChipconSRF04EB说明仿真器安装成功
2.1.3辅助软件安装(选择性安装)/物理地址修改/程序下载软件
双击上图开始安装
选择“NEXT”。
点击“Finish”完成安装
从“开始”处点击可打开SmartRFFlashProgrammer软件或已安装在桌面处直接打开。
打开上述已安装好的物理地址软件,把ZF-3多功能仿真器与CC2530模块连接好后与PC机连接,读取物理地址和修改物理地址如下图示:
Read读取ZigBee模块物理(IEEE)地址
Write修改ZigBee模块物理(IEEE)地址
程序下载如下图所示:
选择要下载的程序文件,操作见上图(程序加载前可读出Zigbee模块/CC2530物理地址)
选择好要下载的程序后,点击“Performaction”选项进行程序下载,下载完毕后再按图示修改已下载好程序的ZigBee/CC2530模块物理地址,然后点击WriteIEEE确认修改成功
3.上位机开发
上位机程序是在MicrosoftVisualStudio2008开发平台下开发的,我们所实现的功能是使用上位机接收ZIGBee网关收到的数据。
在进行开发之前需要下载安装此开发平台。
安装包在资料包中。
下面将详细讲述此开发平台的安装使用。
3.1安装
1.双击setup.exe显示界面如下:
单击对话框中的InstallVisualStudio2008进行安装。
2.安装前的准备-加载文件效果如下图:
接着进入第一个安装界面如下:
所有东西都加载完后,询问是否要发送安装体验信息到Microsoft,选不发送,直接点Next。
3.协议与安装密匙
4.选择安装方式,附图如下。
此处询问是选择默认安装方式,还是全部安装方式,或者是自定义的安装方式,这里选择自定义的安装方式,然后Next。
如果选择的是Default或者是Full就会跳过第5步。
这里还可以设置VS2008的安装目录的。
5.选择安装组件,默认情况下在自定义安装方式下面VisualStudio2008帮选择的默认安装组件,也可能根据实际情况来选择安装组件(如果有些没有安装的话,以后还是可以修改的)。
选择好了以后就可以进行安装了,单击Install按钮断续。
如下图。
6.安装过程, 左边是将要安装的组件,左边下面是当前组件的安装进度,右边是VisualStudio2008的一些介绍。
这个.netframework3.5的安装很慢,如下图:
7.安装完成,单击Finish并退出。
安装完成的对话框如下图:
3.2工程的建立
打开VisualStudio2008开发平台,点击菜单项“File”->“New”->“Project”。
然后弹出如下对话框,并指定工程名和工程存储路径。
“Projecttypes”项选择“MFC”;“Templates”项选择“MFCApplication”,然后单击OK按钮。
接着按照以下图示一步一步完成建立。
至此,初步的设置已经完成。
点击Finish按钮完成工程的建立。
三.建立程序
根据整体的功能需求,确定需要的控件按钮,并按如下所示一一添加并关联变量
其中,IP地址是要连接的汇聚结点IP,端口号预设为2350,需要和汇聚结点一致,在设定好IP地址和端口号后可点击“连接”按钮,实现与汇聚结点的TCP/IP连接。
当要断开“连接”时,只需要点击“断开连接”。
命令发送暂时定为动态接收汇聚结点的数据。
其他命令接口留下以后需要开发。
显示区显示的是从汇聚结点接收的数据。
具体的代码部为不一一讲解。
见源程序。
四.实现截图
1.未连接
2.已连接
3.无线传感器网络节点为2个
4.无线传感器网络节点为3个
4.无线传感器网络节点为4个
5.预留命令开发接口
4.ZIGBee协议栈的使用
5.1.认识协议栈
打开协议栈,在工程文件的左边Workspace中可以看到整个协议栈的构架,如图所示:
图5-1
APP:
应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议栈里面一般是以操作系统的任务实现的。
HAL:
硬件层目录,包含有与硬件相关的配置和驱动及操作函数。
MAC:
MAC层目录,包含了MAC层的参数配置文件及其MAC的LIB库的函数接口文件。
MT:
实现通过串口可控各层,于各层进行直接交互。
NWK:
网络层目录,含网络层配置参数文件及网络层库的函数接口文件,APS层库的函数接口。
OSAL:
协议栈的操作系统。
Security:
安全层目录,安全层处理函数,比如加密函数等。
Profile:
AF层目录,包含AF层处理函数文件。
Services:
地址处理函数目录,包括着地址模式的定义及地址处理函数。
Tools:
工程配置目录,包括空间划分及ZStack相关配置信息。
ZDO:
ZDO目录。
ZMac:
MAC层目录,包括MAC层参数配置及MAC层LIB库函数回调处理函数。
ZMain:
主函数目录,包括入口函数及硬件配置文件。
Output:
输出文件目录,这个EW8051IDE自动生成的。
从上面的描述中可以看出,整个协议栈中,对于Zigbee的功能已经全部体现,在次基础上建立一个项目的方法主要是改动应用层。
以下的例子中,我们以一个星形结构的网络为例,使用MEC2440接收到数据,并把数据传输到上位机程序。
5.2实现过程
1.使用IAR打开ZIGBee协议栈如图5-1所示,并连接好下载器,下载器的安装,参考第二章。
2.工作空间选择终端设备,如图5-2所示。
图5-2
3.选择project->make,编译结束后,选择project->debug,将程序下载到终端节点。
4.工作空间选择协调器,如图5-3所示。
图5-3
5.重复第三步,完成了终端节点和协调器节点的程序下载。
6.将终端节点插入数据采集板,协调器节点安装到MEC2440开发板。
7.使用交叉串口连接好计算机和MEC2440(波特率115200,数据位8位,停止位1,无奇偶校验,流控制XON/XOFF),设置好IP地址,并使板子运行/usr/jfj/zig/dev/ttyS2命令开始运行网关程序,详细程序参考/zigbee.c,交叉编译环境搭建以及过程在此不详述。
图5-3
8.打开上位机程序,设置好目标IP地址,即可看到如下结果。
图5-4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 无线 传感器 网络 开发 环境 搭建 手册