Zigbee基本通信实验

上传人:gao****ang 文档编号:216216018 上传时间:2023-06-05 格式:DOCX 页数:24 大小:331.81KB
收藏 版权申诉 举报 下载
Zigbee基本通信实验_第1页
第1页 / 共24页
Zigbee基本通信实验_第2页
第2页 / 共24页
Zigbee基本通信实验_第3页
第3页 / 共24页
资源描述:

《Zigbee基本通信实验》由会员分享,可在线阅读,更多相关《Zigbee基本通信实验(24页珍藏版)》请在装配图网上搜索。

1、1. Zigbee 基本通信实验1.1 实验目的 了解实Zigbee的原理及在软件上如何方便使用; 掌握在Windows CE 6.0下进行UART编程的方法。1.2 实验设备 硬件:EduKit-IV嵌入式教学实验平台、Mini270核心子板、Zigbee模块、PC机; 软件:Windows 2000/NT/XP以及Windows平台下的VS2005开发环境。1.3 实验内容 利用 Microsoft Visual Studio 2005 编写一个可运行于 EduKit-IV 型实验箱 Windows CE 6.0 操作系统上的应用程序; 学习和掌握EduKit-IV教学实验平台中通过UAR

2、T与Zigbee模块通信,实现对Zigbee模块 的配置和对等网模式下的通信。1.4 实验原理1.4.1 Zigbee 起源无线网络系统源自美国军方的电子尘埃(eMote)技术,是目前国内、夕卜研究的热点技术之一。 该系统基于IEEE802.15.4规范的无线技术,工作在2.4 GHz或868 / 928 MHz,用于个人区域网和 对等网状网络。ZigBee是一种新兴的近距离、低复杂度、低功耗、低数据速率、低成本的无线网络 技术。它是一种介于红夕无线技术和蓝牙之间的技术提案。主要用于近距离无线连接。它依据 802.15.4标准。在数千个微小的传感器之间相互协调实现通信。这些传感器只需要很少的能

3、量,以 接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以它们的通信效率非常高。相 对于现有的各种无线通信技术,无线ZigBee网络技术将是近距离通信最低功耗和成本的技术。这一 技术目前正向工业、民用方向推广和发展,市场前景广阔。包括国家863计划等项目都在进行相关 的研究工作。因此,本文介绍的基于ZigBee技术的嵌入式无线网络平台,这一无线网络平台可应用 于工业控制、信息家电、安保系统、环境监测、港务运输、煤矿安全、农业自动化和医疗监护设备 等许多行业和设备。具有广泛的适应性。并能弥补其他无线通信技术的不足,保证其安全性,降低 服务成本。1.4.2 ZigBee 网络配置1.

4、网络设备组成。ZigBee网络设备主要包括网络协调器、全功能设备和精简功能设备3类。 网络协调器: 包含所有的网络消息,是3种设备类型中最复杂的一种,存储容量最大、计算能力最强。功能是发送网络信标、建立一个网络、管理网络节点、存储网络节点信息、寻找一对节点间的路由消息 不断地接收信息。 全功能设备:全功能设备(Full-Function Device,FFD)可以担任网络协调者,形成网络,让其他的FFD或 精简功能装置(RFD)联结。FFD具备控制器的功能,可提供信息双向传输。其设备特性有:附带 由标准指定的全部IEEE 802.15.4功能和所有特征;更强的存储能力和计算能力可使其在空闲时起

5、 网络路由器作用;也能用作终端设备。 精简功能设备:精简功能设备(Reduced-Function Device, RFD)只能传送信息给FFD或从FFD接收信息,其 设备特性有:附带有限的功能来控制成本和复杂性;在网络中通常用作终端设备;RFD由于省掉了 内存和其他电路,降低了 ZigBee部件的成本,而简单的8位处理器和小协议栈也有助于降低成本。2. 网络节点类型。从网络配置上,ZigBee网络中有3种类型的节点:ZigBee协调点、ZigBee路由节点和ZigBee 终端节点。 ZigBee 协调点:ZigBee 协调点在 IEEE 802.15.4 中也称为 PAN(Personal

6、Area Network)协调点(ZigBeeCoordinator, ZC),在无线传感器网络中可以作为汇聚节点。ZigBee协调点必须是FFD,一个ZigBee 网络只有一个ZigBee协调点,它往往比网络中其他节点的功能更强大,是整个网络的主控节点。它 负责发起建立新的网络、设定网络参数、管理网络中的节点以及存储网络中节点信息等,网络形成 后也可以执行路由器的功能。ZigBee协调点是3种类型ZigBee节点最为复杂的一种,一般由交流 电源持续供电。 ZigBee 路由节点:ZigBee路由节点(ZigBee Router, ZR)也必须是FFD。ZigBee路由节点可以参与路由发现、

