C2530(zigbee)初学者开发:低功耗模式
大家好,小科来为大家解答以上问题。C2530(zigbee)入门开发:低功耗模式这个很多人还不知道,现在让我们一起来看看吧!
解答:
1、 一、低功耗模式介绍
2、 低功耗是现在便携和消费类设备都应该考虑的功能,尤其是电池供电的设备。功耗的把握很重要,直接影响待机时间。比如:我们现在的手机、平板电脑、商务笔记本电脑、无线耳机等消费设备,还有智能井盖、智能路灯,这些不插电源的物联网设备等等。
3、 CC2530支持低功耗模式配置,可通过“电源寄存器”章节进行配置。这里介绍一下CC2530的几种低功耗模式的配置,截图到CC2530中文数据手册。
4、 第二,配置低功耗模式
5、 不同的操作模式(电源模式)支持低功耗操作。各种操作模式指活动模式、空闲模式和电源。
6、 模式1、2和3(PM1-PM3)。通过关闭电源模块避免静态(泄漏)功耗,通过使用门控时钟和关闭振荡器降低动态功耗,实现超低功耗。
7、 三。示例代码
8、 3.1示例代码1
9、 /******************************************************************************
10、 使用睡眠定时器实现低功耗。
11、 ******************************************************************************/
12、 #包括
13、 #定义uint无符号整数
14、 #定义uchar无符号字符
15、 #定义CC2530_延迟15000
16、 #定义RLEDP1_0
17、 #defineYLEDP1_1//LED灯控制IO端口定义
18、 voidcc2530_Delay(void);
19、 voidcc2530_Init_IO_AND_LED(void);
20、 voidcc2530_syspowermode(ucharsel);
21、 /****************************************************************
22、 延迟功能
23、 ****************************************************************/
24、 voidCC2530_Delay(无效)
25、 {
26、 uintI;
27、 for(I=0;i=20)
28、 {
29、 count=0;
30、 RLED=0;
31、 cc2530_syspowermode(3);
32、 //闪烁10次后进入睡眠PM3。
33、 }
34、 //cc2530_Delay();
35、 cc2530_Delay();
36、 //延迟功能是不可见的,只能通过改变系统时钟频率或者DEALY的宏来定义。
37、 //改变小灯的闪烁频率
38、 };
39、 }
40、 /*****************************************
41、 中断处理功能-系统唤醒
42、 *****************************************/
43、 #pragmavector=P0INT_VECTOR
44、 __中断voidP0_ISR(void)
45、 {
46、 if(P0IFG0)
47、 {
48、 P0IFG=0;
49、 }
50、 P0IF=0;
51、 cc2530_syspowermode(4);
52、 }
53、 复制代码;I);
54、 3.2示例代码2
55、 /******************************************************************************
56、 使用睡眠定时器实现低功耗
57、 ******************************************************************************/
58、 #包括
59、 /*****************************************
60、 //定义类型
61、 *****************************************/
62、 #定义uchar无符号字符
63、 #定义uint无符号整数
64、 #定义RLEDP1_0
65、 #定义GLEDP1_1
66、 #定义晶体0
67、 #定义RC1
68、 typedef无符号字符UINT8
69、 typedef无符号字符INT8U
70、 typedef无符号短整型UINT16
71、 typedef无符号短整型INT16U
72、 typedef无符号长整型UINT32
73、 typedef无符号长整型INT32U
74、 voidcc2530_Set_ST_Period(uintsec);
75、 voidcc2530_Init_SLEEP_TIMER(void);
76、 voidcc2530_Delay(uintn);
77、 voidcc2530_LedGlint(void);
78、 charLEDBLINK
79、 voidCC2530_InitLEDIO(void)
80、 {
81、 P1DIR|=0x03//P10和P11被定义为输出。
82、 RLED=0;
83、 GLED=0;//LED灯初始化为熄灭
84、 }
85、 /*****************************************
86、 设置系统主时钟功能
87、 *****************************************/
88、 voidSET_MAIN_CLOCK(来源)
89、 {
90、 如果(来源)
91、 {
92、 CLKCONCMD|=0x40/*RC*/
93、 而(!(clkconsta0x40));/*保持稳定*/
94、 }
95、 其他
96、 {
97、 CLKCONCMD=~0x47/*晶体振荡器*/
98、 while((clkconsta0x40));/*保持稳定*/
99、 }
100、 }
101、 /*****************************************
102、 设置系统低速时钟功能
103、 *****************************************/
104、 voidSET_LOW_CLOCK(源)
105、 {
106、 (来源==RC)?(CLKCONCMD|=0x80):(CLKCONCMD=~0x80);
107、 }
108、 /*********************************************************************
109、 //主函数
110、 *********************************************************************/
111、 无效总管(无效)
112、 {
113、 设置主时钟(晶体);
114、 设置低时钟(晶振);
115、 cc2530_InitLEDIO();
116、 led闪烁=0;
117、 RLED=1;
118、 GLED=0;
119、 cc2530_Init_SLEEP_定时器();
120、 cc2530_LedGlint();
121、 cc2530_Set_ST_Period(8);
122、 while(1)
123、 {
124、 if(LEDBLINK)
125、 {
126、 cc2530_LedGlint();
127、 cc2530_Set_ST_Period(8);
128、 GLED=!GLED;
129、 led闪烁=0;
130、 }
131、 cc2530_Delay(100);
132、 }
133、 }
134、 /*****************************************
135、 //初始化睡眠定时器
136、 *****************************************/
137、 voidCC2530_Init_SLEEP_定时器(无效)
138、 {
139、 ST2=0X00
140、 ST1=0X0F
141、 ST0=0X0F
142、 EA=1;//开中断
143、 STIE=1;
144、 STIF=0;
145、 }
146、 /*****************************************
147、 //延时函数
148、 *****************************************/
149、 无效CC2530_延迟(单位编号)
150、 {
151、 uintjj
152、 for(jj=0;jj16);
153、 ST1=(uint8)(睡眠定时器8);
154、 ST0=(uint8)睡眠定时器;
155、 }
156、 #杂注向量=ST_向量
157、 __中断空ST_ISR(空)
158、 {
159、 STIF=0;
160、 led闪烁=1;
161、 };jj);
162、 作者:DS小龙哥
163、 链接:金爵https://号。cn/post/7021694551660167175
164、 来源:稀土掘金
165、 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
166、 审核
本文到此结束,希望对大家有所帮助。
免责声明:本文由用户上传,与本网站立场无关。财经信息仅供读者参考,并不构成投资建议。投资者据此操作,风险自担。 如有侵权请联系删除!
-
上厕所时,发现马桶里的水泛起血色,或是手纸沾着鲜红的痕迹,相信不少人都会心头一紧:"是痔疮犯了?还是……...浏览全文>>
-
最近收到一位患者的留言,说自己这几天总感觉肛门有下坠胀感,特别难受,上网一查,好多信息都指向癌症,这可...浏览全文>>
-
腹痛、腹泻总反复!可能是小肠、大肠在抗议。基于症状特征区分小肠疾病与大肠疾病的具体差异分析:一、核心症状...浏览全文>>
-
近日,中国中医药信息学会肛肠分会·肿瘤分会·治未病分会·河北名医学会肛肠分会·盆底与便秘分会·河北省中...浏览全文>>
-
安徽蚌埠的长安启源E07作为一款备受关注的新能源车型,其价格和配置一直是消费者热议的话题。如果你正考虑入手...浏览全文>>
-
近年来,随着新能源汽车市场的快速发展,插电式混合动力车型逐渐成为消费者关注的焦点。生活家PHEV作为一款备...浏览全文>>
-
在2025款生活家PHEV车型正式上市之前,提前了解相关费用明细对于购车者来说至关重要。这款插电式混合动力车型...浏览全文>>
-
大众途昂作为一款中大型SUV,凭借其宽敞的空间和强劲的动力配置,在市场上一直拥有不错的口碑。对于计划购买20...浏览全文>>
-
阜阳地区的长安启源Q05 2025款车型凭借其时尚的外观设计和丰富的配置,吸引了众多消费者的关注。这款车型作为...浏览全文>>
-
阜阳揽巡作为一款备受关注的中型SUV,凭借其豪华的配置和超值的价格吸引了众多消费者的目光。这款车不仅在外观...浏览全文>>