
前言 ST在www.st.com官网上提供了针对IEC60730/IEC60335 ClassB认证的软件包。软件包分为三个,分别适用STM8,STM32(基于标准外设库)和STM32(基于HAL库):STM8-SafeCLASSB,STM32-CLASSB-SPL,X-CUBE-CLASSB。本文以X-CUBE-CLASSB为例介绍如何做代码的移植以及经常遇到的问题的解决办法。 X-CUBE-CLASSB软件包中分别提供有STM32F0/F1/F2/F3/F4/F7/L0/L1/L4的例程。但是STM32每个系列又分很多型号,每个型号的flash,ram大小可能也不相同。客户的应用程序大小以及架构也不尽相同。所以看起来很简单的移植过程还是会碰到这样那样的问题。 在本文中,笔者将以STM32F207Nucleo板为例,用CubeMX新建一个简单工程,然后将ClassB的功能添加到该工程中。当然这里提到的ClassB功能也仅指跟MCU相关的部分,和应用相关的检测因为直接依赖具体的应用,所以这里就不涉及了。 8 G& L' ]* v8 Y) f& \ : a4 G2 `% p# I& Y7 y 新建用户代码 8 A. c! _& r8 h; K首先,需要用CubeMX新建一个可以在F207Nucleo板子上运行的简单程序。 打开CubeMXv5.0.0, 选择F207Nucleo板子来新建一个工程: ![]() ![]() ![]() 设置基于KEIL IDE环境的工程名称及位置。4 z7 N4 |2 }) f7 F3 C' G ![]() ![]() 生成KEIL工程,并打开工程, ![]() 在main函数中,添加闪灯的用户代码。通过编译后,一个简单的点灯程序就可以在F207Nucleo板上正常运行了。 ![]() 当前的工程结构: ![]() |
感谢分享![]() |