STM32开放式开发环境:释放创造力的利器

发布者:MoonlightStar最新更新时间:2016-08-01 关键字:连接器  建模  供电 手机看文章 扫描二维码
随时随地手机看文章
市场上涌现各种价格亲民的经济型微控制器,助力新一代开发者创造令人兴奋的新型嵌入式应用。如今的开发工具非常好用,软硬件均呈现模块化趋势,插接安装简单容易,使得产品设计评估和原型开发周期大幅缩短。STM32开放式开发环境是业内独一无二的软硬件开发平台,堆叠式插接电路板集成各种模块化硬件,同时模块化软件覆盖从驱动程序到应用层的全部软件,帮助设计人员将创意快速变成产品原型,顺利转化成最终设计。
 
STM32开放式开发环境是什么?
STM32开放式开发环境 是意法半导体开发的嵌入式系统原型设计开发环境,以简化嵌入式项目设计为目标,通过开源形式提供全部重要功能模块,组件包括:
- 价格极低的STM32 Nucleo开发板(STM32微控制器)和STM32 Nucleo扩展板(传感器、通信接口、电机控制和致动功能),提供基于尖端商用产品的各种硬件功能。
- 基于STM32Cube软件工具的STM32微控制器软件库和简单好用的软件库配置器(STM32CubeMX )。
- STM32Cube扩展软件库,支持STM32 Nucleo扩展板上各种器件,包括电机驱动器、低能耗蓝牙模块、MEMS传感器等。
- 功能包:一套利用STM32 Nucleo开发板和STM32Cube软件为一些最常用用例开发的功能性例程(代码示例)。
- 每个软硬件功能模块都配备描述详尽的技术文档。
- 活跃的快速发展的在线开发社区
 
STM32 Nucleo开发板
STM32 Nucleo开发板是STM32开发环境的基础组件,板载一颗基于ARM® Cortex®-M 32位处理器内核的STM32微控制器。STM32开放式开发环境所用的STM32 Nucleo开发板是64引脚版(图1)微控制器。目前STM32 F4和STM32 L0微控制器兼容所有的STM32 Nucleo扩展板和扩展软件。
 
图1 – STM32 Nucleo-64开发板
 
开发环境使用基于STM32Cube HAL(硬件抽象层) API的STM32Cube软件库,大幅降低了在不同系列的STM32产品(目前有20余款STM32 Nucleo开发板)中移植软件项目所需的编程工作量。
STM32 Nucleo-64开发板硬件具有以下特性:
- 采用LQFP-64封装的STM32微控制器
- 通过38引脚的Morpho连接器可以使用STM32的所有引脚
- 四个Arduino连接器(位置非对称排列,引导用户正确插接Arduino兼容扩展板)
- 集成ST-LINK/V2-1调试器/代码烧录器和mini USB端口,无需安装额外的调试工具,板子可直连PC机,进行调试和烧写代码操作。此外,USB接口支持虚拟COM端口和大容量存储接口(兼容ARM mbed)
- 2个按键(微控制器复位信号和开发者专用按键)
- 3支LED灯(5V电源、开发者专用、ST-Link调试器状态)
用户可以为板子选用不同的电源:
- 5V USB供电
- 5V外部电源
- 外部电源VIN (7-12V)
STM32 Nucleo开发板上的5V电源还用于驱动通过Arduino或morpho连接器连接主板的扩展板,同时通过板载稳压器为STM32提供3.3V 电源。 
STM32 Nucleo开发板功能性极强,板载代码烧写/调试工具非常实用,设计人员可以立即动手开发项目,而无需添置昂贵的开发工具。
 
