使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c

如何新建项目

一、安装固件库

  • 新建文件夹以保存安装的固件库;
  • 新建子文件夹:CMSIS、Lib、Startup、User
  • 将下载好的固件库文件解压之后,在以下路径中将*.c和*.h文件复制到CMSIS文件夹中:STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport
  • 将以下路径的*.c和*.h文件同样复制到CMSIS文件夹中:STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x
  • 将以下路径的*.s文件粘贴到Startup文件夹中:STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm
  • 将以下路径的两个文件夹inc和src复制到Lib文件夹中:STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver
  • 将以下路径的相关文件(*.c和*.h)复制到User文件夹中:STM32F10x_StdPeriph_Lib_V3.5.0固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template

 

二、导入相关文件

安装完毕之后,在KEIL4中点击project-->new project,填写项目名称,选择CPU文件(STM***),点击+,选择STM32F103C8,之后我们就有了一个基础的文件夹,如下所示:

点击图示按钮,在弹出的窗口中选择中间的窗体,新建文件夹并导入之前我们复制的固件库文件

完成后文件树中将出现相应文件

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第1张图片

注意:

  • 新建文件夹之后需要将Source Group 1文件夹删除
  • Lib文件夹只需复制src中的所有文件
  • Startup需要更改文件类型为Asm Source file文件

 

三、项目的初始化

点击如下图标,进行项目的初始化

在弹出的窗口中确认target中的Xtal中的数值为8.0(晶振频率)

点击output选项卡,将create HEX File选项打勾

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第2张图片

点击C\C++选项卡,将USE_STDPERIPH_DRIVER,STM32F10X_MD复制到如下图所示的文本框

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第3张图片

点击箭头所示的…按钮,在弹出的窗体中选择新建,之后再点击…,选择CMSIS、Lib、Startup、User

之后点击OK,至此就完成了开发环境的基本配置

 

点击User/main.c,将源文件中的内容删除,添加如下内容:

#include "stm32f10x.h" //STM 头文件


int main (void){//主程序     while(1){

        //无限循环程序

}

点击rebuild,程序即可开始编译

但是我在完成上述操作之后,遇到了错误提示:FirstProject.sct(7): error: L6235E: More than one section matches selector - cannot all be FIRST/LAST.

以及警告信息:User\main.c(12): warning:  #1-D: last line of file ends without a newline

之后便看到了解决方法,参考链接如下:

https://blog.csdn.net/chenbang110/article/details/7586244

具体操作如下:

选择Startup文件夹,点击startup_stm32f10x_cls.s文件,选择option.....

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第4张图片

之后将下图所示的两个选项取消选择,点击OK

接着对除了startup_stm32f10x_xl.s外的文件执行相同操作,执行完毕之后文件前方图标会发生变化

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第5张图片

点击rebuild,重新编译项目,错误提示消失,只剩下警告信息

百度发现提示此警告信息的原因是程序最后一行的"}"后没有换行符,只需添加换行符即可

添加之后点击build(编译器只会重新编译更改过的文件,提高编译效率),问题解决

使用Keil4创建一个新的工程,遇到错误提示FirstProject.sct(7): error: L6235E: More than one section matches selector - c_第6张图片

 

你可能感兴趣的:(STM32)