7、消息转发,通过连接别的节点来扩展网络的覆盖范围等。此外,ZigBee路由节点还可以在它的个人 操作空间(POS, Personal Operating Space)中充当普通协调点(IEEE 802.15.4称为协调点)。普 通协调点与ZigBee协调点不同,它仍然受ZigBee协调点的控制。 ZigBee终端节点:ZigBee终端节点(ZigBee EndDevice,ZE)可以是FFD或者RFD,它通过ZigBee协凋点或者 ZigBee路由节点连接到网络,但不允许其他任何节点通过它加入网络,ZigBee终端节点能够以非常 低的功率运行。3. 网络工作模式。ZigBee网络的工作模式可以分

8、为信标(Beacon)和非信标(Non-beacon) 2种模式,信标模式 实现了网络中所有设备的同步工作和同步休眠,以达到最大限度的功耗节省,而非信标模式则只允 许ZE进行周期性休眠,ZC和所有ZR设备必须长期处于工作状态。信标模式下,ZC负责以一定的间隔时间(一般在15ms4min)向网络广播信标帧,2个信标 帧发送之间有16个相同的时槽,这些时槽分为网络休眠区和网络活动区2个部分,消息只能在网络 活动区的各时槽内发送。非信标模式下,ZigBee标准采用父节点为ZE子节点缓存数据,ZE主动向其父节点提取数据的 机制,实现ZE的周期性(周期可设置)休眠。网络中所有父节点需为自己的ZE子节点缓

9、存数据帧, 所有 ZE 子节点的大多数时间都处于休眠模式,周期性的醒来与父节点握手以确认自己仍处于网络 中,其从休眠模式转入数据传输模式一般只需要15ms。1.4.3 ZigBee 的网络拓扑结构ZigBee主要采用了 3种组网方式:星型网、网状网和簇状网。其中网络协调器相当于本试验中 的中心节点,全功能设备相当于本试验中的路由节点,精简功能设备相当于本试验中的终端节点。 如图 1 所示在星型网中,一个功能强大的主器件位于网络的中心,作为网络协调者,其它 的主器件或从器件分布在其覆盖范围内。由于网络协调者定义了整个网络的时分复用和多 址接人方式,因此星型网的控制和同步都比较简单,通常用在设备薯

10、莨比较少的场合。o-图2网状网网络协備仝功能设备(FFDj Rout er):可以去持 2 任何一不懈扌憐构,可以作為网络协商者和普通协商者,并且可以和任何 一种设备进行通信C精简功育掇备(FFD):只支持星型结 2 林 不盲械曲任何协商者,可以和网 络协商者迭行通信,实现简单。图 1 星型网 如图2所示,网状网是由主器件连接在一起形成的,网状网络拓扑结构的网络具有强大的功能,网络可以通过“多级跳”的方式来通信;该拓扑结构还可以组成极为复杂的网络;网 络还具备自组织、自愈功能;.两貉协晦全功能设备(FFD,Kmiter):可以支持 2任何一不懈扌憐构,可以作拘网络协商者和普通协商者,并且可以和

11、任何 一种设备进行通信C精简功盲撮备(皿):只支持星型结 y构,不肓鹹拘任何协商者,可以和网 络协商者迭行通信,实现简单。图3簇状网 星型网和网状网相结合则形成了簇状网,如图 3 所示。各个子网内部都以星型网连接。其主器件又以对等的方式连接在一起。信息流首先传到同一个子网内的主节点。通过网关节点达到更高层的子网,随后继续上传,直至到达中心采集设备。中心采集设备与普通的WPAN设备相比具有更强的处理能力。簇状网可以用于覆盖范围较大的区域,两络协辭全功能设备CFFD, Rout er):可以支持 2任何一不碉扌憐构,可以件曲网络协商者和普通协商者,并且可以和任何 一种设备进行通信C精简功盲撮备(R

12、FD):只支持星型结 2构,不盲賊為任何协商者,可以和网 络协商者送行通信,实现简单。在上述网络拓扑结构中,网络的形成和维护通过设备间的通信自动实现,不需要人 32 干预网络的建立、扩展或者减小。ZigBee网络中的所有设备都被动态分配到IEEE地址。1.4.4 SZ05-ZBEE 嵌入式无线通信模块介绍顺舟科技SZ05系列嵌入式无线通信模块,集成了符合ZIGBEE协议标准的射频收发器和微处理 器,它具有通讯距离远、抗干扰能力强、组网灵活、性能可靠稳定等优点和特性;可实现点对点、 一点对多点、多点对多点之间的设备间数据的透明传输;可组成星型、树型和蜂窝型网状网络结构SZ05系列无线通信模块数据