基于STM32Cube的嵌入式软件和工具
在选中了最适合自己的STM32 Nucleo开发板后,下一步是下载相关的软件库,熟悉STM32技术特性和外设。最快捷的入门方式是下载软件库配置器STM32CubeMX 。在这个工具的图形用户界面内,用户只要直接选择正在使用的STM32 Nucleo开发板(图2),配置器就会按照板子所连接的硬件设备(例如LED、按键、UART引脚分配)自动配置STM32外设。
下一步,可能需要详细配置每个外设,例如,设置UART同步/异步通信模式、波特率、寄偶校验和停止位。
 
 
图 2 – STM32CubeMX: 从板子选型到外设配置,只需几步简单的操作。
 
 
最后,STM32CubeMX将生成代码,创建一个完整软件项目,且兼容所用代码编译工具链(例如IAR、Keil或Eclipse),同时配置先前在图形用户界面内所选的全部硬件和外设,并兼容所用代码调试/烧录工具。
这个图形用户界面工具让你从零开始创建项目,几分钟完成项目所需的全部配置,然后立即动手创建自己的软件项目,直接在main.c文件里写代码。

图3 – STM32Cube软件库的层次
 
所生成的代码位于STM32Cube嵌入式软件之上,STM32Cube有两个主层(图3):
- 硬件抽象层:准许上面的软件层(例如,中间件层)执行各自的功能,而无需开发人员深入了解如何使用微控制器
- 中间件:一整套中间件组件(RTOS, USB, TCP/IP, …)
软件设计采用模块化方法,用户在项目开发过程中可以随时添加软件模块,轻松地跨系列移植全部项目。
 
STM32 Nucleo扩展板
为连接STM32 Nucleo扩展板,STM32 Nucleo-64开发板配备两种连接器:
- 兼容Arduino标准的Arduino连接器(微控制器的32个引脚都在这个连接器上)。
- Morpho 连接器,可以连接STM32微控制器的全部引脚(76个引脚都在这个连接器上)。
STM32 Nucleo扩展板让设计人员像搭积木一样,在主板上插接多块不同功能的子板,创建一个完整的应用系统。目前意法半导体网站上有20余款扩展板(图4)在售,按功能划分,可以分为五类:
- 感测:MEMS 9轴运动传感器; 压力传感器,环境传感器,接近检测传感器; MEMS麦克风
- 连接: 低能耗蓝牙、Wi-Fi、NFC和Sub-GHz射频;
- 电机控制/致动: 直流电机驱动器、步进电机驱动器、3相直流无刷电机驱动器
- 输入/输出: I/O模块(家庭自动化和工业自动化)
- 信号调理: 运算放大器
 
图4 – 各种型号的STM32 Nucleo扩展板
 
STM32 Nucleo板功能扩展方法类似于Arduino和Raspberry Pi解决方案,便于设计人员快捷开发产品原型。利用这些连接工具,可以将扩展板堆叠插接在主板上,给系统增添新的功能,唯一不足之处是,堆叠式连接方法受限于微控制器外设的使用方式,这个问题的解决方法是,使用I2C和SPI总线替代UART等速度慢的数据总线,这样可提高同一总线上所连接设备的数量。此外,Arduino连接器不对称排列设计可有效防止STM32 Nucleo扩展板连接方向错误,降低电源连接错误损坏设备的风险。扩展板使用STM32 Nucleo开发板上LDO稳压器通过板上5V电源生成的3.3V电源,用户可以使用跳线(JP5)为开发板选择USB 5V电源或外部E5V电源。有些扩展板需要更高的电压,例如,电机驱动器和I/O扩展板,因此,开发板上还增加一个电源连接器,利用外部电源驱动负载,提供更高的电压Vbus(最高45V)。
 
为安全起见,多数扩展板是为低功率应用设计,50V以下电压在电源极性接反或短路时可以降低板子烧毁风险,所以适合初学者和学生使用。
 
