首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
飞思卡尔™半导体(Freescale Semiconductor)
» 求救关于mc13192发射功率问题
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
求救关于mc13192发射功率问题
发短消息
加为好友
kingbs
当前离线
UID
343904
帖子
9
精华
0
积分
141
阅读权限
20
在线时间
0 小时
注册时间
2007-5-15
最后登录
2007-6-2
注册会员
UID
343904
性别
男
1
#
打印
字体大小:
t
T
kingbs
发表于 2007-5-15 15:35
|
只看该作者
求救关于mc13192发射功率问题
功率
,
求救
,
发射
求救:
MC13192的MAX_POWER 是3~5dbm而节点每次收到包的LQI都是95dbm左右,
请问那位大侠知道原因,为什么接收到的LQI比最大发射功率还大?
这跟天线增益问题有关吗?
谢谢!
[glow=255,red,2]文字[/glow]
收藏
分享
评分
我爱zigbee!
回复
引用
订阅
TOP
发短消息
加为好友
jimmytan
当前离线
UID
107585
帖子
422
精华
0
积分
917
阅读权限
50
在线时间
0 小时
注册时间
2005-3-30
最后登录
2006-10-8
高级会员
UID
107585
性别
男
2
#
jimmytan
发表于 2007-5-15 16:00
|
只看该作者
我想你确定收到的功率是95dbm吗?mc13192的最大发射功率一般是3.6dbm,接收到的功率根据距离的不同会不一样。mc13192的接收灵敏度是-92dbm,也就是说在-92dbm的信号下,还可以保证1%的误码率。要是低于-92dbm,信号就很弱了,误码率也会很高。一般来说,接收到的信号强度大概是-20dbm到-92dbm.我想你读到的LQI是一个读数,它和dbm之间还是需要换算的。-LQI/2 dbm,所以你的读数是95的话,正确的功率应该是,-95/2dbm.
回复
引用
TOP
发短消息
加为好友
kingbs
当前离线
UID
343904
帖子
9
精华
0
积分
141
阅读权限
20
在线时间
0 小时
注册时间
2007-5-15
最后登录
2007-6-2
注册会员
UID
343904
性别
男
3
#
kingbs
发表于 2007-5-15 22:04
|
只看该作者
非常感谢 jimmytan的回答,你说的很对,忘记做运算了应该是:,-95/2dbm.
我还有个问题,功率调节函数SMACRM中定义, MLMEMC13192PAOutputAdjust(UINT8);有16个等级 0-15,参数也应该是0-15,但是为什么在pub_def.h定义的 MAX_POWER 为100,MIN_POWER 为 50,并且使用 MLMEMC13192PAOutputAdjust(MAX_POWER );而不会发生OVERFLOW的错误吗!
我爱zigbee!
回复
引用
TOP
发短消息
加为好友
jimmytan
当前离线
UID
107585
帖子
422
精华
0
积分
917
阅读权限
50
在线时间
0 小时
注册时间
2005-3-30
最后登录
2006-10-8
高级会员
UID
107585
性别
男
4
#
jimmytan
发表于 2007-5-16 10:32
|
只看该作者
这是两种不同的表达方式,如果用0-15共16个不同的等级表示的话,分别表达不同的功率值,你可以在SMACRM的表中,分别查到对应的功率之。如果用这种方式表示的话,返回值大于15的话,就会OVERFLOW.另外一种表达方式,是用MAX_POWER,MIN_POWER,NOMIAL_POWER表示,这三种功率代表三种不同的功率值,你可以在程序中查到它们分别对应的功率。在pub_def.h中,应用的是MAX_POWER,MIN_POWER,NOMIAL_POWER,都在正常的功率范围之内。
回复
引用
TOP
发短消息
加为好友
kingbs
当前离线
UID
343904
帖子
9
精华
0
积分
141
阅读权限
20
在线时间
0 小时
注册时间
2007-5-15
最后登录
2007-6-2
注册会员
UID
343904
性别
男
5
#
kingbs
发表于 2007-5-16 16:18
|
只看该作者
应该该是两种表达方式,但是,我在分别使用MAX_POWER 和15作参数发送数据包时,接收到的LQI值相差很大,MAX_POWER 比15的接收能量大约小11个dbm,大概只有参数为10的能量值!
请问:
为什么MAX_POWER不是最大的功率值呢?这种模式适合用在什么情况下?
我爱zigbee!
回复
引用
TOP
发短消息
加为好友
jimmytan
当前离线
UID
107585
帖子
422
精华
0
积分
917
阅读权限
50
在线时间
0 小时
注册时间
2005-3-30
最后登录
2006-10-8
高级会员
UID
107585
性别
男
6
#
jimmytan
发表于 2007-5-16 23:46
|
只看该作者
你可以在程序里面去查一下MAX_POWER的具体设置,我记得好像不是最大(4dbm),而是2.7dbm.你可以具体看一下。另外,你在测试的时候,LQI的值可能会跟你的测试环境会有一些误差。你需要保证两种测试下的条件要完全一样,才有比较性。
回复
引用
TOP
发短消息
加为好友
kingbs
当前离线
UID
343904
帖子
9
精华
0
积分
141
阅读权限
20
在线时间
0 小时
注册时间
2007-5-15
最后登录
2007-6-2
注册会员
UID
343904
性别
男
7
#
kingbs
发表于 2007-5-18 15:56
|
只看该作者
jimmytan说的很对,我做比较时,充分考虑到试验环境的问题,保证了试验环境相同,MAX_POWER确实不是最大功率。
调节发射功率的物理层源代码如下,涉及到一些寄存器的值,比较复杂。我看不太懂MAX_POWER的确切值,麻烦高手看看!
UINT8 PLMEMC13192PAOutputAdjust(UINT8 u8RequestedPAValue)
{
UINT16 u16Reg;
UINT8 u8PAValue;
switch (u8RequestedPAValue)
{
case MAX_POWER: /* Sets the PA drive level and PA gain to MAX */
u8PAValue = 0xFF;
break;
case MIN_POWER:
u8PAValue = 0x00; /* Sets the PA drive level and PA gain to MIN */
break;
default:
if (u8RequestedPAValue > 15) {
return OVERFLOW;
}
else {
u8PAValue = u8RequestedPAValue;
}
break;
}
u16Reg = SPIDrvRead(PA_ADJUST_ADDR); /*
* Read the current value of GAIN
* Register
*/
u16Reg &= 0xFF00;
if ((u8RequestedPAValue == MAX_POWER) || (u8RequestedPAValue == MIN_POWER)){
u16Reg |= u8PAValue;
}
else {
u16Reg |= ((u8PAValue << 4) | 0x000C);
}
SPIDrvWrite(PA_ADJUST_ADDR, u16Reg);
return SUCCESS;
}
我爱zigbee!
回复
引用
TOP
发短消息
加为好友
jimmytan
当前离线
UID
107585
帖子
422
精华
0
积分
917
阅读权限
50
在线时间
0 小时
注册时间
2005-3-30
最后登录
2006-10-8
高级会员
UID
107585
性别
男
8
#
jimmytan
发表于 2007-6-4 16:44
|
只看该作者
你可以查看mc1321x RM文档,其中的寄存器12有具体设置功率的说明。
回复
引用
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议