ArduinoCore-EFM32:为EFM32HG与Tomu板开发中

需积分: 10 0 下载量 120 浏览量 更新于2024-12-17 收藏 154KB ZIP 举报
资源摘要信息:"ArduinoCore-EFM32:用于EFM32HG和Tomu板的Arduino核心(正在进行许多工作)" 在讨论ArduinoCore-EFM32项目之前,我们首先需要了解什么是Arduino核心(Core)。Arduino核心是Arduino软件架构中不可或缺的一部分,它为特定的微控制器(MCU)提供编程基础和硬件抽象层。核心定义了如何编程微控制器,定义了板级支持(board definitions),并提供了各种库和工具链配置,使得用户能够方便地编写代码和上传至Arduino板。 EFM32HG是Silicon Labs公司推出的一款高效能、超低功耗的ARM Cortex-M0+系列微控制器,具有多种省电模式,适合需要电池供电的应用。它内置了3.3V稳压器,支持无晶体USB功能,这意味着在设计电路时可以减少外部组件的数量。此芯片还具有64 kB的闪存和8 kB的RAM,适用于存储和执行代码。此外,EFM32HG还支持电容式触摸传感器,使得设计更加直观的用户界面成为可能。 Tomu是一个小型开发板,其尺寸与USB拇指驱动器相仿,用于教学和快速原型开发。该项目目标是创建一个极小尺寸的硬件平台,便于开发者探索ARM Cortex-M微控制器的各种功能。Tomu项目特别适用于需要嵌入式设备安全性的场景,例如安全密钥等。 ArduinoCore-EFM32针对EFM32HG和Tomu板提供的Arduino核心正在开发中。这个项目的目标是为这些硬件平台提供一个稳定、功能完备的开发环境。目前,该项目正在进行中,可能会有更多功能陆续添加。 从描述中可以提取到以下知识点: - ARM Cortex-M系列是基于ARM架构的微控制器核心,广泛用于嵌入式系统中。Cortex-M0+是ARM Cortex-M系列中的一员,定位为低成本、低功耗的解决方案。 - USB是一种广泛使用的通用串行总线标准,用以连接计算机与外围设备。无晶体USB的设计能够减小电路板尺寸,降低开发成本。 - 闪存是一种非易失性存储器,用于保存程序代码,即使在断电后数据也不会丢失。在微控制器中,闪存可以用来存储程序固件。 - 电容式触摸传感器是一种感应触摸的传感器,通过检测手指与传感器间电容的变化来检测触摸动作。 - 超低功耗设计在物联网(IoT)设备和便携式设备中尤为重要,这可以显著延长电池寿命并降低能耗。 - LEUART(低能耗UART)、USART(通用同步/异步收发传输器)、MSC(存储控制器)是EFM32HG微控制器支持的不同接口和功能。LEUART允许设备在低功耗模式下工作,而USART支持标准的串行通信协议,MSC用于访问内部或外部存储。 - EEPROM(电可擦可编程只读存储器)是一种可以存储少量数据的非易失性存储器,用于保存配置设置和其他需要持久保存的数据。 在ArduinoCore-EFM32项目中,计划的工作涉及涂鸦其他ARM Cortex-M0+项目的board.txt和platform.txt文件。board.txt文件负责配置板特定的设置,如时钟频率、引脚映射等;platform.txt文件配置编译器、链接器等工具链的具体参数。 此外,libopencm3是一个开源的固件库,它为Cortex-M微控制器提供了丰富的外设库。项目中提到,libopencm3尚未构建所有外设库,这表明开发人员需要为EFM32HG板添加或完善LEUART、USART、MSC等外围设备的库支持。 这个项目不仅是为Arduino爱好者和开发者提供了一个新的硬件平台,也促进了对EFM32微控制器的深入探索和应用。对于想要深入了解ARM Cortex-M系列微控制器以及寻求开发低功耗应用的开发者而言,ArduinoCore-EFM32提供了一个值得期待的机会。