这些低功耗的扩展板还可以单独连接高压高功率的电机控制扩展板,但是,我们只建议电机控制专业人士选用这种配置。为了便于区分,我们将高功率STM32 Nucleo扩展板涂成绿色,其余的扩展板全都是蓝色。高功率电机控制扩展板兼备高压高功率扩展板和低压扩展板的双重优点,在电机控制应用中轻松增加数据通信功能,例如,使用射频技术远程驱动高压电机或使用低能耗蓝牙或Wi-Fi获取电机驱动信息和远程记录失败数据。
 
 
STM32Cube扩展软件
STM32 Nucleo扩展板可以像搭积木一样插接到开发板上,几分钟就能组建一个硬件平台。不过,软件才是设计项目中最耗时的环节,通常占用研发周期70-80%的时间。STM32Cube将积木式组装方法带到软件设计中。软硬件一致是STM32开放式开发环境的特性之一,因此,每个STM32Cube扩展软件包都为用户提供例程,其中包含各种软件库,例如,电机控制、低能耗蓝牙协议栈或NFC射频处理功能,全部都是开源软件。
STM32Cube扩展软件包附加的例程非常实用,能够帮助设计人员快速熟悉设备软件库。以下面的步进电机驱动软件演示项目为例,用户可将其中所需功能复制到自己的软件项目:
 
//----- Init of the Motor control library 
  /* Start the L6474 library to use 1 device */
  /* The L6474 registers are set with the predefined values */
  /* from file l6474_target_config.h*/
BSP_MotorControl_Init(BSP_MOTOR_CONTROL_BOARD_ID_L6474, 1);
  /* Attach the function MyFlagInterruptHandler (defined below) to the flag interrupt */
BSP_MotorControl_AttachFlagInterrupt(MyFlagInterruptHandler);
  /* Attach the function Error_Handler (defined below) to the error Handler*/
 BSP_MotorControl_AttachErrorHandler(Error_Handler);
//----- Move of 16000 steps in the FW direction
  /* Move device 0 of 16000 steps in the FORWARD direction*/
 BSP_MotorControl_Move(0, FORWARD, 16000);
  /* Wait for the motor of device 0 ends moving */
BSP_MotorControl_WaitWhileActive(0);
  /* Wait for 2 seconds */
HAL_Delay(2000); 
//----- Move of 16000 steps in the BW direction
  /* Move device 0 of 16000 steps in the BACKWARD direction*/
 BSP_MotorControl_Move(0, BACKWARD, 16000);
  /* Wait for the motor of device 0 ends moving */
BSP_MotorControl_WaitWhileActive(0);
 
因为基于STM32Cube的软件库的模块化结构,每个扩展板软件模块都可以作为中间件添加到用户项目,添加操作可以在项目开发过程中随时进行,也可以添加到已经存在的复杂项目内(图5)。
 
 
图 5 –STM32 Nucleo扩展板软件库作为中间件添加到开发项目内
 
 
除STM32开放式开发环境外,还有功能包软件项目和附加软件库
当需要不只一个功能模块时,最快捷的方式是使用功能包软件源代码项目,因为这个软件包将不同的STM32 Nucleo扩展板的软件库整合成一个立即可用的完整项目。 
例如,当STM32 Nucleo开发板连接NFC和低能耗蓝牙(BLE)扩展板时,可以下载功能软件包,进行BLE与NFC配对。
除STM32开放式开发环境外,意法半导体还提供各种附加软件库(图6),让开发者在其应用项目内能够使用前几年不易实现的先进功能,例如:传感器数据整合、运动识别、蓝牙语音、声学波束成形、声音定位等,因为这些软件库使用非常专业的IP技术,所以不提供完整的源代码(STM32开放式开发环境软件100%提供源代码), 但是,用户可以从意法半导体网站下载相关许可证,然后花费几分钟激活软件,即可正常使用这些软件。
 
图 6 – 在STM32开放式开发环境之上的Open.X 软件库和Open.Framework
 
同样地,开放式功能包也有例程,例如,在BLUE MICROSYSTEM 1演示应用(图7)中,STM32F4读取MEMS加速度计/陀螺仪/磁强传感器数据(RAW格式和传感器数据整合算法输出)、温湿传感器以及压力传感器的数据,通过低能耗蓝牙协议将数据发送到智能手机上的应用程序(图8)。只要将所需的代码段复制到自己的软件项目内,就可以在不同的应用中反复使用代码。同一个演示应用,假如软件设计人员想要从零开始创建,则需要从查看每个设备数据手册信息开始,开发和调试可能需要几个月的时间。 
STM32开放式开发环境功能包和Open.Framework实现示例可以在相应的STM32 Nucleo扩展板网页下载,而智能手机/平板电脑的图形用户界面应用软件的源代码需要直接向意法半导体销售代表和授权经销商索取。
 
