热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CC2530CC2592PALNAHGM增强信号

CC2530CC2592PALNAHGM增强信号PA功率放大器一般使能用于发送端,使发送功率放大LNA低噪音放大器一般使能用于接收端,因为在放大微弱

CC2530 CC2592 PA LNA HGM增强信号

PA 功率放大器 一般使能用于发送端,使发送功率放大

LNA 低噪音放大器 一般使能用于接收端 ,因为在放大微弱信号的场合,放大器自身的噪声对信号
的干扰可能很严重,因此希望减小这种噪声,以提高输出的信噪比

HGM 网上资料对这个HGM描述比较少,根据HGM设置对收发的影响,应该是设置1为高增益接收模式,设置0为低增益接收模式(具体什么是高增益低增益,我的理解也许是对信噪比的一个设置(也许有误,这里没必要纠结,以后如果接触了,再去研究))

PA,LNA 以及HGM 在不同场合的逻辑图:
在这里插入图片描述
我们可以知道,当发送端,PA_EN为1,LNA_EN为0;接收端,LNA_EN为1。

如果要实现两个ZIGBEE的通信,一般都是用官方例程(跑ZSTACK协议栈或者简单封装的非ZSTACK的协议栈),一般官方例程非ZSTACK的协议栈例程,发送端发送数据,一般接受端接收到发送端的数据,会返回ACK的确认信息,发送端要确认ACK是否正确,才确定发送是否完成,这种情况,发送端接受端要切换PA_EN LNA_EN。我尝试着去切换,往往会出现错误,这里如果非十分必要,不建议采纳用点对点非ZSTACK协议栈例程去实现信号增强。

.打开《广播组网-无线数据传输》例程(不一定是广播,点播,组播都可以,只要是STACK协议栈的例程都可以)在STACK协议栈例程里,从物理层到应用层,都封装好了,官方也考虑到CC2592的使用,预留了宏定义以及修改引脚的方式,来进行信号接收增强。

说明:我这里PA_EN 对应 P1.1 , LNA_EN 对应P1.0 ,HGM对应P0.7,如果你引脚不同,后会说明

修改如下:

在这里插入图片描述
修改hal_board_cfg.h文件里的#define xHAL_PA_LNA 去掉x

在这里插入图片描述
该文件在MAC/Low Level/System/mac_radio_defs.c
我的PA_EN为 P1.1 , LNA_EN为P1.0(HGM不在这里修改,只修改PA_EN,LNA_EN引脚)
只用修改OBSSELx ,以及引脚IO属性设置。比如,我修改PA_EN为P1.5,只用修改OBSSEL1为OBSSEL5,以及P1SEL &= ~0X20,P1DIR |= 0X20,其他不动。

在这里插入图片描述
在MAC/Low Level/Common下的mac_radio.c位置,在macRadioUpdateTxPower函数中,添加reqTxPower = 0xF5.(该值为最大功率,具体值对应的功率的小,可看下方参考文章链接里的文章)

在这里插入图片描述
在mac_radio_defs.h,找到该位置,将HGM硬件对应pin脚进行更改(我这里,HGM对应的是P0.7,根据你实际线路进行更改)

在这里插入图片描述
将HGM引脚,进行属性设置。根据你具体硬件所连位置而定。

将以上操作完成后,会明显感觉到传输距离以及信号强度变得理想。

参考文章:
1:https://blog.csdn.net/qq_34572705/article/details/80019556?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164733222216780269897031%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164733222216780269897031&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-3-80019556.142v2pc_search_result_control_group,143v4control&utm_term=CC2530HGM&spm=1018.2226.3001.4187

2:https://blog.csdn.net/menghuanbeike/article/details/70756551

如果有问题,请多多指教


推荐阅读
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • JavaWeb中读取文件资源的路径问题及解决方法
    在JavaWeb开发中,读取文件资源的路径是一个常见的问题。本文介绍了使用绝对路径和相对路径两种方法来解决这个问题,并给出了相应的代码示例。同时,还讨论了使用绝对路径的优缺点,以及如何正确使用相对路径来读取文件。通过本文的学习,读者可以掌握在JavaWeb中正确找到和读取文件资源的方法。 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • FeatureRequestIsyourfeaturerequestrelatedtoaproblem?Please ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • python限制递归次数(python最大公约数递归)
    本文目录一览:1、python为什么要进行递归限制 ... [详细]
  • 本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ... [详细]
author-avatar
MICH泪的矿脉AEI
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有