【经验】EFM32、EFR32 如何设置一个 1ms 的定时器

2019-12-24 世强
wireless SoC,MCU,EFM32,EFR32 wireless SoC,MCU,EFM32,EFR32 wireless SoC,MCU,EFM32,EFR32 wireless SoC,MCU,EFM32,EFR32

Silicon  Labs  提供了 MCU 及各种 wireless SoC 芯片,广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。定时器在这些产品中应用非常广泛,不管是各种纯软件相关的任务管理还是硬件的 pwm 输出,都对定时器的精度都有较高要求;下面我们以一个具体的例子来说明如何初始化EFM32EFR32一个特定时间的定时器。

 

//定时器中断处理函数,中断向量表已经将此函数与中断相关联,此处只需定义即可

void TIMER1_IRQHandler(void)

{

  // Acknowledge the interrupt

  uint32_t flags = TIMER_IntGet(TIMER1);

  TIMER_IntClear(TIMER1, flags);

}

 

//定时器初始化流程

void initTimer(void)

{

  uint32_t timerFreq = 0;

  // Initialize the timer    定义一个用于定时器初始化的结构体

  TIMER_Init_TypeDef timerInit =   {                                                                                   \

                                    false,                 /* Enable timer when initialization completes. */           \

                                    false,                /* Stop counter during debug halt. */                       \

                                    timerPrescale1,       /* 1 prescaling. 1分频 */                                        \

                                    timerClkSelHFPerClk,  /* Select HFPER / HFPERB clock. */                          \

                                    false,                /* Not 2x count mode. */                                    \

                                    false,                /* No ATI. */                                               \

                                    timerInputActionNone, /* No action on falling input edge. */                      \

                                    timerInputActionNone, /* No action on rising input edge. */                       \

                                    timerModeUp,          /* Up-counting. */                                          \

                                    false,                /* Do not clear DMA requests when DMA channel is active. */ \

                                    false,                /* Select X2 quadrature decode mode (if used). */           \

                                    false,                /* Disable one shot. */                                     \

                                    false                 /* Not started/stopped/reloaded by other timers. */         \

                                  };

 

  CMU_ClockEnable(cmuClock_TIMER1, true);      //使能 TIMER1 定时器的时钟

 

  // Configure but do not start the timer  初始化定时器 TIMER1

  TIMER_Init(TIMER1, &timerInit);

 

  // Set top value to overflow   设置 top 值,当定时器溢出时产生中断

  TIMER_TopSet(TIMER1, CMU_ClockFreqGet(cmuClock_TIMER1)/ 1000);

 

  // Start the timer 启动定时器

  TIMER_Enable(TIMER1, true);

 

  //enable overflow interrupt 使能溢出中断

  TIMER_IntEnable(TIMER1, TIMER_IEN_OF);

 

  //enable Timer1 interrupt  开启 TIMER1 中断

  NVIC_EnableIRQ(TIMER1_IRQn);

}

 

这里最重要的一点是定时时间的计算,上述代码实现了 1ms 定时器 ,每当 top 值达到 CMU_ClockFreqGet(cmuClock_TIMER1)/ 1000 时,产生1ms中断;计算方法如下:

假设 top 值是m,那么将有如下等式:m/ CMU_ClockFreqGet(cmuClock_TIMER1)s = (1/1000)s,那么 m = CMU_ClockFreqGet(cmuClock_TIMER1)/ 1000;有了这个公式我们举一反三得到具体的 top 值。这个公式的 m 是一个整数,我们在计算式需要考虑准确性以及实际取值范围,因此频率(分频)需要动态调整,以得到最准确时间。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由xiaoyangfengle提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】芯科Simplicity Studio V5编译MCU EFM32PG23时如何调整编译优化等级

EFM32PG23使用Silicon Labs的集成开发环境Simplicity Studio V5进行程序开发。该开发软件中提供EFM32PG23所有外设的例程和硬件的图形化初始化配置界面,让产品开发更容易。

设计经验    发布时间 : 2023-01-04

