首页 > 其他分享 >关于stm32F103ZET6移植到stm32F103C8T6的步骤

关于stm32F103ZET6移植到stm32F103C8T6的步骤

时间:2024-05-03 19:23:05浏览次数:23  
标签:gd32f10x 头文件 芯片 stm32F103ZET6 代码 报错 stm32F103C8T6 移植

在一次代码移植过程中,突然发现代码移植后不可以使用,代码是stm32f103zet6的代码,刚好当时我使用的是C8T6的芯片我进行移植到C8T6芯片时,代码报错"Error:Flash Download failed - "Cortex_M3"这种报错。当时直接懵逼了。想了半天没有想到原因,我就在想不都是F103系列的代码吗为啥子不可以正常使用,会出现报错这样的情况。后面我上网早了很多也发现自己还是知道的太少了。在这里记录一下方便以后忘了再来看看。

 

当我们下载程序时,会出现这样的报错。

 

当我们意见出现这种错误时,这个是因为我们移植了不同类型芯片代码、每个型号的容量不一致的原因而导致的,我使用的是最小系统板属stm32F103C8T6系列的,一开始移植代码的时候一直烧录不了,后面才知道原来芯片类型不同,移植过来要更改配置的。

 

一,以下是以stm32F103ZET6移植到stm32F103C8T6为例

1,首先我们要进行更换启动文件:先在平时自己练习的c8t6工程系列里面,找到start文件夹的路径,将里面的_MD.S后缀的启动文件,复制到当前工程start文件下,并且添加到工程里面去,C8T6是128K,算是中等容量,因为芯片不同,容量也是需要匹配的。

如图片

 

然后将后缀为_md.s的启动文件添加到工程中

 

 

 然后在keil5中点击魔术棒

 

选择DEVICE,然后将芯片类型换成stm32F103C8型号

 

然后找到Target选项,这里要将晶振改为自己芯片的的数值。具体芯片看芯片介绍。我这里改成12hz

 

 然后就是点击debug,进入settings,最后更Download中的FLASH容量,点击ADD添加,选择128K的容量

 

 

 

到这里问题应该就已经解决了。

 

二,注意

当上面做完后,如果还有这样的报错 .\Objects\Project.sct(7): error: L6235E: More than one section matches selector - cannot all be FIRST/LAST.

 

因为在工程中包含了不只一个启动文件导致的。有多个头文件,我们只需要把多的头文件删了就可以了

比如

 

项目中同时包含以下启动文件,
startup_gd32f10x_md.s
startup_gd32f10x_hd.s
startup_gd32f10x_ld.s
startup_gd32f10x_cl.s

应该针对不同的CPU选择不同的启动文件。

等还有其他情况,反正都是含有多个头文件导致的,我们把多余的头文件进行删掉问题就可以的到解决。

 

标签:gd32f10x,头文件,芯片,stm32F103ZET6,代码,报错,stm32F103C8T6,移植
From: https://www.cnblogs.com/zfcm-0117-12/p/18171511

相关文章

  • 瑞米派实时系统与EtherCAT移植-米尔Remi Pi
    1.概述RemiPi采用瑞萨RZ/G2L作为核心处理器,该处理器搭载双核[email protected]+Cortex-M33@200MHz处理器,其内部集成高性能3D加速引擎Mail-G31GPU(500MHz)和视频处理单元(支持H.264硬件编解码),16位的DDR4-1600/DDR3L-1333内存控制器、千兆以太网控制器、USB、CAN、SD卡、MIPI-C......
  • Linux 根文件系统的移植(从入门到精通)
    一、简介提到操作系统的安装,还得从大学的时候说起,刚入学的时,朋友的系统本崩了,跑去电脑城换个系统花了40大洋,震惊了贫穷的我。好像发现了商机,果断开始了折腾自己的电脑,然后用朋友的电脑进行测试,由于对启动项不了解,有次蹦了过后,自己花钱去维修电脑哪里安装了一次,偷偷的学习。在这样......
  • NanoPi-NEO 全志H3移植Ubuntu 22.04 LTS、u-boot、Linux内核/内核树、mt7601u USB-Wi-
    前言想在NanoPi-NEO上开发屏幕驱动,但是看了下文件目录发现没有内核树,导致最基础的file_operations结构体都无法使用,于是寻找内核树安装方法。但官方提供的内核为4.14太旧了apt找不到对应的linux-source版本(其实后面发现不需要用apt,可以在kernel.org上下载,但反正都装了那就当学习......
  • 【专题STM32F103】移植STemWin5.44+ ILI9341显示无触摸屏 + cubemx+野火霸道V2
    在已经做好LCD_ ILI9841的基础上,进行移植,不考虑触摸屏。 一、无操作系统移植第一步:找到STemWin5.44库文件。 第二步:将相关文件放在Project文件夹内,设置项目相关参数。添加:GUI_X.c  GUI_config.c  LCDConf_FlexColor_Template.c 和 STemWin_CM3_wc16_ARGB.a(无OS) ......
  • STM32 - W25Q16移植fatfs文件系统
    1.Windows上的文件系统​ 文件系统,就是对数据进行管理的方式。使用文件系统可有效地管理存储介质。​ 使用文件系统时,它为了存储和管理数据,在存储介质建立了一些组织结构,这些结构包括操作系统引导区、目录和文件。常见的windows下的文件系统格式包括FAT32、NTFS、exFAT。......
  • 10_QT系统移植之在开发板上部署QT运行环境
    QT系统移植之在开发板上部署QT运行环境一.开始部署1.我们在Ubuntu新创建一个文件夹,然后把我们用busybox做好的文件系统拷贝到这个文件下。如下图所示:2.然后我们解压这个根文件系统到当前所在的路径下。3.我们在这个解压出来的根文件系统下新创建一个opt的文件夹,如下图所示:......
  • 09_QT系统移植之交叉编译QT源码和触摸源码
    QT系统移植之交叉编译QT源码和触摸源码交叉编译QT源码一.源码下载​QT官网下载:http://download.qt.io/new_archive/qt/5.7/5.7.1/二.编译环境开发环境:Ubuntu16编译器:arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2三.编译触摸触摸源码在这个视频目录......
  • 小程序跨端,vue移植
    技术选型由于bun1.1.3windows版还有很多不兼容的小bug,先用pnpmtauri+taro+nutUI:https://github.com/AClon314/tauri-taro-template如何评价京东的Taro项目?-知乎(等tarov4正式版再做,beta的模板现在空白无法启动)tauri+vuetify:https://github.com/AClon314/tauri-vuet......
  • GD32F470_GP2Y0A02YK0F 红外激光测距传感器 避障测距20-150cm模块移植
    2.4红外测距传感器GP2Y0A02YKOF是夏普的一款距离测量传感器模块。它由PSD(positionsensitivedetector)和IRED(infraredemittingdiode)以及信号处理电路三部分组成。由于采用了三角测量方法,被测物体的材质、环境温度以及测量时间都不会影响传感器的测量精度。传感器输......
  • GD32F470_VL53L0X激光测距传感器模块移植
    2.15VL53L0X激光测距传感器VL53L0X是ST公司推出的新一代ToF激光测距传感器,采用了第二代FlightSenseTM技术,利用飞行时间(ToF)原理,通过光子的飞行来回时间与光速的计算,实现测距应用。较比上一代VL6180X,新的器件将飞行时间测距长度扩展至2米,测量速度更快,能效更高。除此......