灵动微电子

引言

Keil或者IAR为嵌入式开发者提供了非常方便的可视化开发环境,但Keil或者IAR是商业软件,需要购买并注册License才能正常使用(Arm提供的社区版License可以供用户免费使用1年)。另外,仍有用户希望使用命令行的方式编译微控制器工程,这些用户可能来自于Linux用户,也可能是某些定制工具开发包的用户,或者搭建自动化持续集成平台的系统维护工程师。此时,搭建开源的 armgcc 工具集,也是微控制器开发者常用的编译工具解决方案。命令行方式使用的工具,在Linux操作系统中较为常用,但在Windows操作系统中,可以基于 MSYS2 作为模拟命令行工作环境的虚拟终端,配合 armgcc 工具集,搭建微控制器开发环境。

本文讲述基于Windows操作系统,搭建 armgcc 编译环境,并支持编译MindSDK样例工程。

安装 MSYS2 环境

MSYS2 是一系列软件工具和软件库,可用于在Windows操作系统上模拟类似于Linux操作系统的命令行运行环境,并且可以使用部分Linux操作系统的部分命令,用以方便地构建、安装和运行本地的应用程序。

在 MSYS2 的官网(http://www.msys2.org/)上,可下载当前最新的安装包。如图1所示。

1.png

图1 在MSYS2官网下载MSYS2安装包

如图1所示,下载 msys-x86_64-20220904.exe 安装文件后,即可启动安装过程。安装完成后,启动 MSYS2 程序,可以看到MSYS2的命令行交互终端界面,如图2所示。

2.png

图2 运行MSYS的终端界面

安装完之后,可在 MSYS2 环境的终端下,试用Linux下的文件夹查看命令 ls 和显示工作目录命令 pwd,确认 MSYS2 环境可以正常工作。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ ls
MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pwd
/home/MindMotion

在 MSYS2 环境中安装工具

这里使用 make 作为基本的构建系统工具,但为了便于用户编写构建工程文件 makefile ,选用 cmake 作为创建 makefile 文件的工具。MSYS2 环境中的的包管理器已经提供了可用的 make 和 cmake 工具,可用于安装。

在 MSYS2 环境中安装 make 工具

使用 pacman -Ss 命令,在 MSYS2 中查找可用的 make 工具的安装包:

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pacman -Ss make
...
msys/make 4.3-3 (base-devel)
    GNU make utility to maintain groups of programs
...

使用 pacman -S 命令,在 MSYS2 环境中安装 make 工具:

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pacman -S msys/make
resolving dependencies...
looking for conflicting packages...

Packages (1) make-4.3-3

Total Download Size:   0.46 MiB
Total Installed Size:  1.48 MiB

:: Proceed with installation? [Y/n] Y
:: Retrieving packages...
 make-4.3-3-x86_64               466.2 KiB   538 KiB/s 00:01 [###############################] 100%
(1/1) checking keys in keyring                               [###############################] 100%
(1/1) checking package integrity                             [###############################] 100%
(1/1) loading package files                                  [###############################] 100%
(1/1) checking for file conflicts                            [###############################] 100%
(1/1) checking available disk space                          [###############################] 100%
:: Processing package changes...
(1/1) installing make                                        [###############################] 100%
:: Running post-transaction hooks...
(1/1) Updating the info directory file...

运行命令查看版本号,可以确认 make 工具已经安装完成,可以正常使用。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ make --version
GNU Make 4.3
Built for x86_64-pc-msys
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

在 MSYS2 中安装 CMake 工具

使用 pacman -Ss 命令,在 MSYS2 环境中查找 cmake 工具的安装包。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pacman -Ss cmake
...
msys/cmake 3.21.0-1
    A cross-platform open-source make system
...

使用 pacman -S 命令,在 MSYS2 环境中安装 cmake 工具

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pacman -S msys/cmake
resolving dependencies...
looking for conflicting packages...

Packages (6) jsoncpp-1.9.5-1  libarchive-3.6.1-2  librhash-1.4.2-1  libuv-1.42.0-1  pkgconf-1.8.0-1
             cmake-3.23.2-1

Total Download Size:    7.80 MiB
Total Installed Size:  41.22 MiB

:: Proceed with installation? [Y/n] Y
:: Retrieving packages...
 jsoncpp-1.9.5-1-any             101.2 KiB   116 KiB/s 00:01 [###############################] 100%
 libuv-1.42.0-1-x86_64           113.1 KiB  79.1 KiB/s 00:01 [###############################] 100%
 pkgconf-1.8.0-1-x86_64           58.4 KiB  83.0 KiB/s 00:01 [###############################] 100%
 librhash-1.4.2-1-x86_64         116.5 KiB  47.8 KiB/s 00:02 [###############################] 100%
 libarchive-3.6.1-2-x86_64      1138.4 KiB   353 KiB/s 00:03 [###############################] 100%
 cmake-3.23.2-1-x86_64             6.3 MiB  1738 KiB/s 00:04 [###############################] 100%
 Total (6/6)                       7.8 MiB  1965 KiB/s 00:04 [###############################] 100%
(6/6) checking keys in keyring                               [###############################] 100%
(6/6) checking package integrity                             [###############################] 100%
(6/6) loading package files                                  [###############################] 100%
(6/6) checking for file conflicts                            [###############################] 100%
(6/6) checking available disk space                          [###############################] 100%
:: Processing package changes...
(1/6) installing jsoncpp                                     [###############################] 100%
JsonCpp headers and build libraries are now in jsoncpp-devel.
(2/6) installing libarchive                                  [###############################] 100%
(3/6) installing librhash                                    [###############################] 100%
(4/6) installing libuv                                       [###############################] 100%
(5/6) installing pkgconf                                     [###############################] 100%
(6/6) installing cmake                                       [###############################] 100%

尝试查看版本号,可以确认 CMake 工具已经安装完成并可正常使用。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ cmake --version
cmake version 3.23.2  
  
CMake suite maintained and supported by Kitware (kitware.com/cmake).

 在 MSYS2 环境中安装 armgcc 工具集

MSYS2 的包管理器中也包含了 armgcc 的工具集,可以使用pacman搜索 arm-none-eabi-gcc ,找到对应的软件包。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ pacman -Ss arm-none-eabi-gcc
mingw32/mingw-w64-i686-arm-none-eabi-gcc 10.1.0-2 (mingw-w64-i686-arm-none-eabi-toolchain)
    GNU Tools for ARM Embedded Processors - GCC (mingw-w64)
mingw64/mingw-w64-x86_64-arm-none-eabi-gcc 10.1.0-2 (mingw-w64-x86_64-arm-none-eabi-toolchain)
    GNU Tools for ARM Embedded Processors - GCC (mingw-w64)

3.png

图3 在SYS2环境中使用pacman检索 armgcc 工具集

但实际上, armgcc 工具集也提供了Windows操作系统下的可执行文件,因此,这里推荐的做法是,直接下载并解压Windows操作系统的 armgcc 工具集的压缩包,然后在 MSYS2 中引用。这个过程展现了另一种在 MSYS2 环境中集成工具软件的方法,但更重要的是,在Windows操作系统中安装的 armgcc 工具集,同时还可以被其它可用的集成开发环境引用,例如VS Code,这样可以避免重复安装同一个软件包,确保在同一台开发主机上编译器行为的一致性。 

在Arm的官网(https://developer.arm.com/downloads/-/gnu-rm)上,可下载Windows操作系统版本对应的 armgcc 编译器工具包。如图4所示。

4.png

图4 在MSYS2官网下载MSYS2安装包

如图4所示页面中,下载 gcc-arm-none-eabi-10.3-2021.10-win32.zip 文件,解压至Windows文件系统的目录中,例如 C:\gcc-arm-none-eabi-xxxx 目录。然后,在MSYS2的安装目录下的etc目录下,例如 C:/msys64/etc ,在其中profile文件末尾处添加对gcc-arm-none-eabi工具集的引用路径。另外,可在MSYS2运行环境中创建 `armgcc`_DIR`环境变量,后续编译MindSDK的`armgcc`工程时,将会使用 `armgcc`_DIR`环境变量检索`armgcc`编译工具集的路径。

...
  echo "###################################################################"
  echo "#                                                                 #"
  echo "#                                                                 #"
  echo "#                   C   A   U   T   I   O   N                     #"
  echo "#                                                                 #"
  echo "#                  This is first start of MSYS2.                  #"
  echo "#       You MUST restart shell to apply necessary actions.        #"
  echo "#                                                                 #"
  echo "#                                                                 #"
  echo "###################################################################"
  echo
  echo
fi
unset MAYBE_FIRST_START
export PATH="/c/gcc-arm-none-eabi-10.3-2021.10/bin:$PATH"
export `armgcc`_DIR="/c/gcc-arm-none-eabi-10.3-2021.10"

保存更改过的文件后,使用 source 命令,激活对 profile 文件的更新,让更新的内容在 MSYS2 环境中生效。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ source /etc/profile

可查看 PATH 变量的最新值,若添加成功,则可观察到已包含 arm-gcc-none-eabi 的引用路径。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ echo $PATH
/c/gcc-arm-none-eabi-10.3-2021.10/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

可试着查看 arm-gcc-none-eabi 工具的版本号,验证 armgcc 可在 MSYS2 中被正常调用。

MindMotion@DESKTOP-MCR7G5A MSYS ~
$ arm-none-eabi-gcc --version
arm-none-eabi-gcc.exe (GNU Arm Embedded Toolchain 10.3-2021.10) 10.3.1 20210824 (release)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

至此,基于Windows操作系统,在 MSYS2 环境中安装 armgcc 工具链完成。

编译MindSDK样例工程

用户可以在MindSDK的网站上下载适用于 armgcc 工具链创建的工程,即可在 MSYS2 环境中执行编译创建可执行文件。这里以 plus-f5270 开发板上的 hello_world 工程为例。

MindMotion@PF2LD92H MSYS /d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/build/armgcc
$ ls
CMakeLists.txt  armgcc.cmake  build.sh  clean.sh

MindMotion@PF2LD92H MSYS /d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/build/armgcc
$ ./build.sh
-- TOOLCHAIN_DIR: /usr/gcc-arm-none-eabi-10-2020-q4-major
-- BUILD_TYPE: debug
-- TOOLCHAIN_DIR: /usr/gcc-arm-none-eabi-10-2020-q4-major
-- BUILD_TYPE: debug
-- The C compiler identification is GNU 10.2.1
-- The CXX compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The ASM compiler identification is GNU
-- Found assembler: /usr/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc
-- Configuring done
-- Generating done
-- Build files have been written to: /d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/build/armgcc
Scanning dependencies of target my_project.elf
[  2%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/applications/demo_apps/basic/hello_world/main.c.obj
[  5%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/board_init.c.obj
[  8%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/clock_init.c.obj
[ 11%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/boards/plus-f5270/demo_apps/basic/hello_world/pin_init.c.obj
[ 14%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/drivers/hal_power.c.obj
[ 17%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/drivers/hal_pwr.c.obj
[ 20%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/drivers/hal_rcc.c.obj
[ 23%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/drivers/hal_syscfg.c.obj
[ 26%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/adc_1/hal_adc.c.obj
[ 29%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/comp_1/hal_comp.c.obj
[ 32%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/cordic_0/hal_cordic.c.obj
[ 35%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/crc_0/hal_crc.c.obj
[ 38%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/dac_1/hal_dac.c.obj
[ 41%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/dma_1/hal_dma.c.obj
[ 44%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/exti_0/hal_exti.c.obj
[ 47%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/flexcan_0/hal_flexcan.c.obj
[ 50%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/fsmc_0/hal_fsmc.c.obj
[ 52%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/gpio_0/hal_gpio.c.obj
[ 55%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/i2c_0/hal_i2c.c.obj
[ 58%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/i2s_0/hal_i2s.c.obj
[ 61%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/iwdg_0/hal_iwdg.c.obj
[ 64%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/lptim_0/hal_lptim.c.obj
[ 67%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/lpuart_0/hal_lpuart.c.obj
[ 70%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/mds_0/hal_mds.c.obj
[ 73%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/rtc_0/hal_rtc.c.obj
[ 76%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/qspi_0/hal_qspi.c.obj
[ 79%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/spi_0/hal_spi.c.obj
[ 82%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/tim_1/hal_tim.c.obj
[ 85%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/uart_0/hal_uart.c.obj
[ 88%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/usb_0/hal_usb.c.obj
[ 91%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/drivers/wwdg_0/hal_wwdg.c.obj
[ 94%] Building C object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/system_mm32f5277e.c.obj
[ 97%] Building ASM object CMakeFiles/my_project.elf.dir/d/_git_repos/mm32-mcu-sdk/devices/MM32F5277E/armgcc/startup_mm32f5277e.S.obj
[100%] Linking C executable debug/my_project.elf
[100%] Built target my_project.elf

编译成功,创建了 my_project.elf 文件。

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 182

MindSDK是由灵动官方的软件与系统工程团队(Software & System Engineering Team)开发和维护的基于灵动微控制器的软件开发平台。

  • MindSDK包含灵动微控制器所必须的芯片头文件、启动程序、链接命令脚本等源码,以及灵动微控制器外设模块的驱动程序源码,以及大量便于用户使用的软件组件源码和开发工具。

  • MindSDK提供了丰富的样例工程和综合演示工程,便于用户在具体的应用场景中了解驱动程序和软件组件的API的用法,并且可以直接在MindSDK支持的硬件开发板上运行,演示实际的工作情况。

  • MindSDK在灵动主流的微控制器系列间实现了跨平台兼容,同一份样例工程,可以在不同平台之间无缝移植,方便用户在产品选型阶段快速完成评估,选择合适的微控制器。

1.png

在MindSDK的站点:

https://mindsdk.mindmotion.com.cn/

可以下载到目前已经支持的所有搭载灵动微控制器开发板的代码包。

2.png

release-0.7.1, 2023-03-22

在这版发布中,新增了一些支持的硬件设备,并修复了在开发过程中发现的问题。

  • 新增了对MM32A0140系列微控制器的支持(使用MINI-A0140开发板)。

  • 新增了MINI-F0140和MINI-F0040的开发板的支持。

  • 修复了flexcan_1驱动中FLEXCAN_WriteFdTxMb()驱动函数在之前使用了不合适的状态机,可能在某些特殊情况下发送失败的问题。

  • 在uart_0驱动中为UART_Init()函数添加了 XferSignal和EnableSwapTxRxXferSignal两个配置字段,以支持UART外设模块硬件上交换Tx和Rx信号线的问题。

  • 修复了PLUS-F3270开发板上dma_interrupt样例工程中未启动DMA外设时钟的问题。

  • 修复了POKT-F0040, POKT-F0140, PLUS-F3270开发板上iwdg_0样例工程中使用过小的超时时间而导致复位频繁的问题。

release-0.7.1, 2023-03-22

The release 0.7.1 added more hardware devices. It also fixed some issues.

  • Added the new NPI of MM32A0140 (within MINI-A0140 board).

  • Added the new boards of MINI-F0140 & MINI-F0040.

  • Fixed flexcan_1 driver of FLEXCAN_WriteFdTxMb() API issue that using incorrect statement for MB[CODE] register field.

  • Improved the uart driver by adding the new configuration fields of XferSignal and EnableSwapTxRxXferSignal in the API of UART_Init(), to support exchanging the signal of Tx and Rx line of UART module.

  • Fixed the dma_interrupt example issue that the DMA clock was not enabled on PLUS-F3270 board.

  • Fixed iwdg_0 driver examples issue that the period of cycles is too small causing by the improper reload values on POKT-F0040 & POKT-F0140 & PLUS-F3270 boards.

MindSDK完整的changelog,可参见:

https://mindsdk.mindmotion.com.cn/release/changelog

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 82

近日,作为灵动首款车规产品系列,MM32A0144 (MM32A0144C6PM) 获得第三方权威机构的 AEC-Q100 车规级可靠性测试认证。该认证的通过,标志着灵动车规级 MCU 产品的性能与可靠性获得国际安全体系的认证与肯定,并已跻身国内高规格汽车芯片之列。同时,MM32A0144 也通过了由灵动汽车芯片测试验证实验室主导的全流程 AEC-Q100 测试,成功实现国内首家与芯片设计师无缝合作的可靠性测试验证,获得符合车规要求的完整数据分析报告。

在其工业产品 MM32F0140 系列一年内出货量超千万颗之后,MM32A0144 通过全部 28 项与单晶圆集成电路相关的车规认证测试,这体现了灵动股份在车规 MCU 产品设计、制造、验证、测试、及品质管控体系等全方面技术能力的提升,也充分表明灵动芯片的可靠性和安全性。作为灵动最新推出的一款车规芯片,MM32A0144 具有高性能、低功耗、高可靠性等优势,可以满足汽车电子行业的需求。

1.png

关于 AEC-Q100 认证

AEC-Q100 是由汽车零部件工业协会(AEC)开发的一个专门的质量认证体系,旨在保证汽车电子零件的可靠性和安全性,能够确保芯片能够承受汽车应用环境的极端温度、湿度、振动和老化测试。AEC-Q100 认证主要用于防止产品可能出现各种情况或潜在故障状态,引导零部件供应商在开发过程中使用符合规范的芯片。AEC-Q100 严格确认每个芯片案例的质量和可靠性,确认制造商提出的产品数据表。使用目的、功能说明等功能是否满足初始需求,连续使用后的功能和性能是否一致。

此次认证使灵动的车规芯片能够更好地满足汽车行业的要求,从而为汽车电子应用提供高可靠性、高可用性、高性能的芯片技术。在这次认证过程中,灵动的芯片通过了高温/低温/湿度/压力/强迫/强度/可靠性/稳定性/可重复性等严格测试,以保证汽车电子应用的可靠性和可用性。灵动 AEC-Q100 认证的取得,将为汽车电子应用带来更多的可能性,并为汽车用户提供更安全、更可靠的服务,使汽车拥有更多的技术进步和变化。

MM32A0144:灵动首款车规级芯片正式面世!

灵动首款车规级芯片 MM32A0144 正式面世,这标志着灵动正式进军车规芯片领域,也表明灵动将为汽车电子领域带来全新的智能体验。

MM32A0144 系列车规 MCU 基于 72MHz Arm Cortex M0 打造,具有 64KB Flash,8KB SRAM,FlexCAN,高性能 ADC,高级定时器,较高的 ESD 和栓锁 Latch-Up 性能,2.0-5.5V 宽压供电,符合 AEC-Q100 Grade 1,-40~125C 规范,支持多种外设接口,能够满足多种车载技术的硬件要求。

MM32A0144 系列车规 MCU 具备的高可靠性和高性能面向车规应用的通信接口,使之能被广泛引用于车身传感器控制、车辆电池管理、倒车雷达、汽车空调和通风设备、充电管理、仪表和导航协处理器、行人预警与声学车辆警示系统、氛围灯、车窗车门控制、电机控制、车辆诊断等应用场景。

MM32A0144 系列主要特点:

  • 72MHz Arm® Cortex-M0

  • 64KB Flash,8KB SRAM

  • 1 个 12 位 ADC、1 个比较器

  • 1 个 16 位高级定时器、1 个 16 位和 1 个 32 位通用定时器、3 个 16 位基本定时器

  • 3 个 UART 接口(支持 LIN)、 1 个 I2C 接口、 2 个 SPI 或 I2S 接口、 1 个 FlexCAN 接口

  • 工作电压为 2.0V ∼ 5.5V

  • 工作温度范围(环境温度)为 -40℃ ∼ +125℃

  • 符合 AEC-Q100 Grade 1 认证

  • +/-6kV ESD HBM,+/-300mA LU @Ta 125C

  • 内置多种省电工作模式保证低功耗应用的要求

  • 提供 LQFP48、 LQFP32、 QFN32 和 TSSOP20 封装

未来,灵动将继续为汽车电子行业提供更加优质的产品,在车联网、传感器等方面继续推动技术创新,为汽车提供更加安全、智能、绿色体验,从而推动汽车电子行业的发展,持续提升消费者的使用体验。

2.png

MM32A0144C6PM LQFP48 封装已接受批量订单。详情请联络灵动销售和代理商。其他封装形式的车规型号也会陆续推出。

下一步灵动将在年内推出更多款 MM32A 车规产品。更多产品信息请访问 www.mm32mcu.com 。

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 36

2023年2月10日,上海灵动微电子股份有限公司重磅发布MM32G新系列MCU产品。作为广受市场欢迎的MM32F MCU的补充,MM32G系列将为用户提供在效率、平台性、兼容性和可靠性上的更多MM32 MCU选择。

MM32G新系列延续着灵动在Arm MCU生态体系的布局,并拥有从Cortex-M0到STAR-MC1内核的跨度,从入门级的48MHz主频到高达180MHz的主频,并在全系列上新增了多项先进的模拟和数字外设。

1.jpg

▷ MM32 多应用产品家族的新成员MM32G◁

在经过过去三年的产品优化后,灵动已经具备了国内MCU厂商为数不多的从入门级到高性能,及低功耗和面向应用的产品布局。

MM32G的定位是通用MCU类别里的高效系列。MM32G会有两个子系列:

  • MM32G0 – 基于Arm Cortex-M0内核

  • MM32G5 – 基于STAR-MC1内核

MM32G0主频可高达72MHz;工作温度可高达105℃,符合扩展工业级的标准;全系列配备了更高性能的模拟功能,如+-1%精度的HSI高速内部晶振;更先进的通信外设CAN-FD;高达144MHz的高速定时器控制;免外部晶振 XTAL-LESS 的USB接口功能;以及单电源/地设计。

MM32G5提供了更出众的性能,高达180MHz的STAR-MC1,在主频和内核选择上都有一定的提高,以便提供更高性能;全系列标配-40℃~105℃扩展工业级工作温度;除了MM32G0的高性能模拟功能外,额外提供带过采样的12b SAR ADC和12b DAC;标配CAN-FD接口和在部分产品中选配的高精度定时器,以面向智能工业、电机和电源的应用;部分产品的存储器带安全功能,如ECC;和MM32G0类似,也是单电源/地设计。

2.jpg

▷ 灵动首发两款 MM32G01 系列 G0140 & G0160 ◁

G0140 & G0160的主要不同点在于存储器容量以及部分的高级外设。整个MM32G01系列的主要特点是:

  • 72MHz的Arm Cortex-M0

  • -40℃~105℃的扩展工业性工作温度

  • 保留了MM32的宽电压特色:2.0V~5.5V

  • 集成了更多的低功耗外设,如LP UART,LP Timer

  • 在G0160系列上支持XTAL-LESS USB,FlexCAN-FD及I3C从机接口

3.jpg

MM32G01系列所集成的FlexCAN-FD提供了更快的通信速度、更长的数据长度和更多的帧格式等优势;其XTAL-LESS USB 控制器适合用于键盘和鼠标等常见的 USB 设备类应用。

MM32G01的ADC为电机应用做了优化,支持任意序列采样、注入模式、所有转换通道结果可寄存等功能;还配置了功能丰富的144MHz高级定时器。

4.jpg

MM32G 系列配套软硬件平台

灵动的软硬件生态平台会支持到新推出的MM32G系列。硬件工具会沿用Miniboard的设计。为保持与MM32F的软件兼容性,灵动会同时推出LibSamples和MindSDK的软件开发包。LibSamples便于熟悉功能模块独立库和示例的用户,MindSDK为设备、驱动器、开发板和应用程序提供了软件框架,易于移植,加快软件开发和产品上市时间。面向家电需求的IEC60730 Class B安全驱动库认证也在进行中。

MM32G 应用场景

MM32G系列MCU可用于以下应用场景,其中包括:

  • 物联网

小封装,低功耗,低成本

  • 智能家居

EMC/ESD,低功耗,低成本

  • 电机

性价比,先进的外设,105 ℃工作温度

  • 工控传感

存储配比,105 ℃工作温度,ADC 性能,外设丰富

  • 消费电子

小封装,节省外部晶振,低成本

5.jpg

MM32G01 系列中的 MM32G0140 产品将在 2 月中提供样片和开发板,MM32G0160 将在 3 月底正式推出。届时,用户可以通过灵动官网 www.mm32mcu.com、官方代理商渠道或在线推广平台,获得更多信息。

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 28

自12月国内最新防疫政策调整以来,抗疫三年终于要接近尾声了。小编自己和身边的亲友同事也都已经经历或正在经历着“喜羊羊”、“美羊羊”等各种状态。除了各类退烧药、口罩、黄桃罐头之外,血氧仪也成为异常火爆的特需品。

1.jpg

血氧仪示意图

下面,小编就血氧仪的工作原理和所用MCU给大家做个介绍。

血氧仪主要测量指标分别为脉率、血氧饱和度、灌注指数。血氧饱和度是临床医疗上重要的基础数据之一。对于新型冠状病毒感染患者而言,对血氧饱和度的测试,可有效监测呼吸系统异常状况。特别是肺部受到感染的患者,其血氧度会降低,易引发低氧血症。这类情况在体质虚弱,免疫功能缺陷,以及60岁以上老年人等有基础疾病的人身上尤其显著。这类人群随着机体机能的下降,对于疲惫、呼吸不畅等症状的敏感程度降低,以至于当发现病症时,已处于非常虚弱的状态,极易引发危及生命的其他症状。因此,作为有效的预测手段,血氧仪能及时地了解血氧饱和度的情况,若有明显的下降(如,血氧饱和度低于93%),则需及时就医。

以家用指压式血氧仪为例,一个血氧仪一般由MCU、存储芯片、两个控制LED的数模转换器、两个发光二极管驱动等组成。将发光二极管对准指尖被测部位,两个发光二极管释放波长为660纳米的红光和波长为940纳米的红外光,含氧的血红蛋白对这两种波长的吸收率和不含氧的差别很大。利用这个性质,可以计算出两种血红蛋白的比例。在血氧测量时,还原血红蛋白和有氧合血红蛋白,通过检测两种对不同波长的光吸收的区别,所测出来的数据差就是测量血氧饱和度基本的数据。通过增加不同波长的光谱分析,可以将测量的精度做得更好。

2.jpg

血氧仪应用框图

灵动的MM32 MCU产品已被广泛地应用在了一些主流的血氧仪产品中,在去年底香港疫情爆发阶段及最近国内疫情蔓延之际,MM32F0010/F0020和MM32F0140都是该应用的主力产品。

MM32F的100K次Flash擦除次数可以有效地作为用户数据存储,从而在系统BOM上节省EEPROM,高性能的1Msps 12b ADC能对光电采样结果进行大数据量的暂存和处理,提高采样的效率并有助于对结果做高精度的计算。

新晋推出的MM32L0130系列,集成了段码LCD控制器,且待机功耗可低至100nA,可进一步降低血氧仪的整体功耗,实现更长久和易用的用户体验。

3.jpg

更多有关灵动血氧仪的信息,请访问:

https://www.mindmotion.com.cn/applications/medical_and_healthcare/portable_oximeter/

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 84

1.jpg

灵动股份发布全新MM32F0160 系列 MCU,其搭载 72MHz Arm® Cortex-M0 处理器,内置 128KB Flash,16KB RAM,配备高速 ADC、USB、CAN-FD、I3C 等丰富的模拟和通信资源,适用于工业物联网设备、PC外设、电子门锁、医疗和保健设备、个人手持设备、游戏娱乐等多种应用场景。目前MM32F0160系列已开放样片和开发板申请。

2.jpg

MM32F0160 系列主要特点

  • 72MHz Arm® Cortex-M0

  • 128KB Flash,16KB SRAM

  • 7 通道 DMA

  • 32 位除法加速单元

  • 1 个 12位 SAR ADC,14 个外部通道,高达 1MSPS 采样率

  • 2 个比较器

  • 1 个 16 位高级定时器、5 个 16 位或 32 位普通定时器、1 个低功耗定时器

  • 1 个 RTC 模块

  • 多达 5 个 UART (包括 1 路 LPUART)接口,2 个 SPI 或 I2S 接口,1 个 I2C 接口

  • 1 个 I3C 从机接口,高达 12.5 Mbps

  • 1 个 USB 设备接口,配备独立时钟,适用于小至 5x5 mm2 的封装

  • 1 个 FlexCAN-FD 接口,配备独立时钟,适用于小至 4x4 mm2 的封装

  • 工作电压为2.0V ∼ 5.5V

  • 支持环境温度 -40℃ ∼ +85℃的工业型和 -40℃ ∼ +105℃ 的扩展工业型(尾缀 V)

  • 提供 LQFP64(10x10 mm2)、LQFP48(7x7 mm2)、QFN32(5x5 mm2) 和 QFN28(4x4 mm2)封装

  • 引脚和软件兼容已量产的 MM32F0140 系列产品

MM32F0160系列选型信息以及样片状态表

3.png

4.png

同步发布的 Mini-F0160 开发板,板载 F0160系列Superset 芯片(MM32F0163D7P),现 MM32F0160 系列产品信息已上线灵动官网,更多详细信息,请访问:www.mm32mcu.com

来源:灵动MM32MCU

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 52

页面

订阅 RSS - 灵动微电子