【经验】你还在用蛮力操作MCU位反转吗?试试RBIT吧,巧远胜于拙

以Silicon Labs EFM32GG11为例,在ARM Cortex M系列CPU上的(32位)字中的位首先排序为最高有效位(MSB),其中MSB是最左边的位。软件通常以这种方式格式化数据,例如,当MSB为1时,有符号数字为负数。但是在某些特殊的场景下可能需要高低位反转,例如LCD的像素操作。EFM32GG11上有一个及其简单的办法,其内部函数为__RBIT(),专门用来做位反转。

设计经验    发布时间 : 2019-12-24

为物联网开发选择最佳的MCU架构

微控制器(MCU)如何在物联网设备中使用?开发人员又该如何为产品选择最合适的MCU解决方案?Silicon Labs产品营销高级经理Gopinath Krishniah先生将通过本篇博文说明MCU的应用知识和开发技巧,并介绍评估选用8位和32位MCU的关键考量。

设计经验    发布时间 : 2024-05-15

芯科科技EFM和EFR系列MCU结合无线与AI/ML打造理想IoT开发平台

Silicon Labs(亦称“芯科科技”)在2023年12月12日举办的MCU专题Tech Talks技术讲座-“EFM和EFR: 面向物联网开发的通用MCU平台”已结束。本次MCU专题技术讲座中,除了回顾我们领先的MCU平台包括EFM8、EFM32和EFR32系列产品组合以外,并专门介绍最新发布的EFM8 BB5x系列8位微控制器新成员-EFM8 BB50。

原厂动态    发布时间 : 2023-12-19

超低功耗MCU智能家居的节能新宠

随着智能家居的快速发展,越来越多的家庭开始享受智能化带来的便捷和舒适。然而,智能家居设备在带来便利的同时,也带来了能耗问题。为了解决这一难题,超低功耗MCU(微控制器)逐渐成为智能家居领域的节能新宠。本文将深度解析超低功耗MCU在智能家居中的应用及其带来的节能效果。

原厂动态    发布时间 : 2024-06-25

博流(Bouffalo Lab)智能物联网芯片选型指南

目录- 智能物联网芯片   

型号- BL602L-20-Q2H,BL602L-10-Q2H,BL602C-20-Q2I,BL706S-10-Q2I,BL706C-10-Q2I,BL606P-08-Q2I,BL706C-22-Q2I,BL604E-20-Q2I,BL702S-10-Q2I,BL606P-65-Q2I,BL702C-10-Q2H,BL702S-A0-Q2I,BL602C-00-Q2I

选型指南  -  博流  - 2022/9/19 PDF 中文 下载

含24位高精度ADC的工业级信号链MCU,可轻松通过EFT抗干扰测试,适用于智能家居领域

晟矽微电子智能家居MCU产品线芯片性能及应用覆盖全面,性价比高,可轻松通过EFT抗干扰测试,产品广泛应用于智能家电、消防安防、健康医疗、智能照明、物联网等领域。本期【晟矽芯】推出的芯片是含24位高精度ADC的MCU——MS32F7223。

产品    发布时间 : 2024-06-08

PG26荣获中国电子报评选为“2024边缘AI MCU优秀案例”

Silicon Labs(亦称“芯科科技”)最新发布的EFM32PG26(PG26) 32位微控制器(MCU)近期荣获中国电子报评选并推荐为“2024边缘AI MCU优秀案例”。PG26通过提升了两倍的闪存和RAM容量以及GPIO的数量,同时还嵌入人工智能和机器学习(AI/ML)硬件加速器来满足各种低功耗和高性能嵌入式物联网应用需求,因而获得行业的认可及青睐。

原厂动态    发布时间 : 2024-06-11

EFR32FG28 Wireless SoC Family Data Sheet

