【经验】解决IAR开发EFM32G230 MCU提示identifier__IOM/OM/IM undefined问题
当前,市场上的传统智能锁方案设计多以ST产品居多,部分涉及蓝牙功能的锁具设计可能会采用Nordic的主控方案。为丰富智能锁产品线,避免主控方案单一化风险,笔者公司立项新型智能锁的主控设计方案,而智能锁的关键选型因素即为功耗。SILICON LABS的EFM系列功耗控制表现优异,而且在功能控制、接口资源方面满足应用需求,项目最终确定EFM32的主控方案,选型芯片为EFM32G230。另外,世强方面可以提供免费样品服务,这也加快了主控方案的测试进度。以下为在测试EFM32G230功耗表现的(制作PCB,焊接芯片,实测功耗性能)过程中,解决产生的编译错误的参考方法。
本文描述了使用IAR for ARM调试EFM32G230F128 MCU工程时产生的编译错误分析,主要编译错误提示为“ identifier “__OM“is undefined ”、“ identifier “__IOM“is undefined ”与“ identifier “__IM“is undefined ”。
1. 编译错误出现
使用IAR Embedded Workbench for Arm 8.32,调试EFM32G230F128的SPI总线数据传输,使用了第三方提供的操作源码(包含外设.c/.h文件,以及EFM32相关的支持库文件)。编译错误提示如下图所示。编译之前已经完成编译环境的修改,代码平台的移植、修改工作,以及包括相关头文件的增删操作。
2. 定位错误
使用IAR链接到错误语句定位,问题出现在efm32g230f128.h头文件中的相关定义,如下图所示。
通常来说,诸如“__IOM/__IM/__OM”类似的定义,一般不需要开发者单独定义,多数情况下可直接利用官方提供的支持文件。编译器既然提示未定义,就需要开发者在合适的位置增加语句定义。
3. 编写定义语句
“__IOM/__IM/__OM”在何处定义比较关键,这里我们可以借助熟悉的“__IO/__I/__O”定义来帮忙,在IAR中使用搜索功能,找到“__IO/__I/__O”的关键字,通过跳转功能可发现其定义语句包含在core_cm3.h的头文件中,如下图所示。经搜索,在该头文件中并没有发现相关“__IOM/__IM/__OM”的定义。
4. 增加“__IOM/__IM/__OM”定义
为定义该相关语句,采取了快速查找其他源文件的方式。查找其他版本的 core_cm3.h 文件是否有相关定义。本机安装了Simplicity Studio V4工具,可在其安装目录下找到该头文件:
示例目录:D:\Program Files (x86)\vvs4\developer\sdks\gecko_sdk_suite\v2.7\platform\CMSIS\Include。
该目录下的 core_cm3.h 文件中,可见“__IOM/__IM/__OM”的相关定义,如下图所示。接下来即可把该三句定义复制到IAR编译工程的对应文件中。
5. 编译通过
修改之后,保存,编译通过。此次编译报错主要因MCU的支持文件版本交叉使用导致。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由四月提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
为物联网开发选择最佳的MCU架构
微控制器(MCU)如何在物联网设备中使用?开发人员又该如何为产品选择最合适的MCU解决方案?Silicon Labs产品营销高级经理Gopinath Krishniah先生将通过本篇博文说明MCU的应用知识和开发技巧,并介绍评估选用8位和32位MCU的关键考量。
【经验】如何使用Simplicity Studio与IAR快速测试EFM32G230 MCU低功耗表现?
笔者公司立项新型智能锁的主控设计方案,智能锁的关键选型因素即为功耗。Silicon Labs的EFM系列功耗控制表现优异,而且在功能控制、接口资源方面满足应用需求,项目确定EFM32的主控方案,选型芯片为EFM32G230 MCU。本文介绍利用Simplicity Studio V4与IAR Embedded Workbench for Arm,配合官方例程快速测试EFM32G230低功耗表现。
【经验】MCU EFM32 debug引脚复用引起的代码下载问题分析
在MCU的应用当中,我们经常会利用完MCU的一切资源,比如EFM32中的J-Link调试接口SWDIO和SWCLK,这两个引脚除了作为J-Llink引脚之外,还可以作为通用GPIO来实现其它功能,这样设计并没有问题,但是需要进行代码更新调试或者再次代码下载时,无法进行调试或者下载,具体查看方式为……
芯科科技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 32-bit Microcontroller选型表
SILICON LABS 32位MCU选型,频率24MHz~80MHz,Flash存储4kB~2048kB,RAM存储2kB~512kB。
产品型号
|
品类
|
系列
|
Frequency(MHz)
|
Flash (kB)
|
RAM (kB)
|
Vdd min(V)
|
Vdd max(V)
|
Package Type
|
Package Size (mm)
|
Internal Osc.
|
Debug Interface
|
Cryptography
|
Dig I/O Pins
|
ADC 1
|
DAC
|
USB
|
Cap Sense
|
LCD
|
Temp Sensor
|
Timers (16-bit)
|
UART
|
USART
|
SPI
|
I2C
|
I2S
|
EMIF
|
RTC
|
Comparators
|
EFM32GG290F512-BGA112
|
32位MCU
|
EFM32 Giant Gecko
|
48
|
512
|
128
|
1.98
|
3.8
|
BGA112
|
10x10
|
±2%
|
ETM; SW
|
AES-128 AES-256
|
90
|
12-bit, 8-ch., 1 Msps
|
12-bit, 2 ch.
|
-
|
Cap Sense
|
-
|
Temp Sensor
|
4
|
7
|
3
|
3
|
2
|
1
|
0
|
RTC
|
2
|
选型表 - SILICON LABS 立即选型
【技术】解析超低功耗MCU在智能锁中的低功耗设计及其优势和应用前景
随着物联网的发展,智能锁作为一种便捷安全的门锁解决方案受到了越来越多消费者的欢迎。而超低功耗MCU作为智能锁的核心控制芯片,其低功耗设计成为实现长效使用的关键。本文将介绍超低功耗MCU在智能锁中的低功耗设计,并探讨其优势和应用前景。
【方案】家庭智能锁优选器件方案
描述- 本方案通过采用Silicon Labs 32 位低功耗MCU EFM32G230 系列,Silicon Labs 无线多协议SoC EFR32MG系列、圣邦微高精度低噪声低功耗低压差LDO SGM2034、圣邦微直流H 桥驱动器SGM42507 及相关器件,解决了产品运行功耗大、带载能力弱、电机驱动能力不足导致工作不稳定的问题,有效保证了产品可靠的运行。
型号- MK16-B-2,SI4438,SGM42507,EFR32MG1V132F256GM32,SGM2040,MC-146,SGM3752,SGM31324,HR9110S,SGM42609,BGM12X,FA-20H,THM3010,SI4463,AT8837,CPT112S,A9500,SI1153,EFR32BGXXX,SGM4890,SGM2034,SGM706B,RX8010SJ,FC-135,CC6206,EFM32G230,CC6205
新发布BB5x 8位MCU,报名MCU技术讲座学习嵌入式开发关键技巧
本次技术讲座将详细说明以芯科科技8位和32位MCU,以及无线SoC作为物联网开发通用平台的诸多优势,包括低功耗、高性能、缩减物料清单(BOM)成本,以及可轻松迁移至无线多协议设计等等。
【应用】基于EFM32系列32位MCU系列的新型无磁水表
本文探讨基于Silicon Labs的EFM32系列32位MCU 内部集成的Low Energer Sensor 外设基础上方便实现无磁水表计量技术方案。除水表外,气表、热表采用这种计量方式也非常可行。
【选型】国民技术MCU N32L406RBL7 和 STM32F103RBT6的性能参数对比,引脚可相互兼容
目前国民技术N32L406RBL7 和 STM32F103RBT6都广泛应用于智能锁,医疗检测,工业温控器等领域,由于目前国内芯片价格走高、供货交期不稳定,经常性面临断货危机,本文从硬件兼容性方面对比一下这两款MCU,在未来的市场缺货的情况下给大家相互替换做个参考。
【应用】唯创知音WTV系列语音芯片用于智能锁,节省约40%MCU资源,提供丰富IO口资源及多功能拓展
唯创知音推出的WTV系列语音芯片,单芯片可实现RGB灯光模式+数字按键+红外测距检测+LED显示语音播报等功能;节省了约40%MCU资源,同时,也降低了智能锁产品的开发难度,可针对智能锁设计可以实现不同的个性化功能,提升产品市场竞争力。
【应用】延长寿命!超低功耗MCU助力智能门锁
EFM32JG/PG可选择32位ARMCortex-M3或M4内核,可扩展速率最大到40MHz,具备8通道DMA控制器可应用于指纹锁系统中。
【应用】集成BLE无线通讯的RISC-V MCU CH583M用于智能锁,空闲模式电流仅1.6mA
根据智能锁客户项目需求,本文推荐沁恒推出的集成BLE无线通讯的RISC-V MCU CH583M,有2个全速USB主机和设备控制器及收发器,并支持4个串口、14路ADC、触摸按键检测模块、IIC接口、RTC等丰富的外设资源。
【选型】国产MCU N32L406RBL7兼容STM32L053R8T6,支持4×32Segment LCD显示驱动
STM32L053R8目前广泛应用于智能锁,医疗检测,工业温控器等领域,随着国产替代的热潮,深圳国民技术公司推出了一系列的高性能MCU兼容方案。
SILICON LABS EFM32PG23/EFM32PG22 32-bit Microcontrollers选型表
EFM32PG23 Series 2 and EFM32PG22 Series 2 MCUs
产品型号
|
品类
|
Series
|
Core
|
Max GPIO
|
Max LCD Segments
|
Max Temperature(℃)
|
Vdd Min (V)
|
Vdd Max (V)
|
Frequency(MHz)
|
Flash (kB)
|
RAM (kB)
|
Dig I/O Pins
|
Security
|
ADC 1
|
USB
|
Temp Sensor
|
UART
|
RTC
|
Package Type
|
Package Size (mm)
|
Internal Osc.
|
Debug Interface
|
Cryptography
|
EFM32PG23B200F128IM40
|
Microcontroller
|
EFM32PG23 Series 2
|
ARM Cortex-M33
|
34
|
4 x 20
|
125
|
1.71
|
3.8
|
80
|
128
|
64
|
29
|
Vault
|
16-bit, 12-ch., 1 Msps
|
×
|
Temp Sensor
|
3
|
RTC
|
QFN40
|
5x5
|
2%
|
Secure; SW; ETM
|
AES-1
AES-256
|
选型表 - SILICON LABS 立即选型
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录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 提交需求>
登录 | 立即注册
提交评论