MM32SPIN360C 与 MM32SPIN560C移植说明
1 硬件平台1.1 MM32SPIN560C 带有栅极驱动器的 MCU 简介
MM32SPIN560C 使用高性能的 Arm® Cortex®-M0 为内核的 32 位微控制器,最高工作频率可达 96 MHz。
128KB Flash,8KB SRAM
2 个 12 位的 ADC,采样速度高达 3 Msps。
5 个通用定时器、2 个针对电机控制的 PWM 高级定时器。
1 个 I2C 接口、2 个 SPI 接口和 3 个 UART 接口。
针对电机应用内置 3 个运放,3 个比较器。
预驱工作电压高达 60 V。
2 软件平台移植
2.1 MM32SPIN360C 与 MM32SPIN560C 软件差异
MM32SPIN360C 的大部分外设兼容 MM32SPIN560C ,HAL 库函数基本都是相同的函数名,在移植过程中不需要修改大量的库函数配置,我们只需要替换启动函数、HAL 库函数。我们需要调用 MM32SPIN560C 的新功能时,只需调用新的库函数配置即可。
2.2 MM32SPIN360C移植到MM32SPIN560C具体流程
(1) 下载文档中的 360C 转 560C 压缩包,解压并打开。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/1.png
(2) 打开 MM32SPIN360C 文件夹,删除system_MM32SPIN2xx_p.c 、startup_MM32SPIN2xx_p.s 、drv_inc.h、HAL_lib 、Include 、BSP_DRV 文件。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/2.png
(3)打开文档中的 360C 转 560C 压缩包,找到 system_mm32spin028x.c 、startup_mm32spin028x_keil.s 、drv_inc.h 、HAL_lib 、Include 、BSP_DRV文件,逐个复制到刚刚删除的文件夹中。 https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/3.png
(4)在复制后的 MM32SPIN360C 文件夹中打开 KEIL,修改全局宏定义 :USE_STDPERIPH_DRIVER ENABLEIP_ADC ENABLEIP_BKP ENABLEIP_CAN ENABLEIP_COMP ENABLEIP_CRC ENABLEIP_DIV ENABLEIP_DMA ENABLEIP_RTC ENABLEIP_USB_DEVICE __MM3O1 。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/4.png
(5) 在 KEIL 中修改 MCU 型号
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/5.png
(6)在 KEIL 中删除HAL_lib 、BSP_DRV 中的 .C文件并重新导入HAL_lib 、BSP_DRV中的 .C文件。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/6.png
(7) 编译文件会提示如下错误 ①void Board_Comp_Init(void)该函数中的比较器结构体与枚举找不到,我们将其替换即可。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/7.png
②提示找不到 drv_comp.c 文件我们将其删除掉即可。
https://edit.wpgdadawant.com/uploads/news_file/blog/2022/7172/tinymce/8.png
MM32SPIN360C 的大部分外设兼容 MM32SPIN560C ,HAL 库函数基本都是相同的函数名
页:
[1]