目录前言一. keil目录结构1.1.mdk和pro_stm32F文件夹设置1.1.1 mdk的存放位置确定1.1.2 复制到pro_stm32F1.1.3 进入app目录1.2 stm32F文件夹设置1.2.1 移植driver1.2.2 移植core文件夹1.2.2.1 移植core_cm3文件1.2.2.2 移植启动文件1.2.2.3 移植配置文件二. keil的文件添加2.1 添加文件2.1.1 core目录2.1.2 driver目录2.1.3 board目录2.1.4 app目录2.1.5 slm_nfc目录2.2 keil其他配置头2.2.1 先勾选Use MicroLIB2.2.2 参考f407工程添加宏三. 修改为F103配置3.1 board文件3.2 其他文件修改3.3 stm32f10x_it.c修改四. 移植成功现象跑这个芯片遇到不少问题这里仅记录我移植流程如有侵权贵公司隐私请联系我删帖前言给我的STM32工程为F407系列我这里只有一块F446RE,这里给的默认库文件没有包含F446RE的就直接移植到f103系列了这里项目的具体文件组成大致为先准备1.SL6567P的STM32F4_SDK的工程2.下载STM32F10x_StdPeriph_Lib_V3.6.0固件库3.创建F103工程——》移植SL6567P的F4的sdk核心部分4.修改部分设置和代码一. keil目录结构1.1.mdk和pro_stm32F文件夹设置1.1.1 mdk的存放位置确定参考f4系列的sdk定位到mdk路径依次创建这3个文件夹 1_F103RC_to_SL6567P -》pro_stm32F-》mdk创建完成可以看到1.1.2 复制到pro_stm32F接着把剩下这些也直接复制到里面去1.1.3 进入app目录先把这2个f4系列的.c和.h文件删除接着打开STM32F10x_StdPeriph_Lib_V3.6.0\Project\STM32F10x_StdPeriph_Template这个目录复制这3个文件到app文件夹中1.2 stm32F文件夹设置这里面有三个文件夹分别存放配置文件1.2.1 移植driver打开STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\STM32F10x_StdPeriph_Driver路径复制这inc和src这文件夹里存放了stm32f1系列的外设配置直接复制到driver即可1.2.2 移植core文件夹1.2.2.1 移植core_cm3文件打开STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\CoreSupport找到这两个文件复制到core文件夹内1.2.2.2 移植启动文件打开STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm这个路径复制启动文件到core文件夹内我这里想着快速换f103x系列芯片就全部复制了到时候在mdk添加文件时选择自己的f103系列芯片型号即可1.2.2.3 移植配置文件打开STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x这个目录移植这3个文件到core文件夹内二. keil的文件添加2.1 添加文件2.1.1 core目录2.1.2 driver目录这里参考前面1.2.1的内容2.1.3 board目录2.1.4 app目录2.1.5 slm_nfc目录注意这里需要添加libslm_nfc_stack_m3.lib这个库文件2.2 keil其他配置头2.2.1 先勾选Use MicroLIB2.2.2 参考f407工程添加宏这里结束后所有f103需要文件已经调整好因为里面是默认F4的工程外设配置与F103有写不同这里需要改为F103的外设三. 修改为F103配置3.1 board文件这一步非常关键后续使用的是这几个引脚3.board.h中后续的这些引脚配置保持不动board.c这里需要修改比如参考这些这些初始化配置设置好后续大多也是这些地方修改3.2 其他文件修改如board目录下的引脚初始化配置是需要修改的在keil里面编译看报错修改即可3.3 stm32f10x_it.c修改这里必须在stm32f10x_it.c中添加中断否则这个协议栈根本使用不了四. 移植成功现象这里会先自动给SL6567P进行烧录固件这个是烧录固件后重新初始化进入协议里面的uart打印这里就可以直接寻卡了。