首页 > 其他分享 >51 stm32开发关于keil mdk的软件配置常用设置 以及 可能会出现的报错总结

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

时间:2024-06-24 14:01:26浏览次数:30  
标签:mdk 头文件 keil 芯片 默认 stm32 编译 报错 进入

首先左上角那个魔术棒中,是关于下载烧录软件编译的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 

保持默认

标签:mdk,头文件,keil,芯片,默认,stm32,编译,报错,进入
From: https://blog.csdn.net/2301_80317247/article/details/139892530

相关文章

  • 遇到的编译报错提示
    编译报错wayland-clientsudoaptinstalllibwayland-devwayland-protocols>=1.24下载DEB包直接安装glslangValidatorrequiredbyvulkantestsnotfoundsudoaptinstallglslang-toolsNinja首先安装:sudoaptinstallninja-buildcmake.-GNinjacmake--......
  • STM32CubeMX 创建 MDK 工程
    STM32CubeMX创建MDK工程MDK(KeiluVision)MDK(KeiluVision)是Arm公司开发的一款集成开发环境(IDE),专门用于Arm架构的嵌入式系统开发。它提供了全面的功能,包括:代码编辑器,支持语法高亮、代码补全和错误检测调试器,支持单步执行、断点和变量监视汇编器和链接器,......
  • 同样的软件版本、安装方法,但互联网环境就没有报错,是不是哪个地方设置不对?
    大家好,我是Python进阶者。一、前言前几天在Python最强王者交流群【斌】问了一个Python第三方库离线下载后使用失败的问题,问题如下:再次请教大佬,还是上述问题,同样的软件版本、安装方法,但互联网环境就没有报错,是不是哪个地方设置不对?@隔壁......
  • OCP4.2.2 主机标准化检查系统配置项修复clocksource 报错
    适应版本:社区版本OCP:4.2.2-20240315150922背景描述OCP纳管主机后进行主机标准化时,setclocksource一直没有成功   自动修复后还是有问题 分析过程查看官方ocp.4.2文档,有相关信息 执行相关命令再次查看文件并未写入tsc 重新检查 自动修复,......
  • java使用@Controller注解跳转到thmyleaf页面时候报错
     报错如下######当我使用RestController时候接口可以得到返回的对象↓但是查看RestController和Controller的区别之后:也就是说@RestController返回的是一个对象,@Controller默认情况下,方法的返回值会被解析为一个视图名称,并寻找与该名称匹配的视图进行渲染。这意味着返回......
  • DRF 报错:RuntimeError: Model class django.contrib.contenttypes.models.ContentType
    该错误发生于将'django.contrib.contenttypes'注释之后该组件的功能见如下链接:https://www.cnblogs.com/xiugeng/p/9831665.htmldrf的APIView内部会走认证源码,相关代码导致的报错,怎么解决呢?就是在settings.py中配置上如下两个参数(匿名用户和认证)即可:https://www.cnblogs.com/N......
  • 关于pulp.solve()的报错,pulp.apis.core.PulpSolverError: Pulp: Error while executin
     File"E:\python\建模\.venv\Lib\site-packages\pulp\apis\coin_api.py",line112,inactualSolve  returnself.solve_CBC(lp,**kwargs)      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File"E:\python\建模\.venv\Lib\site-packages\pulp\a......
  • 解决idea项目连接数据库报错:Could not create connection to database server.
    前言idea运行项目时连接数据库,报错Couldnotcreateconnectiontodatabaseserver. 方法1.检查MySQL设置时区:打开运行cmd命令提示符首先连接数据库,输入mysql-hlocalhost-uroot-p,再回车,输入密码连接成功后,输入showvariableslike'%time_zone';,再回车,显示时区配......
  • EOS black灵魂回响黑色无法联机/联机报错/联机失败怎么办
    灵魂回响黑色EOSblack中的职业系统,自由度非常高。从人物属性的精细调整,到装备属性的独特搭配,再到技能的个性化组合,每一步都充满了无限可能。更为惊喜的是,游戏中的角色职业不是一成不变的,而是随着手中武器的变换而灵动转变。这款游戏也是很适合叫上朋友一起玩,不过有玩家表示......
  • 炭熄卡顿、延迟高、联机报错的解决方法一览
    炭熄在制作中巧妙地结合了程序随机生成的元素,为玩家呈现出了一个充满未知与惊险的开放世界,是一款独具匠心的中式民俗恐怖题材游戏。在这款游戏中,玩家将化身为一位意外闯入村子的青年,面对种种鬼怪、努力活下来。游戏将于6月24日登陆steam平台,为了获得最好的游戏体验,我们这就来一......