13、接口为TTL电平收发接口。可以实现数据的广播方式发送、按照目 标地址发送模式,除可实现一般的点对点数据通信功能外,还可实现多点之间的数据通讯,串口通 信使用方法简单便利,可以大大简短模块的嵌入匹配时间进程。SZ05 系列无线通信模块分为中心协调器、路由器和终端节点,这三类设备具备不同的网络功能, 中心协调器是网络的中心节点,负责网络的发起组织、网络维护和管理功能;路由器负责数据的路 由中继转发,终端节点只进行本节点数据的发送和接收。中心协调器、路由器和终端节点这三种类 型的设备在硬件结构上完全一致,只是设备嵌入软件不同,只需通过跳线设置或软件配置即可实现 不同的设备功能。表 1 描述了模块左侧

14、引脚相应标识表 1 模块左侧引脚说明引脚号标识功能备注1GND电源地2+5V电源正5V输入3RX1/TTLTTL电平输入TTL电平输入4TX1/TTLTTL电平输出接用户系统输入RX5SGND串口 RS232信号地信号地6TX2/RS232串口 RS232输出接用户232输入7RX2/RS232串口 RS232输入接用户232输出8系统保留悬空9RESET系统复位低电平复位表 2 描述了模块右侧引脚相应标识表 2 模块右侧引脚说明引脚号标识功能备注1DATA串口数据收发指示低电平点亮,数据收发即闪烁2RUN系统运行指示低电平点亮,间隔1秒闪烁3NET网络指示低电平点亮,入网后点亮。中心节点建网

15、成功点亮,从节点4ALARM系统告警指示低电平点亮5SLEEP低功耗低电平进入低功耗,高电平或悬空正常运行。9CONFIG配置接口低电平有效,或加跳线帽,进入系统配置状态。1.4.5 Zigbee 模块配置SZ05-ZBEE无线通信模块复位后,CONFIG引脚进入低电平状态3秒,系统进入配置状态;高电平或悬空状态则进入工作状态。配置接口是用于对本产品的某些参数进行配置的接口,串口信号为RS232配置如表3所示:表 3 配置模式时串口参数配置串口参数配置值串口波特率38400串口校验NONE数据位8停止位1设备配置选项如下所示:1.通信信道CHANNEL设置如表4所示。表 4 通信信道参数配置C

16、HANNEL选项配置说明42.425GHZ92.450GHZE2.475GHZF2.480GHZGAUTO模式,自动选择最佳信道。2.网络类NET_TYPE设置如表5所示。表5网络类型参数配置NET TYPE 选项网络选项配置说明备注MESH网状网主从网络,网络中心必在同一个网络中,网络STAR星型网须有唯一的中心节点。类型必须设置相同。PEER对等网非主从网,无中心节点。3.设备类型NODE_TYPE设置如表6所示。表 6 设备类型参数配置NODE TYPE 选项设备类型配置说明PAN Coord中心节点ROUTER中继路由兼有终端设备功能END DEVICE终端设备4. 网络号 NET_I

17、D 设置如表 7 所示。表 7 网络号参数配置NET ID选项选项ID范围配置说明NET ID00-FF同个网络中ID必须相同5.数据发送模式TX_TYPE设置如表8所示。表 8 数据发送模式参数配置TX TYPE 选项网络选项配置说明备注BROADCAST广播模式无需目标地址。目标地址为2字节MASTERSLAVE主从模式中心节点必需目标地址,非中心节点无需目标地址。的MAC地址,加在POINTPOINT点对点必需目标地址。数据包前即可。6. 设备地址 MAC_ADDR 设置如表 9 所示。表 9 设备地址参数配置MAC ADDR选项选项ID范围配置说明备注MAC ADDR0000-FFFF

