iar - 紫蜂<----> 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。我该怎么做 ??
解决方案
没人回复我!!!!我找到了答案。但我还没有尝试过。
在文件 ::: 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 切换中断引脚。
推荐阅读
- javascript - 按钮文本不会切换
- ruby-on-rails - 如何使用 ruby on rails 转义单引号?
- bash - bash 脚本在执行 scl 命令时失败
- c# - Xamarin.Forms SwipeView CommandParameter 为 null,除非您重新加载 UI HotReload
- python - 有没有办法阻止 next_page 成为无?
- apache - Htaccess 301重定向网址未按预期工作
- sonarqube - 如何在 SonarQube 中查看每个版本的度量
- ip - 给定拓扑的分配地址和子接口应该是什么?
- javascript - 将搜索结果与 JavaScript 对象中的用户输入匹配
- ios - 每次从 Xcode 提交时,是否都会上传按需资源?