【经验】EFM32、EFR32 如何设置一个 1ms 的定时器
Silicon Labs 提供了 MCU 及各种 wireless SoC 芯片,广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。定时器在这些产品中应用非常广泛,不管是各种纯软件相关的任务管理还是硬件的 pwm 输出,都对定时器的精度都有较高要求;下面我们以一个具体的例子来说明如何初始化EFM32、EFR32一个特定时间的定时器。
//定时器中断处理函数,中断向量表已经将此函数与中断相关联,此处只需定义即可
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 是一个整数,我们在计算式需要考虑准确性以及实际取值范围,因此频率(分频)需要动态调整,以得到最准确时间。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由xiaoyangfengle提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关研发服务和供应服务
相关推荐
为物联网开发选择最佳的MCU架构
微控制器(MCU)如何在物联网设备中使用?开发人员又该如何为产品选择最合适的MCU解决方案?Silicon Labs产品营销高级经理Gopinath Krishniah先生将通过本篇博文说明MCU的应用知识和开发技巧,并介绍评估选用8位和32位MCU的关键考量。
【经验】你还在用蛮力操作MCU位反转吗?试试RBIT吧,巧远胜于拙
以Silicon Labs EFM32GG11为例,在ARM Cortex M系列CPU上的(32位)字中的位首先排序为最高有效位(MSB),其中MSB是最左边的位。软件通常以这种方式格式化数据,例如,当MSB为1时,有符号数字为负数。但是在某些特殊的场景下可能需要高低位反转,例如LCD的像素操作。EFM32GG11上有一个及其简单的办法,其内部函数为__RBIT(),专门用来做位反转。
【经验】32位MCU EFM32系列中断分组及优先级设置方式
Silicon Labs的32位MCU EFM32系列广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。中断是一个MCU中比较核心的部分,在实时性要求比较高、功耗低的场合经常需要中断的配合,中断优先级是根据中断事件的重要性和紧迫程度做出的一个设置,系统先响应优先级高的中断请求,再响应优先级低的中断请求。
SILICON LABS ZIGBEE 无线 Gecko SoC选型表
EFR32MG无线 Gecko SoC 是在 IoT 设备上实现节能多协议连网的理想之选。芯片解决方案结合了 76.8MHz ARM和高性能 2.4GHz 无线电,旨在为 IoT连接应用提供行业领先的节无线 SoC。
产品型号
|
品类
|
Protocol Stack
|
Frequency Band @ Max TX Power(GHz@dBm)
|
Flash(kB)
|
RAM(kB)
|
GPIO(个数)
|
Operating Temperature(℃)
|
Storage Temperature(℃)
|
Pin Count
|
AVDD Supply Voltage(V)
|
EFR32MG12P433F1024GL125-C
|
Gecko Multi-Protocol Wireless SoC
|
Bluetooth LE Zigbee Thread Proprietary, Wi-SUN
|
2.4GHz @ 19dBm, Sub-GHz @ 20dBm
|
1024kB
|
256kB
|
65
|
-40℃~85℃
|
-50℃~150℃
|
BGA125
|
1.8V~3.8V
|
选型表 - SILICON LABS 立即选型
SILICON LABS Matter 无线SoC选型表
EFR32MG24 无线 SoC 是使用 Matter、OpenThread 和 Zigbee 进行网状物联网无线连接的理想选择
产品型号
|
品类
|
Protocol Stack
|
MAX TX Power (dBm)
|
Flash(kB)
|
RAM(kB)
|
GPIO(个数)
|
Secure Vault
|
IADC High-Speed/High-Accuracy
|
Multi Vector Processor
|
Max CPU Speed(MHz)
|
Operating Temperature(℃)
|
Storage Temperature(℃)
|
Pin Count
|
AVDD Supply Voltage(V)
|
EFR32MG24B310F1536IM48-B
|
Wireless SoC
|
Matter,Zigbee,Thread,Bluetooth 5.3
|
10dBm
|
1536kB
|
256kB
|
28
|
High
|
IADC High-Speed/High-Accuracy
|
Multi Vector Processor
|
78.0MHz
|
-40℃~125℃
|
-50℃~150℃
|
QFN48
|
1.71V~3.8V
|
选型表 - SILICON LABS 立即选型
超低功耗MCU智能家居的节能新宠
随着智能家居的快速发展,越来越多的家庭开始享受智能化带来的便捷和舒适。然而,智能家居设备在带来便利的同时,也带来了能耗问题。为了解决这一难题,超低功耗MCU(微控制器)逐渐成为智能家居领域的节能新宠。本文将深度解析超低功耗MCU在智能家居中的应用及其带来的节能效果。
芯科科技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。
Silicon labs 蓝牙SOC选型表
Cortex-M4/M33内核,支持蓝牙5,待机功耗1.2μA;实测网络节点100+,工作温度高达125℃,提供芯片和模块。其最新的1.4μA超低功耗蓝牙SoC EFR32BG22具有主频高达76.8MHz Cortex-M33内核,16位ADC,支持蓝牙5.2与AoX定位和蓝牙Mesh协议。
产品型号
|
品类
|
MCU Core
|
Core Frequency (MHz)
|
Flash
|
RAM
|
Secure Vault
|
Bluetooth
|
Bluetooth 5
|
Bluetooth Mesh
|
Cryptography
|
Output Power Range (dBm)
|
GPIO
|
I²C
|
SPI
|
I²S
|
Receive Sensitivity
|
ADC
|
Comparators
|
Temperature Range (ºC)
|
Package Type
|
Package Size(mm)
|
EFR32BG24B110F1536IM48-B
|
Bluetooth®Wireless SoC
|
ARM Cortex-M33
|
78
|
1536
|
256
|
High
|
5.3
|
Bluetooth 5
|
Bluetooth Mesh
|
AES-128;AES-256;ECC;SHA-1;SHA-2
|
-20 to 10
|
28
|
2
|
3
|
1
|
-97.6DBM(1Mbit/s GFSK)
|
12-bit,SAR,1Msps
|
2
|
-40 to 125
|
QFN48
|
6x6
|
选型表 - SILICON LABS 立即选型
超低功耗MCU在可穿戴设备中的应用前景
随着科技的飞速发展,可穿戴设备已经成为我们日常生活中不可或缺的一部分。这些设备不仅能够监测健康数据、提供个性化服务,还能为用户带来更加便捷的生活体验。然而,随着功能的不断增加,可穿戴设备的功耗问题也逐渐凸显出来。因此,超低功耗MCU(微控制器)在可穿戴设备中的应用前景备受关注。本文将从可穿戴设备的发展趋势、超低功耗MCU的特点以及应用前景等方面进行探讨。
含24位高精度ADC的工业级信号链MCU,可轻松通过EFT抗干扰测试,适用于智能家居领域
晟矽微电子智能家居MCU产品线芯片性能及应用覆盖全面,性价比高,可轻松通过EFT抗干扰测试,产品广泛应用于智能家电、消防安防、健康医疗、智能照明、物联网等领域。本期【晟矽芯】推出的芯片是含24位高精度ADC的MCU——MS32F7223。
EFR32FG23无线SoC系列数据手册
描述- EFR32FG23无线SoC是一款适用于智能家庭、安全、照明、楼宇自动化和计量等低频段物联网应用的理想解决方案。该芯片具有高性能的子GHz无线电,提供长距离通信能力,不受2.4GHz干扰的影响。单晶圆多核解决方案提供了业界领先的网络安全功能、低功耗和高唤醒时间,并集成了功率放大器,以实现物联网设备的下一代安全连接。
型号- EFR32XG23,EFR32FG23B010F128GM40-C,EFR32FG23A010F256GM48-C,EFR32FG23B010F512IM40-C,EFR32FG23A020F512GM48-C,EFR32FG23A021F512GM40-C,EFR32FG23A010F512GM48-C,EFR32FG23A010F256GM40-C,EFR32FG23B010F512IM48-C,EFR32FG23A020F512GM40-C,EFR32FG23A010F512GM40-C,EFR32FG23B021F512IM40-C,EFR32FG23A011F512GM40-C,EFR32FG23B020F512IM40-C,EFR32FG23 FAMILY,EFR32FG23A020F256GM48-C,EFR32FG23B020F512IM48-CR,EFR32FG23,EFR32FG23B020F128GM40-C,EFR32FG23B021F512IM48-C,EFR32,EFR32FG23B020F512IM48-C,EFR32FG23A020F256GM40-C
EFR32BG24无线SoC系列数据手册
描述- 该资料介绍了EFR32BG24无线SoC系列芯片,适用于蓝牙低能耗和蓝牙网状网络连接。该系列芯片具备高性能2.4GHz射频、低功耗、AI/ML硬件加速器和安全保险库等功能,旨在为物联网设备制造商提供智能、稳健且节能的产品。其主要特点包括:32位ARM Cortex-M33核心最高运行频率78MHz,高达1536KB的闪存和256KB的RAM,高性价比设计,支持多种外围设备接口和应用协议。
型号- EFR32BG24B110F1536IM48-B,EFR32BG24B210F1024IM48-B,EFR32BG24A020F1024IM40-B,EFR32XG24,EFR32BG24A010F1024IM48-B,EFR32BG24A020F1024IM48-B,EFR32BG24 FAMILY,EFR32BG24B220F1024IM48-B,EFR32BG24B020F1536IM48-BR,EFR32,EFR32BG24,EFR32BG24A010F1024IM40-B
【IC】芯科科技新品PG26 32位MCU系列,大容量存储 + 快速AI/ML推理满足未来的物联网需求
SILICON LABS最新发布的EFM32PG26(PG26)32位微控制器系列通过提升两倍的闪存和RAM容量,以及GPIO的数量来满足各种低功耗和高性能嵌入式物联网应用需求。面向无线连接功能的需求,PG26可作为EFR32xG26多协议无线SoC平台的软件兼容MCU版本,有助于开发人员基于同一平台设计快速且无缝地升级低功耗蓝牙、Matter、Thread、Zigbee或专有无线连接设计。
EFR32FG28无线SoC系列数据手册
型号- 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
品类:Wireless Gecko SoC
价格:¥8.1764
现货: 101,879
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
拥有IC烧录机20余款,100余台设备,可以烧录各种封装的IC;可烧录MCU、FLASH、EMMC、NAND FLASH、EPROM等各类型芯片,支持WIFI/BT模组PCBA烧录、测试。
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论