图7 – BLUE MICROSYSTEM1 开源功能包演示应用使用了MEMS运动传感器、环境传感器(温度、湿度、压力传感器)和最新的低能耗蓝牙技术。
 
 
图8 – 当使用基于蓝牙或低能耗蓝牙的演示板时,可以使用智能手机或平板电脑应用查看传感器数据(相关应用软件可在Google Play或Apple AppStore下载)。
 
 
应用项目示例
当使用STM32 Nucleo扩展板的软件项目示例或现有的开源功能包创建复杂的演示程序和系统时,创建速度简单快速。下面是一个玩具小汽车的演示示例,3D遥控器通过低能耗蓝牙(图9)控制小汽车运动。基本软硬件模块包括:
STM32 Nucleo玩具小汽车(硬件): NUCLEO-F401RE、X-NUCLEO-IHM02A1(双步进电机驱动器),、X-NUCLEO-IDB04A1(低能耗蓝牙)
STM32 Nucleo玩具小汽车(软件):X-CUBE-SPN2 (步进电机驱动器软件库基础例程)、X-CUBE-BLE1 (BLE软件库基础例程)
3D遥控器(硬件): NUCLEO-F401RE、X-NUCLEO-IKS01A1 (MEMS传感器),X-NUCLEO-IDB04A1 (低能耗蓝牙)
3D遥控器(软件):BLUEMICROSYSTEM1(通过低能耗蓝牙发送传感器RAW数据和传感器整合数据的功能包)
 
图9 – STM32 Nucleo玩具小汽车: 玩具小汽车演示板和3D遥控器都是采用STM32 Nucleo电路板
 
对于穿戴设备和物联网硬件等应用,评估板的外观尺寸有时候是一个不小的问题。为了满足物联网硬件开发者的需求,意法半导体产品阵容开始增加尺寸极其紧凑的小演示板(图10),板上的元器件与STM32 Nucleo电路板完全相同。这样,在STM32开放式开发环境内开发的软件工程项目可以100%移植到这些小板子上。
 
图10 – 功能包Blue Micro System1从STM32 Nucleo电路板移植到小评估板(用于物联网和穿戴设备)
 
 
岂止STM32开放式开发环境,还支持兼容STM32 Nucleo的Arduino电路板 
STM32 Nucleo扩展板中还有板载Arduino连接器的Arduino Shield 电路板。因为硬件接口相互兼容,开发人员可以继续使用以前开发的电路板和设备驱动软件和固件库。在网站和其它开源软件工程社区,有一些Arduino电路板配合STM32 Nucleo扩展板的直接可用的现成项目:图11所示是一个典型的Adafruit TFT触屏shield板与STM32 Nucleo扩展板相连的演示
示例, STM32CubeF4软件包提供该软件项目。

图11 – Adafruit 1.8” TFT触屏Shield板与STM32 Nucleo扩展板相连的演示示例
 
释放你的创造力
五年来,软硬件开发环境变化巨大,市场需要更短的研发周期,越来越多的传统消费产品技术(例如:MEMS、 NFC、低能耗蓝牙)被用于工业设备。从3D建模到PCB电路图,更完备的工程项目出现在开源软件工程社区(无人机、3D打印机、传感器数据整合、复杂的音频功能和USB供电等)。
STM32开放式开发环境专注于让开发者的生活更轻松,提供易于定制的基本的和复杂的软硬件功能模块。在系统设计内增加一个射频模块,用于遥控设备或传送数据,不再要求开发者有深厚的射频专业背景,只需将STM32 Nucleo扩展板连接到系统,按照系统要求设置软件项目,几分钟即可完成。
STM32开放式开发环境是业内独一无二的软硬件开发平台,整合基于尖端商用产品的各种扩展板,模块化软件覆盖从驱动程序到应用层的全部软件,帮助设计人员将创意快速变成产品原型,顺利转化成最终设计。
关键字:连接器  建模  供电 引用地址:STM32开放式开发环境:释放创造力的利器

