微控制器(Microcontroller,简称MCU)是一种小型计算机系统,通常被用于嵌入式系统中,用于控制各种电子设备和系统。它是一种集成电路(IC),包含了处理器核心、内存、输入/输出引脚、定时器、计数器、串口通信和其他外设,用于执行特定的任务。
1、MindSDK概述
MindSDK(mm32-mcu-sdk)是由灵动官方的软件团队开发和维护的基于灵动微控制器的软件开发平台。
● MindSDK包含灵动微控制器所必须的芯片头文件、启动程序、连接命令脚本等源码,以及灵动微控制器外设模块的驱动程序源码,以及大量便于用户使用的软件组件源码和开发工具。
● MindSDK提供了丰富的样例工程和综合演示工程,便于用户在具体的应用场景中了解驱动程序和软件组件的API的用法,并且可以直接在MindSDK支持的硬件开发板上运行,演示实际的工作情况。
● MindSDK在灵动主流的微控制器系列间实现了跨平台兼容,同一份样例工程,可以在不同平台之间无缝移植,方便用户在产品选型阶段快速完成评估,选择最具性价比型号的微控制器。
● MindSDK的驱动代码经过充分的测试,稳定可靠的软件支持。(这里留个彩蛋,后续文章中也会介绍到灵动软件研发的先进测试框架)
MindSDK使用层次模型组织架构和实现内容,如图1所示。
![“图1](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265888-1.png)
目前,MindSDK已经支持的众多的主流开发工具:
● 支持开发主机操作系统:Windows、Linux
● 支持编译工具链:Keil MDK、IAR for Arm和ARMGCC
● 支持主流的调试器:Segger JLink和DAPLink
2、MindSDK官方支持的开发板
MindSDK已经支持灵动官方发布的开发板,包括PLUS-F3270、PLUS-F5270、EVB-L0130等,还有众多正在支持的开发板将在不断更新的版本中陆续开放。有部分支持的开发板,如下图所示。
![图2](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265889-2.png)
![“图3](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265890-3.png)
![“图4](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265891-4.png)
3、获取和使用MindSDK
MindSDK通过专门的SDK在线发布平台发布最新的MindSDK代码包:
https://mindsdksdk.mindmotion.com.cn
从MindSDK网站上打包下载专属软件包的步骤非常简单,从登录到下载到需要的代码包,最多使用4步。如图5所示。
![“图5](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265892-5.png)
这里还可以通过浏览一小段demo,了解订制MindSDK软件包、编译工程创建可执行文件、下载可执行文件到开发板并运行的全过程。如视频所示。
![“”](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265882-chakanshipin.jpg)
4、MindSDK的组件与样例工程
从MindSDK的目录结构中可以看到已经支持的驱动组件、功能组件、应用样例工程和驱动样例工程。如图6所示。
![“图6](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265893-6.png)
MindSDK的绝大多数代码存放在二级目录下,层级简单,整齐。如图7所示。
![“图7](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265894-7.png)
展示在Keil中打开MindSDK样例工程。如图8所示。
![“图8](http://mcu.eetrend.com/files/2022-08/wen_zhang_/100563027-265895-8.png)
5、MindSDK的应用案例
使用MindSDK的两种典型用法。以MindSDK作为框架搭建应用程序,或者以MindSDK作为BSP包支持大软件平台。
MindSDK作为主要工程框架,包含其他组件:
● 适合新项目,以MindSDK的工程作为基础,逐步添加新功能。
● 在MindSDK框架下进行开发,可以借鉴MindSDK的编码和文件组织规范
MindSDK作为组件,融入其他工程框架:
● 集成至大型软件、开发平台、开源项目当中,例如:MicroPython、RTOS、Zephyr …
来源:灵动MM32MCU
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265882-chakanshipin.jpg?itok=XKJKDJAH)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265888-1.png?itok=MQ5_TJ1C)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265889-2.png?itok=4yEoHDRY)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265890-3.png?itok=hRRER1-U)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265891-4.png?itok=Dvf7RS1w)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265892-5.png?itok=HNdm0J_S)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265893-6.png?itok=S_C66i-w)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265894-7.png?itok=CI-BW-x9)
![](https://cdn.eetrend.com/files/styles/solid-pic-270x177/public/2022-08/wen_zhang_/100563027-265895-8.png?itok=XxjeRErh)