首页 > 解决方案 > 紫蜂<----> CC2530

问题描述

这个问题是关于 zigbee 和 cc2530 的。我买了 2 个 CC2530 模块。我将每个模块连接到一个微控制器(微控制器的 uC 首字母缩写)。其中之一是协调器(C 是 coordinator 的首字母缩写词),另一个是终端设备(E 是 end device 的首字母缩写词)。C 初始化网络 & E 加入 C 的网络。一切都OK。第一个关键问题:POWER SAVING 模式。我能够解决它。POWER SAVING 模式仅适用于 E。第二个关键问题:在 POWER SAVING 模式下发送和接收数据。接收解决了。(接收的意思是:从C到E的数据流)。但是传送!这就是问题。(传输方式:从 E 到 C 的数据流)。在 POWER SAVING 模式下,E 大部分时间处于休眠状态。uC 打算通过 E 发送数据,但 E 处于睡眠状态且不回复 uC。uC 必须先唤醒 E & 然后给它发送数据,这样E就可以传输数据了。怎么叫E起床??????

文档中:HAL_SLEEP_TIMER 可以被睡眠定时器中断、I/O 中断和复位唤醒。

所以我可以通过 I/O 中断唤醒 E。我该怎么做 ??

标签: iarzigbee

解决方案


没人回复我!!!!我找到了答案。但我还没有尝试过。

在文件 ::: hal_board_cfg.h --> 将 HAL_KEY 设置为 TRUE

在文件 ::: hal_key.c --------> 将 HAL_KeyIntEnable 设置为 TRUE

在文件 ::: OnBoard.c --------> InitBoard() 中 --------> 使用 HalKeyConfig(HAL_KEY_INTERRUPT_ENABLE, OnBoard_KeyCallback);

////\\////\\////\\////\\////\\\//////\\\//////\\\ \///////

通过进行这些更改:

P0.1 为外部中断。下降沿。

所以

将 CC2530.P0.1 连接到 uC 引脚之一。uC的这个管脚一定要高。在发送数据之前,uC 切换此引脚,然后 uC 等待大约 1.6 ms,然后 uC 将 uart 数据包发送到 E,然后 uC 切换中断引脚。


推荐阅读