上一篇:Synopsys适用于Juno ARM开发平台的全新HAPS适配器加速软件初启
下一篇:Nordic Semiconductor最新智能遥控参考设计

推荐阅读最新更新时间:2024-05-03 00:33

适用于腐蚀性工作环境的Han® 3A不锈钢保护壳
上海,2016年10月27日 --- 采用优质耐蚀不锈钢制造的Han-INOX 系列连接器现在拥有了Han 3A规格的保护壳。专为最恶劣环境设计的Han-INOX 连接器系列产品现在能够在此前不可想象的极端苛刻环境中使用。 这包括户外应用以及食品工业和生产工艺中的应用。与Han 系列类似,Han-INOX 系列也采用了模块化设计。该系列可在从能源供应到数据传输各行业广泛的接触应用中一展身手。 Han-INOX 系列连接器包括两种规格。较小规格的Han 3A型号可承载最高40安和690伏的电流以及诸如以太网形式的敏感数据信号。即便是小规格的Han-INOX 产品也使用拥有21个触点的高密度接触嵌件。 较大的Han 10B
[工业控制]
适用于腐蚀性工作环境的Han® 3A不锈钢保护壳
Molex 发布 MXMag™ 千兆级单端口 RJ45 连接器
2016 年7月11日,Molex 推出 MXMag 千兆级单端口 RJ45 连接器。这一集成磁性插座具有适用于自动化回流焊装配的各种选项,为 OEM 提供了高速装配解决方案,而不会影响到稳健、可靠的通孔印刷电路板的连接性能。 传统上,集成了磁铁的 RJ45 连接器采用手工定位,通过波峰焊来确保通孔印刷电路板连接的稳健性与可靠性。Molex 全球产品经理 Patrick Tunn 表示: 过渡到拾放式的磁性插座,不得影响通孔焊点的质量,并且需要具有充分的性价比。MXMag 千兆级单端口 RJ45 连接器针对自动化的回流焊装配工艺而设计,为寻求降低组件放置成本的 OEM 提供了一种替代的定制磁性 RJ45 插座解决方案,而无需以高
[电源管理]
Molex 发布 MXMag™ 千兆级单端口 RJ45 <font color='red'>连接器</font>
台州供电2020再出发!打造现代能源互联网企业
2020年1月17日上午,国网台州供电公司九届六次职代会暨2020年工作会议举行,总经理何文其做了《拥湾奋进 实干争先奋力谱写现代能源互联网企业建设新篇章》的会议报告。 记者捕捉到两个关键词——“拥湾”、“现代能源互联网企业”。2019年,是国家电网建设“三型两网”世界一流能源互联网企业的开局之年,2020年,这两个热词再次被写进了标题,足见分量,结合2019年的工作回顾,可从中一窥国网台州供电公司未来几年的发展方向和基调。 聚力责任担当 助力优化营商环境 电力是工商企业生产运转的动力源,也是企业生产成本开支的重要一项。台州供电始终聚焦“人民电业为人民”的服务宗旨,做好电力先行官,主动服务社会经济发展。
[新能源]
连接器应用新思路| 助力模块化设计,降低供应链风险
连接器应用新思路| 助力模块化设计,降低供应链风险 Matt Burns Samtec砷泰连接器 摘要/前言 “供应链”!谁知道这个商业术语竟然会成为近几年日常谈话不可绕过的一部分。 供应链问题无处不在。关键的航运港口和航道终于变得畅通无阻。然而,零售商有太多的服装备货,但却没有足够的家庭用品;消费者找不到他们最喜欢的个人品牌;建筑项目正在被推迟。 电子元器件领域的挑战 在电子元器件领域,原材料的供给来之不易。一些地区的工厂关闭正在影响交货时间。经销商的库存也低于正常水平。汽车制造商和其他OEM无法获得半导体元件,因此数以千计的未完成产品被储存了起来。 由于供应链问题挥之不去,OE
[模拟电子]
<font color='red'>连接器</font>应用新思路| 助力模块化设计,降低供应链风险
基于CRH380A型动车组辅助供电系统的研究
0 引 言 自2007 年4 月18 日,中国铁路实施了第六次大面积提速以来,相继运行在我国铁路上的四种高速动车组分别是CRH1、CRH2、CRH3、CRH5.主要引进加拿大庞巴迪、日本川崎重工、德国西门子及法国阿尔斯通国外原型车技术,通过“引进,消化,吸收再创新”,设计生产具有我国自主知识产权的动车组产品系列。 CRH2-380 型动车组是动力分散交流传动动车组,有8 辆编组和16 辆编组,分别称为CRH380A和CRH380AL 型动车组,是在CRH2C 型平台成熟可靠的基础上,通过速度提升和优化设计,由中国南车四方机车车辆股份有限公司生产。 高速动车组技术凝聚了各项复杂的技术,而辅助供电系统作为动车组的重要组成部分,它不仅仅
[电源管理]
基于CRH380A型动车组辅助<font color='red'>供电</font>系统的研究
使用MINI USB连接器时哪些注意事项容易被忽略
一般来说,在MINI USB连接器座的操作和焊接中,请注意每个引脚对准焊盘上的每个接线点。后部应用烙铁轻轻按压引脚,冷却几秒钟后即可焊接。但请记住:如果洛铁压住USB母座的引脚,注意不要挤压力过大,否则会焊接其MINI USB连接器接口的引脚。然后,通过实践操作经验,我们可以得出几个操作细节。以下是MINI USB连接器焊接中不可忽视的细节。 MINI USB连接器 1.一般来说,由于MINI USB连接器的接口针脚较多,pin针越长,抗压性越小。因此,请勿在存储USB母座的接口时使用一些重物挤压产品,以避免USB接口对引脚造成损坏。此外,建议在MINI USB连接器的包装上进行包装,因为这可以避免在焊接和放置操作中坠落造成的引
[嵌入式]
使用MINI USB<font color='red'>连接器</font>时哪些注意事项容易被忽略
Colder快速连接器确保油墨处理清洁安全
香港讯 – 2013年7月29 日 – 为了从竞争激烈的市场中脱颖而出,工业和大幅面打印厂家必须提供物有所值的服务,同时还需应对不断上升的油墨成本和日益复杂的项目,而这些项目通常都需要定制和多色打印。Colder Products Company是连接解决方案的领导者,为客户提供一系列可快速断开的连接器。这种连接器经专门设计,能够快速连接和断开流体管路,并简化供墨系统的维修。Colder在刚刚结束的ProPak China 2013包装展上(与同区域经销商上海丹容联合参展)展示其防溢漏连接技术。此技术避免产品溢出带来的脏乱问题,从而帮助印刷和包装专业人士降低整体成本,并提供精确的油墨管理和高效的打印运行。 在工业打印中,
[工业控制]
伍尔特电子扩展同轴连接器产品系列,加入超微型射频同轴连接器
伍尔特电子扩展同轴连接器产品系列,加入超微型射频同轴连接器 完美的天线连接 瓦尔登堡(德国),2022 年 03 月 30 日— WR-UMRF(超微型射频同轴连接器) 是伍尔特电子最新推出的尺寸极小的高频同轴连接器。通过将插头卡入插座,形成稳定的线到板直角连接,高度仅为 2.5 毫米。这种价格适中的连接技术特别适用于将天线连接到射频模块上。 特征阻抗为 50 欧姆,频率范围高达 6 GHz。 WR-UMRF 超薄连接解决方案的高度仅为 2.5 毫米,PCB 上也仅需 3.1 毫米 × 3.0 毫米的空间。在技术规格方面,WR-UMRF 与市面上的许多类似产品兼容。 伍尔特电子还提供各种组合的装配好的 UMRF
[物联网]
伍尔特电子扩展同轴<font color='red'>连接器</font>产品系列,加入超微型射频同轴<font color='red'>连接器</font>
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved