下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、乙gBee常见问题目录1、CC2530中串口波特率改为9600时单个数据包来不及接收的解决方案2、使用串口0预编译3、通过修改PANID实现多个网络的共存4、zstack中发现PANID冲突的解决办法1、CC2530中串口波特率改为9600时单个数据包来不及接收的解决方案在调试CC2530过程中发现波特率改为9600时,单个包仅有3个Byte时,接收DMA就会启动因而数据包被强迫拆分成多个,显然只要将接收DMA启动延时做到足够大即可。hal_dma.cHAL_ISR_FUNCTION(halDmaIsr,DMA_VECTOR)#ifHAL_UART_DMAif(HAL_DMA_CHECK_IR
2、Q(HAL_DMA_CH_TX)HalUARTIsrDMA();#endif/HAL_UART_DMA进入定义函数HalUARTIsrDMA();的地方,找到如下所示的地方进行修改。_hal_uart_dma.c#if(HAL_UART_DMA=1)TOC o 1-5 h z#defineHAL_UART_PERCFG_BIT0 x01#defineHAL_UART_Px_RX_TX0 x0C#defineHAL_UART_Px_RTS0 x20#defineHAL_UART_Px_CTS0 x10#else#defineHAL_UART_PERCFG_BIT0 x02#defineHAL_U
3、ART_Px_RTS0 x20#defineHAL_UART_Px_CTS0 x10#defineHAL_UART_Px_RX_TX0 xC0#endif/USART0onP0,Alt-1;soclearthisbit./PeripheralI/OSelectforRx/Tx./PeripheralI/OSelectforRTS./PeripheralI/OSelectforCTS./USART1onP1,Alt-2;sosetthisbit./PeripheralI/OSelectforRTS./PeripheralI/OSelectforCTS./PeripheralI/OSelectfo
4、rRx/Tx./Thetimeouttickisat32-kHz,somultiplymsecsby33.#defineHAL_UART_MSECS_TO_TICKS200/33经过上述修改,可在9600波特率下传送足够大的数据包。2、使用串口0预编译MT_uart.cvoidMT_UartInit()#ifdefined(ZTOOL_P1)|defined(ZTOOL_P2)uartConfig.callBackFunc=MT_UartProcessZToolData;#elifdefined(ZAPP_P1)|defined(ZAPP_P2)uartConfig.callBackFunc=
5、MT_UartProcessZAppData;#elseuartConfig.callBackFunc=NULL;#endif这个是预编译,根据预先定义的ZTOOL或者ZAPP选择不同的数据处理函数。后面的P1和P2则是串口0和串口1。我们用ZTOOL,串口0。我们可以在optionC/C+的Compilerpreprocessor里面看到,已经默认添加ZTOOL_P1预编译。3、通过修改PANID实现多个网络的共存、PANID简介PANID其全称是PersonalAreaNetworkID,即某个网络的标识符,是针对一个或多个应用的网络,般是mesh或者clustertree两种拓扑结构之一
6、。一个网络只有一个PANID,络中的所有节点的panID唯它是由协调器生成的,PANID是可选配置项,用来控制ZigBee路由器和终端节点要加入那个网络。若要在应用中查看PANID,可以通过_NIB.nwkPanId读取即可。、具体操作协议栈中的文件f8wConfg.cfg中的ZDO_CONFIG_PAN_ID参数可以设置为一个00 x3FFF之间的一个值。协调器使用这个值,作为它要启动的网络的PANID。而对于路由器节点和终端节点来说只要加入一个已经用这个参数配置了PANID的网络。如果要关闭这个功能,只要将这个参数设置为0 xFFFFo要更进一步控制加入过程,需要修改ZDApp.c文件中Z
7、DO_NetworkDiscoveryConfirmCB函数。现在分析当关闭PANID的配置功能,即令ZDAPP_CONFIG_PAN_ID为默认的0 xFFFF,那么协调器将根据自身的IEEE地址建立一个随机的PANID(00 x3FFF),XXX经过试验发现,这个随机的PANID并非完全随机,其与IEEE地址有一定的关系:要么就是IEEE地址的低16位,要么就是一个与IEEE地址低16位非常相似的值。如IEEE地址为0 x8877665544332211,PANID很有可能就是2211,或相似的值;IEEE地址为0 x8877665544337777,PANID很有可能就是3777,或其它
8、相似的值。为了便于查找与修改,这里列出Z-stack中相关部分代码Tools下f8wConfig.cfg里面:-DZDAPP_CONFIG_PAN_ID=0 xFFFF4、zstack中发现PANID冲突的解决办法在同一空间如果同时存在多个zigbee网络,可能出现的一个问题就是网络ID(PANID)冲突,这问题会导致zigbee网络出现混乱。在zigbee2004和zigbee2006这个问题没有解决办法,到了zigbee2007协议有了描述,不过各厂家的解决不太一样。就ZSTACK来说,引入了一个叫网络管理节点的概念,通过激活网络管理节点,可以解决PANID冲突的问题。可以按照下图提示的方
9、法,添加宏NWK_MANAGER,来激活网络管理节点。OlitioilsforjidDiegoryFactoryGelrgsC/C-k-kComplEr|IMdb-lileCDrrpiiori厂DiscardUrusecFLUjcisFrepracc斗Lanoage|Cade|OpLiniza.-liccns|OutputIgLur3iELnliirdinclude:dire:Additi4D.lincludedirctcri45:(osibperLino)Ernjr_niE?$fPMJlDLEJV.fPElOJJLEJV.V.V.UHinkri25?3DEfPSJOJ_DIEij.k.ConponeritsMi.filinclula.fPMTZDIRjVA.A.kConPoMnt=WiurettkCC25MEjdFyeincludA_JDefinadEjniliDLE(anapervjwr_srs_FuwctHeOunc!H_gjFPORTEMjEHUG酹灯心EB|Prepro匚吐mmorquipuitj厂Tinpnt.E厂(rolleralsWLin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贾玲励志课件
- 贾宁财务课件
- 2026年组合结构的设计与分析
- 货车转弯培训课件
- 货物及运输工具安全培训课件
- 呼吸系统疾病防治
- 护士日常行为规范解读
- 心血管重症监护护理探讨
- 医疗影像存储与云平台
- 2026年哈尔滨职业技术学院高职单招职业适应性测试参考题库有答案解析
- 2025年及未来5年市场数据中国过氧化苯甲酰行业市场深度分析及发展前景预测报告
- 昆明医科大学研究生学位论文撰写要求及有关规定
- DLT 5056-2024 变电工程总布置设计规程
- 内蒙古自治区包头市2024-2025学年五年级上学期期末语文试卷
- 成都市第七中学2025-2026学年高一上学期11月考试地理试卷
- 餐饮店长菜单研发与餐厅运营盈利模式优化
- 采购部门年度采购计划及预算安排
- 2025年初中美术教师招聘考试试题及参考答案
- 超声波检测二级试题库UT含答案完整版2025
- 高压值班安全培训内容课件
- 网络信息安全运维管理手册
评论
0/150
提交评论