Bootstrap

51 stm32开发关于keil mdk的软件配置常用设置 以及 可能会出现的报错总结

首先左上角那个魔术棒中,是关于下载烧录软件编译的option选择

我们点开他

进入target

需要我们配置的就两处,

1:Xtal:填8.0mhz

只是因为要填个数代表stm32(外部高速晶振)或(其他晶振)作为主频时钟的时钟源时的晶振大小方便烧录时对一些代码(对芯片的时钟要求高的代码)的自动编译,实际上你不配这个也行,这个设置主要留给一些依赖人为设置的宏定义代表时钟时用,stm32的编译中我是没觉得这个有多重要

2:ARM compiler:5.06

这个是选择下载模式,v5.06属于比较宽松的编码规则,一般都用这个,如果你的编程语言特别强又有强迫症,你可以设置成v6.0

 进入device

这个就是选你对应的芯片

你选不同的芯片,你的keil的引入头文件默认会不同

进入 Output

1.Create HEX FILE

这个是编译后输出的文件设置,你可以设置创建hex文件用去串口下载,你若不用串口下载不选它也行

2.DEBUG INFORMATION

就是一些代码信息

3.Browse information

这是用于文件见间互相跳转 go to definition用的,你不选他就跳转不了。

进入listing

这个按默认就行,调编辑页面的和一些配置的

进入USER

保持默认,没啥用

进入c/c++

1.define 

在stm32中,它的f1系列,f4系列,f7系列,虽然是头文件不同,但是同一个系列,比如说f1系列它是一起的, 比如f103zeT6和f103c8T6,他们的头文件其实都在一个头文件中,只是他们的头文件有一个条件,你必须得要define这个芯片对应的标签才能在头文件中选择一个系列里你想要的芯片  ,我这个是hal库开发,所以他自动生成的头文件的就是这个东西。但是如果说你用的是标准库,,你就按大中小容量define,STM32F10X_HD(大容量),USE_STDPERIPH_DRIVER改成 STM32F10X_MD(中容量),STM32F10X_LD(小容量)。。。。具体的这里不再多说,常用的就这三个

2.ONE ELF section  function

选中他可以让编译器自动帮你识别,你创建了但是没有使用的函数或者变量,让他不去编译他们,可以增加编译速度

3.c99 mode

警告模式的选择,跟前面v5.06 搭配,可以在c99  mode不会因为特别规范的设置而警告你

 具体的看我主页的“关于解决mdk编译出现一下子蹦出来几十个错误的快速解决办法

进入ARM

 保持默认

进入linker

保持默认

进入debug

选择use,并且选择你对应的下载器,比如我的stlink

然后点开setting,点开flash down 选中reset and run

这样你下载好后它会自动帮你复位一次

进入utilities 

保持默认

;