18、中心节点为0000同个网络不能有相同地址节点7.数据类型DATA_TYPE设置如表10所示。表 10 数据类型参数配置DATA TYPE 选项数据类型配置说明ASCIIASCI I 码只在按目标地址发送情况下设置,在广播发送情况下无须设置。HEX16进制8.数据位DATA_BIT设置如表11所示。表 11 数据位参数配置DATA TYPE 选项数据类型配置说明7+1+17位数据+1位校验+1位停止需要跟数据校验设置结合起 来选择。8+0+17位数据+无校验+1位停止8+1+18位数据+1位校验+1位停止9. 波特率设置。10. 数据校验DATA_PARITY设置如表12所示。表 12 数据校验

19、参数配置DATA PARIT选项设备类型配置说明NONE无校验选择匹配的校验类型。EVEN偶校验ODD奇校验11. 串口超时 TIME_OUT 设置。12. 数据源地址 SRC_ADDR 设置如表 13 所示。表 13 数据源地址是否输出参数配置SRC ADR 选项数据源地址配置说明NOT OUTPUT不输出源地址根据应用需要选择是 否输出数据包源地址。HEX16进制输出ASCIIASCII输出 16进制方式输出源地址格式:2字节源地址+有效数据; ASCII方式输出源地址格式:4字节源地址+有效数据。1.4.6 数据发送格式说明1. 数据发送模式如表14 所示。表 14 数据发送模式表模块类

20、型发送模式目标节点发送模式中心节点广播网内所有非中心节点数据直接发送主从或点对点目标地址的节点目标地址+数据非中心节点广播网内所有非中心节点数据直接发送主从中心节点数据直接发送点对点目标地址的节点目标地址+数据2. 数据发送帧格式如表15 所示。表 15 数据发送帧格式发送模式数据编码数据帧格式数据直接发送不需要做任何变动目标地址+数据16进制目标地址2字节目标地址+数据ASCII目标地址4字节目标地址+数据1.4.7 硬件连接Or-r.DATAGNDRUN4-5VbTTRX1ALM1X1SLPGND-S:1X2CNTRX2EKDEHCFGRSIrGBEEO1_4 5 6 7 811 一 1-

21、 一 11 一 1- -1-1-2-3 -4图 4 Zigbee 与 Min270 之间的硬件连接其中引脚11和10分别连到主板的地和电源;引脚12和13分别连接到主板Extern B1区的TXD 和RXD;引脚9和18分别连接到主板Extern B1区的SP1TXD和SP1RXD。1.5 实验步骤1)准备实验环境。将min i270核心子板插到主板接口槽上,将实验平台上电运行。2)按照基于Xscale270嵌入式Windows CE开发实验与实践中所讲的将对应驱动ZGB添 加到系统映像NK.bin中。将此映像烧写到Min270中。3)将两个Zigbee模块分别插到两个试验箱的Extern B

22、区,打开主板电源,等待Windows CE 6.0 系统运行起来。启动后,将Embest_Zigbee.exe (通过编译Embest_Zigbee.exe应用程序工程得到) 通过SD卡拷贝到已经运行了 Windows CE 6.0的EduKit-IV实验平台中运行(也可以通过同步软件 ActiveSync将程序直接传送到实验平台)。双击运行,出现如下图界面:图 5 Embest_Zigbee 应用程序初始界面4)单击上图中的Open按钮,来打开对应串口驱动。若打开成功出现如图6所示界面。图 6 打开串口驱动成功后的界面5)在单击Con figure按钮进入配置界面,如图7所示。界面左边为默认

23、配置选项,可以改变成自己希望的配置。图 7 Zigbee 模块配置参数输入界面6)在单击Apply按钮来提交配置参数,等待配置完成,如图8所示。配置完成后进入如图9所示界面。图 8 Zigbee 模块配置等待界面图 9 Zigbee 模块配置完成界面7)依次配置网内的每个 Zigbee 模块,配置完成后,各模块之间就可以相互通信了。此出将各 Zigbee模块都设置成对等网的终端设备。如下演示地址分别为0001和为0002的两个Zigbee模块 之间的通信。8)首先地址为0001的Zigbee模块给地址为0002的Zigbee模块发送3344。方法为在发送文 本框中输入00023344,然后单击

