TI论坛
直播中

陈鲜孰

7年用户 194经验值
私信 关注
[问答]

请教关于Z-Stack 2530协议栈中EndDevice低功耗休眠设置的问题

Z-Stack 2530协议栈中EndDevice设置为PM2模式,1s唤醒一次,组好网后,协调器发指令控制EndDevice发送红外38K载波,结束后会高3mA电流,不会降下来。测量发送引脚检查是正常的。
我做的38K载波没用定时器,用的是延时,是否会影响?可我的红外接收也使用的是延时,电流不会升。请问这是什么原因?
我的38K载波一个波形是下面函数做的
void Transmit_38K(void)
[
   u8 delay_count;
   PORTOUT = 1;
   delay_count = 22;
   while(delay_count--);
   PORTOUT = 0;
   delay_count = 22;
   while(delay_count--);
]
已确定发送完后发送引脚拉低。
我试过注释掉 PORTOUT = 1;这一行,结果测不会漏电。证明是这里影响的,可以帮忙分析下吗?谢谢

回帖(8)

李果

2018-8-10 10:03:37
如果系统电流是3mA的话,说明PM2应该已经实现了,只是某些IO的电流消耗问题。
你可以在红外发送弄成以后,把IO的输出设置成0,就我们协议栈里面所做的把LED的OFF掉。
举报

陈鲜孰

2018-8-10 10:23:17
引用: wenlonghbo 发表于 2018-8-10 10:03
如果系统电流是3mA的话,说明PM2应该已经实现了,只是某些IO的电流消耗问题。
你可以在红外发送弄成以后,把IO的输出设置成0,就我们协议栈里面所做的把LED的OFF掉。

感谢您的回答,但是我用单片,不加底板测试也是一样,并且比对了其他操作和发送38K载波操作,各个引脚状态均相同。
发送完红外,我把红外发送IO的输出已设置成0,实测也是正常的。
我怀疑是系统时钟的问题。因为相同的延时函数在Router中的时间是EndDevice中的时间的4倍长,就是EndDevice其他操作时时钟未改变,发送38K载波时钟频率是就增大了4倍,但是读取这两种操作时CLKCONSTA的值都是0x00.
举报

李果

2018-8-10 10:37:17
引用: pailisi 发表于 2018-8-10 10:23
感谢您的回答,但是我用单片,不加底板测试也是一样,并且比对了其他操作和发送38K载波操作,各个引脚状态均相同。
发送完红外,我把红外发送IO的输出已设置成0,实测也是正常的。
我怀疑是系统时钟的问题。因为相同的延时函数在Router中的时间是EndDevice中的时间的4倍长,就是EndDevice其他操作时时钟未改变,发送38K载波 ...

你说的3mA持续的时间多少?
有通过示波器测过吗?
举报

陈鲜孰

2018-8-10 10:55:35
引用: wenlonghbo 发表于 2018-8-10 10:37
你说的3mA持续的时间多少?
有通过示波器测过吗?

发送了38K载波后就一直是大3mA(四点几毫安),一直持续,再控制它做其他操作也不会下降。
谢谢了,我们还在测试,有新的进展会立即反馈。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分