使用Keil移植工程时修改单片机型号参数

server/2025/1/23 9:55:04/

系列文章目录

STM32单片机系列专栏

C语言术语和结构总结专栏


当使用Keil对STM32系列单片机开发时,如果使用的是库函数,那么不同型号单片机的工程项目文件是可以直接移植的。只需要按照下面的步骤修改对应的芯片,就可以直接将工程移植过去,不用重新编写。

移植工程之后,还需要注意的是要确保工程中用到的IO口,在两个芯片中都有,并且要修改为对应的引脚。如果工程中使用IO在一个芯片上有,另一个芯片上没有,是不能直接移植的。如果引脚排序不一样,需要更改 IO口后才能使用。

如上图所示,即使是相同型号的C8T6,如果制作的开发板型号不同,IO口的排序也可能不相同。所以移植的时候引脚位置要确认好,看看位置不同是否影响使用。

下面将演示将STM32F103RCT6单片机上开发的工程,移植到STM32F103C8T6单片机上。

移植步骤

1. 更改芯片型号

打开魔术棒,点击Device,选中STM32F103C8芯片,点击OK。将芯片型号由STM32F103RC 改为 STM32F103C8。

2. 更改宏定义

还是在魔术棒中,点击C/C++,将宏定义STM32F10X_HD 改为 STM32F10X_MD,因为STM32F103RC为大容量芯片,而 STM32F103C8为中等容量芯片,所以要将HD改为MD。注意不同的单片机宏定义的内容不一样。

如果想知道这个是怎么得到的,打开stm32f10x.h,拉到最下面,就可以看到这个定义

 

3. 更改启动文件

 将CORE/Source Group(每个人设置的名称不一样)里面的后缀为hd.s的启动文件换成md.s的启动文件。

对于其他型号的单片机如何选择启动文件,可以参考下面的表格:(对这部分不太熟悉的可以看一下下面两篇文章:)

使用Keil MDK创建STM32标准库工程

STM32系统参数和结构

4. 更改Debug选项

还是在魔术棒中,点击Debug选项,在Debug中选择烧写器为ST-LINK(如果用的J-link就选J-link Debugger),然后点后面的Settings按钮。

打开的界面中选择 Flash DownLoad 选项,底下是STM32F103RC单片机的flash文件,为512k,而现在需要换成用的STM32F103C8单片机flash为128K,所以要将原来的文件删除掉,重新添加文件。点击默认芯片,然后点击Remove。

删除掉原文件后,再点Add按钮添加新文件。在打开的对话框中选择第一个文件 128K大小,点Add按钮,添加新文件。这时flash文件大小就变成128k了,最后点确定按钮。

接下来就是一路OK键。


 

5. 编译测试

现在移植工作就完成了,重新编译工程,如果没有错误就可以直接使用了。

 

相关资料包

STM32标准库工程模板

单片机调试和下载工具软件

固件库链接;


【超级会员V7】通过百度网盘分享的文件:STM32F10....zip
链接:https://pan.baidu.com/s/1bu8xFf5l7Bnv-Xj8F6MmkA?pwd=1g28 
提取码:1g28 
复制这段内容打开「百度网盘APP 即可获取」

文章来源:https://blog.csdn.net/TENET123/article/details/138237591
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/server/24845.html

相关文章

在 Python 中使用 PyPDF2 向 PDF 文件批量添加水印

目录: 使用 PyPDF2 添加水印到 PDF 文件批量添加水印到 PDF 文件所有页 PDF 文件广泛用于不同的设备和平台上,在某些情况下,可能需要在 PDF 文件中申明版权,需要将水印、条形码、二维码等添加到 PDF 中。PyPDF2 提供了一种将另一个…

【go项目01_学习记录day01】

博客系统 1 vscode开发go项目插件推荐1.1 CtrlShiftP(俗称万能键) :打开命令面板。在打开的输入框内,可以输入任何命令。1.2 开发时,我们需要经常查阅 Go 语言官方文档,可惜因国内访问外网不稳定&#xff0…

Excel区间计数(频数)函数--FREQUENCY

笔者近日遇到了一个小问题,需要统计各分数段的学生个数,于是想到了FREQUENCY函数。使用FREQUENCY函数需要首先添加一个辅助列,输入各个分隔点,选中B2:B13单元格区域,输入公式: FREQUENCY(B2:B13,G2:G4)

认识HTTP

HTTP缺点 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,可能遭遇伪装 无法证明报文的完整性,所以有可能遭篡改 一、通信使用明文(不加密),内容可能会被窃听 TCP/…

(学习日记)2024.05.05:UCOSIII第五十九节:User文件夹函数概览(uCOS-III->Source文件夹)第五部分

之前的章节都是针对某个或某些知识点进行的专项讲解,重点在功能和代码解释。 回到最初开始学μC/OS-III系统时,当时就定下了一个目标,不仅要读懂,还要读透,改造成更适合中国宝宝体质的使用方式。在学完野火的教程后,经过几经思考,最后决定自己锦上添花,再续上几章。 这…

Linux硬盘挂载操作记录

文章目录 1.前置概念2.挂载步骤2.1查看盘信息2.2挂载整个盘到指定目录2.3将盘划分为多个分区并挂载到不同目录2.3.1创建分区2.3.2指定文件系统2.3.3挂载目录 3.删除分区 1.前置概念 分区:分区就是将硬盘划分为多个区域,每个区域都有自己的文件系统&…

有哪些好用电脑端时间定时软件?桌面日程安排软件推荐 桌面备忘录

随着现代生活节奏的加快,人们对于时间管理和任务提醒的需求越来越大。为了满足这一需求,市场上涌现出了众多桌面便签备忘录软件,它们不仅可以帮助我们记录待办事项,还能定时提醒我们完成任务。在这篇文章中,我将为大家…

Scaling law信仰下,新华三网络“越过山丘”

如果大模型有信仰,那一定是“Scaling Laws(规模法则)”。 所谓“Scaling Laws”,就是模型性能会随着参数、算力、数据集的规模增加而提高。时间来到2024年,大模型领域依旧是“Scaling Laws”的统治区。 模型参数增长到…