24、Send按钮,也就将数据发送出去了。如图10所示。图 10 Zigbee 模块发送数据界面9)在地址0001 向 0002数据后,0002会收到数据,如图11所示。图 11 Zigbee 模块接收数据界面10)在对等网模式下,当两个终端节点之间的距离在有效覆盖范围之外时,可以在他们之间加 上若干个路由节点,使得他们之间形成一条通路。之后之两个终端节点就可以通过路由节点转发来 相互通信。1.6 参考程序串口读数据线程函数:这个函数负责不断读取试验箱上C0M1中的数据。串口读线程函数DWORD CSe rial:ReadTh readFunc(LPVOID Ipa ram)CSe rial *ce

25、Se ries = (CSe rial *)lpa ram;DWORD evtMask;BYTE* readBuf = NULL;DWORD actualReadLen = 0;DWORD willReadLen;DWORD dwReadE rrors;COMSTAT cmState;清空缓冲ASSERT(ceSe ries-m_hComm != INVALID_HANDLE_VALUE);清空串口Pur geComm(ceSe ries-m_hComm, PURGE_RXCLEAR | PURGE_TXCLEAR); SetCommMask(ceSe ries-m_hComm, EV_RXC

26、HAR | EV_CTS | EV_DSR ); while(TRUE)if(WaitCommEvent(ceSe ries-m_hComm, &evtMask,O)SetCommMask(ceSe ries-m_hComm, EV_RXCHAR | EV_CTS | EV_DSR ); if(evtMask & EV_RXCHAR)Clea rCommE rror (ceSe ries-m_hComm, &dwReadE rrors, &cmState); willReadLen = cmState.cblnQue;if(willReadLen m_hComm, r eadBuf, will

27、ReadLen, &actualReadLen ,0); if(actualReadLen0)(CEmbest_ZigbeeDlg*)(ceSe ries-m_pP or tOwne r)-r esponse (r eadBuf,actualReadLen);delete r eadBuf;if(WaitFo rSingleObject(ceSe ries-m_hReadCloseEvent,500) = WAIT_OBJECT_0)br eak;return 0;Zigbee应用程序对所读到的串口数据的处理函数:这个函数负责对从串口中读到的数据做进一步处理。其中cfgmode用来标志是否处于

28、配置模式。void CEmbest_ZigbeeDlg:r esponse(BYTE* buf,int bufLen)if(cfgmode = = 1) SetEvent(CFGEvent);elsebufbufLen = O;CSt ring str Show (buf);m_ReceiveData = m_ReceiveData+st rShow; GetDlgItem(IDC_EDIT6)-SetWindowText(m_ReceiveData);获取配置参数函数:这个函数负责将窗体配置界面上的用户输入参数转化为可以直接写到Zigbee模块的数据格式, 并检查参数是否合乎要求。此函数最后

29、有几个判断是用来检查用户输入的参数之间是否有冲突的, 若有则提示用户重新输入。int CEmbest_ZigbeeDlg:getconfig(void)CComboBox *pComboBox;int select;int length;int temp0,temp1,temp2,temp3,temp4;cha r *buffe r= NULL;int i;pComboBox=(CComboBox*)GetDlgItem(IDC_COMBO1);select=pComboBox-GetC ur Sel();switch(select)pComboBox=(CComboBox*)GetDlgIt

30、em(IDC_COMBO2); select=pComboBox-GetC ur Sel();temp1=select;switch(select)cpComboBox=(CComboBox*)GetDlgItem(IDC_COMBO3); select=pComboBox-GetC ur Sel();temp0=select;switch(select)GetDlgItem(IDC_EDIT1)-GetWindowText(temp_id);length=temp_id.GetLength();buffe r=(cha r*)(LPCTSTR)temp_id;if(length!=2)els

31、efor (i = 0;i = 0)&(buffe ri = a)&(buffe ri = A)&(buffe riGetC ur Sel();temp2=select;switch(select)GetDlgItem(IDC_EDIT2)-GetWindowText(temp_cfg.mac_add r); length=temp_cfg.mac_add r.GetLength();buffe r=(cha r *)(LPCTSTR)temp_cfg.mac_add r;if(length!=4)elsefor (i = 0;i = O)&(buffe ri = a)&(buffe ri =

32、 A )&(buffe riGetC ur Sel();switch(select)pComboBox=(CComboBox*)GetDlgItem(IDC_COMBO8);select=pComboBox-GetC ur Sel();temp4=select;switch(select)pComboBox=(CComboBox*)GetDlgItem(IDC_COMBO9);select=pComboBox-GetC ur Sel();switch(select)pComboBox=(CComboBox*)GetDlgItem(IDC_COMBO4);select=pComboBox-Get

33、C ur Sel();temp3=select;switch(select)GetDlgItem(IDC_EDIT3)-GetWindowText(temp_cfg.time_out);length=temp cfg.time out.GetLength();buffe r=(cha r*)(LPCTSTR)temp_cfg.time_out;if(length!=2)AfxMessageBox(_T(time_out ERROR!);return 0;elsefor (i = 0;i = 0)&(buffe ri = a)&(buffe ri = A )&(buffe riGetC ur S

34、el();switch(select)if(temp1 = = 2&temp2 = = 1)if(temp1 = = 2&temp0 = = 0)if(temp3 = = 0&temp4! = 1)|(temp3!=0&temp4= = 1)if(temp0=0)GetDlgItem(IDC_EDIT2)-SetWindowText(_T(0000);return 1;写配置参数线程函数:此函数用来将合乎要求的配置参数依次写入Zigbee模块。DWORD CEmbest_ZigbeeDlg:w ritecfg(LPVOID Ipar am)CEmbest_ZigbeeDlg* pDlg = (

35、CEmbest_ZigbeeDlg*)lpa ram; while(1)SuspendTh read(hTh read_config);WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.Fo rmat(_T(1); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.Fo rmat(_T(SHUNCOM); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); i

36、f(change_flag.mac_addr)pDlg-m_st rSendData.Format(_T(1); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(temp_cfg.mac_add r); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.node_type)pDlg-m_st rSendData.Format(_T(3); pDlg-SendData();WaitF

37、o rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.node_type); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_type)pDlg-m_st rSendData.Format(_T(4); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(_type); pDlg-SendData();Wait

38、Fo rSingleObject(CFGEvent,INFINITE);if(change_id)pDlg-m_st rSendData.Format(_T(5); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(_id); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.channel)pDlg-m_st rSendData.Format(_T(6); pDlg-SendDat

39、a();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.channel); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.data_type)pDlg-m_st rSendData.Format(_T(7); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.data_ty

40、pe); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.tx_type)pDlg-m_st rSendData.Format(_T(8); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.tx_type); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.baud_rate)p

41、Dlg-m_st rSendData.Format(_T(9); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.baud _r ate); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.pa rity)pDlg-m_st rSendData.Format(_T(A); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFI

42、NITE); pDlg-m_st rSendData.F or mat(cfg.pa rity); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); if(change_flag.data_bit)pDlg-m_st rSendData.Format(_T(B); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.data_bit); pDlg-SendData();WaitFo rSingleObje

43、ct(CFGEvent,INFINITE);if(change_flag.time_out)pDlg-m_st rSendData.Format(_T(C); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE); pDlg-m_st rSendData.F or mat(cfg.time_out); pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);if(change_flag.src_add r)pDlg-m_st rSendData.Format(_T(F);pDlg-

44、SendData();WaitFo rSingleObject(CFGEvent,INFINITE);pDlg-m_st rSendData.F or mat(cfg.s rc_add r);pDlg-SendData();WaitFo rSingleObject(CFGEvent,INFINITE);CloseHandle(CFGEvent);Sleep(1000);pDlg-cfgmode = 0;DeviceIoCont rol(m_hZGB,IOCTL_ZGB_CONFIGURE_HIGH,NULL,0,NULL,0,NULL,NULL);DeviceIoCont ro l(m_hZG

45、B,IOCTL_ZGB_RESET,NULL,0,NULL,0,NULL,NULL);CloseHandle (m_hZGB);if(temp_m_nBaud!=38400|temp_m_cPa rity!=0|temp_m_nDatabits!=8)m_bOpenPo rt=FALSE; pDlg-OpenAndClose();pDlg-GetDlgItem(IDC_EDIT4)-SetWindowText(_T(Configu reend!);pDlg-GetDlgItem(IDC_BUTTON1)-SetWindowTextW(_T(Configu re); pDlg-GetDlgItem(IDC_BUTTON1)-EnableWindow(TRUE);1.7 练习题以上实验只是介绍了在对等网模式下,两个终端节点之间的距离在对方的有效覆盖范围内时的 通信。读者可以完成当它们之间的距离太远时,可以在它们之间加上若干个中继路由节点,来实现 两个终端节点之间的通信。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!