型号- EFR32FG28A120F1024GM48-A,EFR32FG28A010F1024GM48-A,EFR32FG28B310F1024IM48-A,EFR32FG28A110F1024GM48-A,EFR32FG28A110F1024GM68-A,EFR32FG28B310F1024IM68-A,EFR32FG28A322F1024IM68-AR,EFR32FG28B320F1024IM68-A,EFR32FG28A122F1024GM68-A,EFR32FG28A112F1024GM68-A,EFR32FG28B312F1024IM68-A,EFR32FG28A122F1024GM48-A,EFR32FG28B312F1024IM48-A,EFR32FG28,EFR32FG28B322F1024IM68-A,EFR32FG28B320F1024IM48-A,EFR32FG28A112F1024GM48-A,EFR32FG28B322F1024IM48-A,EFR32FG28A120F1024GM68-A,EFR32FG28A010F1024GM68-A

数据手册  -  SILICON LABS  - Rev. 1.1  - October, 2023 PDF 英文 下载 查看更多版本

【经验】查看Wireless SOC EFR32MG系列内部MAC地址的方法总结

EFR32MG系列Wireless SOC是Silicon Labs公司提供的市面上集成度最高、最完善且功能最丰富的 Zigbee 解决方案,结合最可靠并可扩展的高级 Zigbee 协议栈EmberZnet,成为ZigBee产品的首选。工程师在使用EFR32MG开发产品时,经常会需要查看其内部的MAC地址,本文为大家总结查看MAC地址的方法。

设计经验    发布时间 : 2019-09-24

【IC】芯科科技新品PG26 32位MCU系列,大容量存储 + 快速AI/ML推理满足未来的物联网需求

SILICON LABS最新发布的EFM32PG26(PG26)32位微控制器系列通过提升两倍的闪存和RAM容量,以及GPIO的数量来满足各种低功耗和高性能嵌入式物联网应用需求。面向无线连接功能的需求,PG26可作为EFR32xG26多协议无线SoC平台的软件兼容MCU版本,有助于开发人员基于同一平台设计快速且无缝地升级低功耗蓝牙、Matter、Thread、Zigbee或专有无线连接设计。

产品    发布时间 : 2024-04-17

【经验】32位MCU EFM32系列中断分组及优先级设置方式

Silicon Labs的32位MCU EFM32系列广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。中断是一个MCU中比较核心的部分,在实时性要求比较高、功耗低的场合经常需要中断的配合,中断优先级是根据中断事件的重要性和紧迫程度做出的一个设置,系统先响应优先级高的中断请求,再响应优先级低的中断请求。

设计经验    发布时间 : 2019-12-24

【经验】32位MCU EFM32系列在Keil中接收SWO信息的配置步骤

Silicon Labs的32位MCU EFM32系列广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。在研发过程中会有很多繁杂的调试过程,本文主要介绍如何将Jlink的SWO接口上输出的调试信息在Keil中显示出来。

设计经验    发布时间 : 2019-10-16

EFR32xG23 Wireless SoC Reference Manual

型号- EFR32XG23,EFR32FG23,EFR32ZG23

用户指南  -  SILICON LABS  - Rev. 1.1  - January, 2024 PDF 英文 下载

展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 103,858

品牌:SILICON LABS

品类:32位MCU

价格:¥9.8488

现货: 21,867

品牌:SILICON LABS

品类:Wireless SoC

价格:¥31.7756

现货: 88,300

品牌:SILICON LABS

品类:Wireless SoC

价格:¥19.9760

现货: 85,118

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥12.9143

现货: 80,658

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.5305

现货: 80,361

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.9026

现货: 78,555

品牌:SILICON LABS

品类:Wireless SoC

价格:¥35.3989

现货: 76,882

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 72,220

品牌:SILICON LABS

品类:Wireless SoC

价格:¥25.6438

现货: 47,708

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:SILICON LABS

品类:8位MCU

价格:¥39.8000

现货:266

品牌:RENESAS

品类:16-BIT MCU

价格:¥5.5190

现货:910,635

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

TFT LCD液晶显示屏/模组定制

可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。

最小起订量: 1000 提交需求>

MCU烧录/Flash烧录/CPLD烧录

可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。

最小起订量: 1pcs 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面