【Keil5教程及技巧】耗时一周精心整理万字全网最全Keil5(MDK-ARM)功能详细介绍【建议收藏-细细品尝】

news2024/12/27 11:03:09

  

  • 💌 所属专栏:【单片机开发软件技巧】

  • 😀 作  者:   于晓超

  • 🚀 个人简介:嵌入式工程师,专注嵌入式领域基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结分享知识的地方,喜欢的话请三连(点赞评论收藏),有问题请私信

目录(内容较多可把点击目录跳转指定章节快速查看)

 引言

一、File(文件)栏目内功能

1、新建文本功能

2、Keil5打开工程详解

3、Keil5保存/另存/保存所有功能

4、Keil5的Device Database(设备数据库)功能

 5、Keil5的License Management(软件授权管理)功能

6、Keil5的print setup及print (打印设置和打印)功能

7、Keil5的旧工程记录功能

二、 Edit(编辑)栏目内功能

1、redo/Undo/copy/paste/Cut(重做/撤销/复制/黏贴/剪切)功能

 2、后退导航/前进导航功能

 3、插入/删除书签/前往下一个书签/前往上一个书签/清除所有书签

4、查找/替换/在文件中查找.增量查找

4、 Advanced高级设置相关

5、设置->编辑页面

6、设置->颜色和字体页面

7、 设置关键字的文本文件类型(突出自定义关键字)

 8、快捷键设置

9、 文本模版功能/代码补全配置

10、其他功能设置

三、View(视窗)栏目内功能

 四、Project(工程)栏目内功能

1、Project栏目总体

2、配置目标,内详情(魔术棒)

2.1 Device配置工程所使用的芯片

 2.2 Target目标配置相关参数

 2.3 Output输出配置页

  2.4 Listing列表功能配置

  2.5 User用户功能配置 

  2.6 C/C++选项配置  

 2.7 Asm选项配置  

 2.8 链接器选项设置

 2.9 Debug选项设置 

  2.10Utilities(功能)选项设置 

 五、Flash栏目内功能

六、Debug栏目内功能(大多数内容在进入调试模式时才能使用)

七、Tools工具栏内功能

八、SVCS栏目内功能

八、Window栏目内功能

 九、Help栏目内功能

 十、工具栏

十一、仿真调试界面 


前言
  大家好,又见面了,我是小超,本文是专栏【单片机开发软件技巧】专栏内文章;
  Keil是我们单片机开发经常使用的软件,从本篇文章开始写点Keil相关的使用教程及技巧
  专栏地址:【单片机开发软件技巧】, 此专栏单片机开发中相关的软件使用技巧总结,希望能够加深自己的印象,以及帮助到其他的小伙伴。
  如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。

 引言

        Keil μVision 5 是一款功能强大的集成开发环境 (IDE),广泛应用于基于 ARM 和其他微控制器的项目开发。通过本教程的学习,您将能够掌握使用 Keil μVision 5 进行嵌入式软件开发的基本技能。让我们一同开启这段旅程,了解如何高效地使用 Keil μVision 5 及其的相关技巧!

一、File(文件)栏目内功能

1、新建文本功能

 1.1 点击File选择New, 或者直接快捷键Ctrl+N就行了

1.2  保存文本

1.3 保存到自己工程路径下,记得要.c结尾(其他语言就用其他语言的后缀),通常这里还会再创建个.h文件(头文件),我这里省略了

 1.4 这个时候只是在自己的工程路径下有这个文件了,Keil工程内还没有,需要添加进来

 方法一:

 点击自己想要添加文件的分组,直接双击,然后找到自己的文件所在路径,双击自己的文件添加,之后关闭文件就可以了

 方法二:

  这个方法可以自己设置新的分组,当然用工程自带的也可以,点击三个小方块,进入之后点击2步骤可以添加自己的分组,点击Add Files添加自己的文件。

1.5 到这里之后C文件就添加好了,如果还有.h头文件,C文件直接调用就行,但是编译会有问题,所以要添加以下头文件路径,如果上面保存C的路径是工程本身就有的不是自己新建的文件夹,这里可以不操作,因为以及添加过了(Keil如何添加头文件?)

2、Keil5打开工程详解

2.1 点击File->open

注意:

2.2 找到自己工程的Keil启动文件,一般在MDK-ARM下,点击打开就可以了

3、Keil5保存/另存/保存所有功能

方法一:

方法二:

4、Keil5的Device Database(设备数据库)功能

Keil的Device Database(设备数据库)是一个非常有用的功能,它包含了大量微控制器(MCU)的数据和配置信息。这个数据库可以帮助开发者快速地设置和配置针对特定微控制器的开发环境。以下是Device Database的主要用途:

  1. 自动配置硬件参数

    • Device Database 包含了关于微控制器的各种硬件信息,如内存映射、寄存器地址等。
    • 当选择了一个特定的微控制器后,Keil μVision 5 会自动配置这些硬件参数,简化了开发过程。
  2. 生成启动代码

    • Device Database 可以自动生成适用于所选微控制器的启动代码(Startup Code),包括初始化堆栈指针、中断向量表等。
    • 这些启动代码对于确保程序正确启动至关重要。
  3. 提供外设驱动支持

    • Device Database 包含了许多常用外设的驱动模板,例如定时器、串行通信接口等。
    • 这有助于开发者快速地添加和配置所需的外设功能。
  4. 简化调试配置

    • 设备数据库还包括了有关调试端口和调试模式的信息,这有助于简化调试配置的过程。
  5. 增强兼容性和可移植性

    • 由于Device Database中包含了广泛的微控制器信息,因此可以在不同的微控制器之间轻松迁移项目而无需进行大量的手动调整。

        总之,Device Database极大地简化了开发流程,使开发者能够更快地开始编写代码,同时减少了出错的机会。这对于初学者和有经验的开发者来说都是非常有价值的资源。

“Family”选项的主要作用是:

  1. 简化选择

    • 通过选择一个“Family”,可以快速地找到属于同一产品线的多个微控制器型号。
    • 这样可以更容易地比较同一系列内不同型号之间的差异。
  2. 共享特性

    • 同一“Family”的微控制器通常具有相似的架构和特性,这意味着它们可能共享许多相同的外设和指令集。
    • 选择一个“Family”后,可以基于这些共有的特性来编写代码,从而提高代码的可移植性。
  3. 简化配置

    • “Family”选项允许你根据一系列微控制器的共同特点来配置开发环境,这样可以减少每个单独型号的配置工作。
  4. 兼容性

    • 如果正在开发一个需要支持多个微控制器的应用,选择正确的“Family”可以帮助确保代码能够在这一系列的微控制器上运行。

“Description”部分通常包含以下信息:

  1. 基本规格:如处理器类型(例如 ARM Cortex-M3)、内存大小(Flash 和 RAM)、工作电压范围等。

  2. 外设功能:列出 MCU 支持的各种外设,如定时器、ADC、DAC、UART、SPI、I2C 等。

  3. 特殊特性:描述 MCU 的独特功能,比如是否支持低功耗模式、是否有内置的安全特性等。

  4. 应用领域:介绍该 MCU 适合的应用场景,例如工业控制、汽车电子、消费电子产品等。

  5. 封装信息:提供有关 MCU 封装类型的细节,比如 LQFP、QFN 或 BGA 等。

  6. 供应商信息:提及制造商的名称和官方网站链接,以便获取更多详细的技术文档和数据手册。

 5、Keil5的License Management(软件授权管理)功能

        "License Management" 是一个用于管理软件授权的关键功能。它允许用户查看、激活和管理软件许可证。以下是 "License Management" 的一些主要用途:

  1. 查看许可证状态

    • 用户可以通过 "License Management" 查看当前安装的许可证的状态,包括许可证的有效期、剩余天数以及是否已激活。
  2. 激活许可证

    • 对于未激活的许可证,用户可以通过 "License Management" 完成激活过程。这通常涉及到输入许可证密钥或通过网络连接到 Keil 的服务器进行在线验证。
  3. 管理多用户许可证

    • 在企业环境中,"License Management" 可以帮助管理员管理多用户的许可证,包括分配和回收许可证。
  4. 升级许可证

    • 如果需要从较低版本的许可证升级到更高版本,"License Management" 提供了相应的工具来完成这一过程。
  5. 试用许可证

    • 对于尚未购买正式许可证的用户,"License Management" 允许用户申请和管理试用版许可证。

“Single-User License”(单用户许可证)是指一种授权形式,允许一个用户在一个计算机上使用该软件。这种许可证类型通常适用于个人开发者或小型团队,其中只有一个指定的用户可以使用该软件。

以下是“Single-User License”的一些关键特点:

  1. 授权给单一用户

    • 单用户许可证只允许一个特定的用户使用该软件。
    • 这意味着许可证持有者不能将其分享给其他人使用。
  2. 固定计算机绑定

    • 通常情况下,单用户许可证与一台特定的计算机绑定。
    • 这意味着软件只能在这台计算机上安装和使用。
  3. 不可转让

    • 单用户许可证通常是不可转让的,即不能从一个人转移到另一个人。
  4. 有效期

    • 单用户许可证可能有一个有限的有效期,例如一年、三年或永久有效。
    • 到期后可能需要续订才能继续使用。
  5. 功能完整

    • 单用户许可证通常提供软件的所有功能,与多用户许可证相比没有功能上的限制。
  6. 技术支持和更新

    • 许可证持有者通常可以获得一定期限内的技术支持和软件更新服务。

如果您购买了单用户许可证,您将有权在您的个人计算机上安装和使用 Keil μVision 5,但不得将其用于商业目的或在多台计算机上共享。如果您需要在多台计算机上使用该软件或允许多人使用,则需要考虑购买多用户许可证或其他类型的许可证。

“Evaluate MDK Professional” 按钮的作用是让用户能够试用 Keil MDK Professional 版本的功能。MDK Professional 是 Keil MDK 的高级版本,提供了更多的功能和工具,以支持更复杂的嵌入式项目开发。

点击 “Evaluate MDK Professional” 按钮后,您可以获得以下好处:

  1. 试用高级功能

    • 可以访问 MDK Professional 中的高级功能,这些功能可能不包含在标准版本中。
    • 这包括更高级的调试工具、优化器、实时操作系统支持等。
  2. 评估工具链性能

    • 试用期间,可以评估 MDK Professional 工具链的性能,以确定它是否适合您的项目需求。
  3. 测试编译器和链接器

    • 可以使用 MDK Professional 的编译器和链接器来编译和链接您的项目,以评估它们的性能和兼容性。
  4. 体验集成开发环境 (IDE)

    • 可以全面体验 Keil μVision IDE 的专业功能,包括高级代码编辑器、调试器和模拟器。
  5. 无限制试用

    • 在试用期间,您可以不受限制地使用 MDK Professional 的所有功能,以便充分评估软件的能力。
  6. 技术支持

    • 试用期间,您通常也可以获得一定程度的技术支持,帮助解决遇到的问题。

“Floating License” 按钮通常用于管理浮动许可证的相关设置。浮动许可证是一种允许多台计算机共享一个或多个许可证的授权方式,非常适合团队或组织使用。点击 “Floating License” 按钮后,您可以执行以下操作:

  1. 连接到许可证服务器

    • 可以指定许可证服务器的位置,以便您的计算机可以从该服务器借用浮动许可证。
    • 这通常涉及到输入服务器的 IP 地址或主机名以及端口号。
  2. 检查许可证状态

    • 可以查看当前可用的浮动许可证数量以及已经借用的许可证数量。
    • 这有助于确保有足够的许可证供项目使用。
  3. 借用许可证

    • 如果有可用的浮动许可证,您可以从许可证服务器借用一个许可证来使用 Keil μVision 5。
    • 这样可以在没有直接网络连接的情况下使用软件。
  4. 释放许可证

    • 当不再需要使用软件时,您可以释放借用的许可证,以便其他用户可以使用。
    • 释放许可证有助于确保其他团队成员可以及时获得所需资源。
  5. 配置许可证服务器

    • 您可以配置许可证服务器的设置,包括服务器地址、端口和其他必要的网络设置。
    • 这有助于确保您的计算机能够顺利连接到许可证服务器。

通过点击 “Floating License” 按钮,可以管理和配置浮动许可证的使用,确保团队能够有效地共享和利用软件资源。这对于需要在多台计算机之间共享软件许可的企业或组织来说非常有用。

在 Keil μVision 5 中,“Floating License Administrator” 按钮通常用于管理浮动许可证的服务器端配置。它是专为管理员设计的一个工具,用于设置和监控浮动许可证服务器。以下是 “Floating License Administrator” 按钮的一些主要功能:

  1. 配置许可证服务器

    • 设置许可证服务器的基本信息,如IP地址、端口等。
    • 配置许可证文件的存储位置。
  2. 监控许可证使用情况

    • 查看当前有多少浮动许可证正在使用,以及哪些用户正在使用这些许可证。
    • 监控许可证的借用和归还情况。
  3. 管理用户和组

    • 创建和管理用户账户及其所属的组。
    • 为不同的用户和组分配不同的许可证使用权限。
  4. 许可证分配和回收

    • 分配浮动许可证给特定用户或组。
    • 回收不再需要的许可证。
  5. 日志记录和报告

    • 记录许可证使用的日志信息。
    • 生成报告以分析许可证的使用情况。
  6. 故障排除

    • 提供工具来诊断许可证服务器的问题。
    • 帮助解决用户无法连接到许可证服务器等问题。

通过 “Floating License Administrator” 按钮,管理员可以全面地管理和监控浮动许可证的使用情况,确保软件资源得到合理的分配和利用。这对于维护许可证的可用性和确保团队成员能够顺利使用软件非常重要。

 

"FlexNet License" 指与 FlexNet 相关的许可证管理功能。这个按钮可能允许您执行以下操作:

  1. 查看许可证状态:检查当前安装的 FlexNet 许可证的状态,例如剩余的许可证数量、到期日期等。

  2. 激活许可证:如果开发工具支持 FlexNet 许可证,该按钮可以帮助您激活许可证。

  3. 连接到许可证服务器:如果您的许可证是通过网络许可证服务器提供的,那么这个按钮可以帮助您连接到该服务器。

  4. 许可证借用:有些情况下,可以从许可证服务器借用许可证一段时间,以便在没有网络连接的情况下使用。

“User-Based License” 按钮通常用于管理基于用户的许可证。这种类型的许可证是针对特定用户发放的,而不是绑定到特定的计算机上。以下是 “User-Based License” 按钮的一些主要功能:

  1. 查看许可证状态

    • 显示当前用户拥有的许可证状态,包括许可证类型、有效期等信息。
  2. 激活许可证

    • 允许用户激活基于用户的许可证。
    • 用户通常需要输入一个许可证密钥或通过网络连接到 Keil 的服务器来激活许可证。
  3. 管理用户信息

    • 允许用户更新与许可证关联的个人信息,例如用户名、电子邮件地址等。
  4. 许可证续订

    • 如果许可证即将到期,用户可以通过此功能续订许可证。
  5. 许可证转移

    • 在某些情况下,用户可以将许可证从一个用户账户转移到另一个用户账户。
  6. 技术支持和更新

    • 提供技术支持和软件更新信息。

通过 “User-Based License” 按钮,用户可以方便地管理自己的许可证,并确保软件始终处于激活状态。这对于个人开发者或需要频繁更换开发环境的用户来说非常有用

6、Keil5的print setup及print (打印设置和打印)功能

print setup

print

7、Keil5的旧工程记录功能

二、 Edit(编辑)栏目内功能

1、redo/Undo/copy/paste/Cut(重做/撤销/复制/黏贴/剪切)功能

1、Undo(撤销):
功能:撤销最近的一次操作。
用途:如果不小心进行了错误的操作(如删除了一段代码或更改了一个设置),可以使用 “Undo” 按钮撤销该操作,恢复到之前的状态。
2、Redo(重做):
功能:重新执行最近被撤销的操作。
用途:如果撤销了一个操作但后来发现需要恢复这个更改,可以使用 “Redo” 按钮来恢复该操作。

3、快捷键:
“Undo” 的快捷键 Ctrl + Z

“Redo” 的快捷键Ctrl + Y

1、Copy(复制):
功能:复制选定的文本或代码片段。
用途:如果想重复使用一段代码或文本,可以先选中它,然后点击 “Copy” 按钮,之后可以将这段代码或文本粘贴到其他地方。
2、Paste(粘贴):
功能:将剪贴板中的内容插入到当前位置。
用途:在使用 “Copy” 按钮复制了某段代码或文本后,可以点击 “Paste” 按钮将它们粘贴到当前光标所在的位置。
3、Cut(剪切):
功能:从当前位置移除选定的文本或代码片段,并将其放入剪贴板中。
用途:如果想将一段代码或文本从一个位置移动到另一个位置,可以先选中它,然后点击 “Cut” 按钮,之后可以将这段代码或文本粘贴到其他地方。

4、快捷键:
“Copy” 快捷键 Ctrl + C
“Paste” 快捷键是 Ctrl + V
“Cut” 快捷键 Ctrl + X

方法一:Edit处 

方法二:工具栏处

方法三:文本中右键

 2、后退导航/前进导航功能

  1. Navigate Backwards(后退导航)

    • 功能:返回到上一个浏览的位置。
    • 用途:如果刚刚访问了另一个文件或跳转到了代码的另一部分,可以使用 “Navigate Backwards” 按钮返回到之前的位置。
  2. Navigate Forwards(前进导航)

    • 功能:前进到下一个浏览的位置。
    • 用途:如果之前使用了 “Navigate Backwards” 按钮回到了某个位置,但又想回到后来的位置,可以使用 “Navigate Forwards” 按钮前进到下一个位置。

    3.快捷键

          Navigate Backwards(后退导航)    Ctrl+-

          Navigate Forwards(前进导航)       Ctrl+shift+-

方法一: Edit处

方法二:工具栏处

 3、插入/删除书签/前往下一个书签/前往上一个书签/清除所有书签

1、Insert/Remove Bookmark(插入/删除书签):

功能:在当前行插入一个书签,或删除当前行的书签。
用途:如果想标记某个代码行以便稍后快速返回,可以使用此按钮插入书签;如果不再需要某个书签,也可以使用此按钮删除它。
2、Go to Next Bookmark(前往下一个书签):

功能:跳转到当前文件中的下一个书签位置。
用途:如果在代码中设置了多个书签,可以使用此按钮快速导航到下一个书签位置。
3、Go to Previous Bookmark(前往上一个书签):

功能:跳转到当前文件中的上一个书签位置。
用途:如果在代码中设置了多个书签,可以使用此按钮快速导航到上一个书签位置。
4、Clear All Bookmarks(清除所有书签):

功能:删除当前文件中的所有书签。
用途:如果完成了对书签位置的关注或不再需要书签,可以使用此按钮清除所有书签。

5、快捷键:
插入/删除书签:Ctrl + F2
前往下一个书签:F2
前往上一个书签:Shift + F2
清除所有书签:    Ctrl + Shift + F2

4、查找/替换/在文件中查找.增量查找

1、Find...(查找):
功能:在当前文件中搜索指定的文本。
用途:如果需要在当前文件中查找某个单词或短语,可以使用此功能。它通常提供选项来指定查找的方向(向上或向下)、是否区分大小写等。
2、Replace...(替换):
功能:在当前文件中查找并替换指定的文本。
用途:如果需要在当前文件中替换某个单词或短语,可以使用此功能。它通常也提供选项来指定查找的方向、是否区分大小写等,并允许预览替换结果。
3、Find in Files...(在文件中查找):
功能:在指定的文件或文件夹中搜索指定的文本。
用途:如果需要在整个项目或一组文件中查找某个单词或短语,可以使用此功能。它通常提供更多的筛选选项,如文件类型过滤、是否搜索子目录等。
4、Incremental Find(增量查找):
功能:随着在搜索框中输入字符,实时显示匹配的结果。
用途:这是一种快速查找的方法,当开始输入搜索词时,IDE 会立即开始在当前文件中查找匹配项,并高亮显示它们。这使得快速定位特定文本变得非常容易。
5、快捷键

查找:Ctrl + F
替换:Ctrl + H
在文件中查找:Ctrl + Shift + F
增量查找:Ctrl+I

 

5、查找/替换/在文件中查找.增量查找

  1. Show All Outlining

    • 功能:显示当前文件中所有代码段的大纲视图。
    • 用途:如果需要查看整个文件的大纲结构,可以使用此功能。
  2. Hide All Outlining

    • 功能:隐藏当前文件中所有代码段的大纲视图。
    • 用途:如果需要关闭大纲视图以专注于代码的细节,可以使用此功能。
  3. Expand All Definitions

    • 功能:展开当前文件中所有的定义。
    • 用途:如果需要查看所有定义的详细内容,可以使用此功能。
  4. Collapse All Definitions

    • 功能:折叠当前文件中所有的定义。
    • 用途:如果需要隐藏所有定义的详细内容以获得更简洁的视图,可以使用此功能。
  5. Collapse Current Block

    • 功能:折叠当前选中的代码块。
    • 用途:如果需要隐藏当前选中的代码块以获得更简洁的视图,可以使用此功能。
  6. Collapse Current Procedure

    • 功能:折叠当前选中的函数或过程。
    • 用途:如果需要隐藏当前选中的函数或过程的详细内容以获得更简洁的视图,可以使用此功能。

 

 显示大纲效果

4、 Advanced高级设置相关

  1. Go To Line... (Ctrl+G)

    • 功能:跳转到指定的行号。
    • 用途:如果需要快速定位到文件中的特定行,可以使用此功能。

  1. Select Text between Matching Braces (Ctrl+Shift+E)

    • 功能:选择匹配的大括号之间的文本。
    • 用途:如果需要选择大括号之间的代码块,可以使用此功能。

 

大括号内所有内容被选中

  1. Go To Matching Brace (Ctrl+E)

    • 功能:移动光标到匹配的大括号位置。
    • 用途:如果需要快速跳转到匹配的大括号位置,可以使用此功能。

 

 以下功能使用较少,需要的朋友自己验证下,这里写上篇幅太大了

     

  1. Tabify Selection (无默认快捷键)

    • 功能:将选区内的空格转换为制表符。
    • 用途:如果需要将选区内所有空格转换为制表符,可以使用此功能。
  2. Untabify Selection (无默认快捷键)

    • 功能:将选区内的制表符转换为空格。
    • 用途:如果需要将选区内所有制表符转换为空格,可以使用此功能。
  3. Make Uppercase (Ctrl+Shift+U)

    • 功能:将选中文本转换为大写。
    • 用途:如果需要将选中的文本全部转换为大写字母,可以使用此功能。
  4. Make Lowercase (Ctrl+U)

    • 功能:将选中文本转换为小写。
    • 用途:如果需要将选中的文本全部转换为小写字母,可以使用此功能。
  5. Comment Selection (无默认快捷键)

    • 功能:对选中的文本添加注释。
    • 用途:如果需要对选中的代码添加注释,可以使用此功能。
  6. Uncomment Selection (无默认快捷键)

    • 功能:删除选中文本的注释。
    • 用途:如果需要取消选中代码的注释,可以使用此功能。
  7. Indent Selection (无默认快捷键)

    • 功能:将选中的文本向右缩进。
    • 用途:如果需要将选中的代码块向右缩进,可以使用此功能。
  8. Unindent Selection (无默认快捷键)

    • 功能:将选中的文本向左缩进。
    • 用途:如果需要将选中的代码块向左缩进,可以使用此功能。
  9. Indent Selection with Text... (无默认快捷键)

    • 功能:使用特定文本缩进选中的文本。
    • 用途:如果需要使用特定的文本缩进选中的代码块,可以使用此功能。
  10. Unindent Selection with Text... (无默认快捷键)

    • 功能:使用特定文本取消缩进选中的文本。
    • 用途:如果需要使用特定的文本取消缩进选中的代码块,可以使用此功能。
  11. Delete Trailing White space (无默认快捷键)

    • 功能:删除行尾的空白字符。
    • 用途:如果需要删除代码行末尾的空白字符,可以使用此功能。
  12. Delete Horizontal White Space (无默认快捷键)

    • 功能:删除水平方向上的空白字符。
    • 用途:如果需要删除水平方向上的空白字符,可以使用此功能。
  13. Cut Current Line (无默认快捷键)

    • 功能:剪切当前行。
    • 用途:如果需要剪切当前行,可以使用此功能。
  14. Refresh Source Browser View (无默认快捷键)

    • 功能:刷新源浏览器视图。
    • 用途:如果需要刷新源浏览器视图以查看最新的文件结构,可以使用此功能。
  15. Update Source Browser Information (无默认快捷键)

    • 功能:更新源浏览器信息。
    • 用途:如果需要更新源浏览器的信息以反映最新的文件更改,可以使用此功能。
  16. Go to Definition of current Word (Ctrl+L)

    • 功能:跳转到当前单词的定义位置。
    • 用途:如果需要跳转到当前单词的定义位置,可以使用此功能。
  17. Go To Declaration of current Word (Shift+Alt+F12)

    • 功能:跳转到当前单词的声明位置。
    • 用途:如果需要跳转到当前单词的声明位置,可以使用此功能。
  18. Go To Next Reference of current Word (Ctrl+Shift+F11)

    • 功能:跳转到当前单词的下一个引用位置。
    • 用途:如果需要跳转到当前单词的下一个引用位置,可以使用此功能。
  19. Go To Previous Reference of current Word (F12)

    • 功能:跳转到当前单词的上一个引用位置。
    • 用途:如果需要跳转到当前单词的上一个引用位置,可以使用此功能。
  20. Go To Definition of current Word (Ctrl+F12)

    • 功能:另一种跳转到当前单词定义的方式。
    • 用途:如果需要使用另一种方式跳转到当前单词的定义位置,可以使用此功能。
  21. Go To Next Reference of current Word (Ctrl+Num +)

    • 功能:跳转到当前单词的下一个引用位置(另一种方式)。
    • 用途:如果需要使用另一种方式跳转到当前单词的下一个引用位置,可以使用此功能。
  22. Go To Previous Reference of current Word (Ctrl+Num -)

    • 功能:跳转到当前单词的上一个引用位置(另一种方式)。
    • 用途:如果需要使用另一种方式跳转到当前单词的上一个引用位置,可以使用此功能。
  23. Show All References of current Word (Ctrl+Shift+F12)

    • 功能:显示当前单词的所有引用位置。
    • 用途:如果需要查看当前单词的所有引用位置,可以使用此功能。
  24. Toggle Text Editor/configuration Wizard (Shift+F8)

    • 功能:切换文本编辑器/配置向导。
    • 用途:如果需要在文本编辑器和配置向导之间切换,可以使用此功能。

5、设置->编辑页面

  1. General Editor Settings:
    • Encoding: 文件编码选择,这里选择了"Chinese GB2312 (Simplified)",即简体中文GB2312编码。
    • Auto Indent: 自动缩进模式,可以选择Smart或者Virtual Spaces。
    • Virtual Spaces: 显示空格标记。
    • View White Space: 显示空白字符。
    • View End of Line: 显示行尾符号。
  2. Look & Feel:
    • Show Message Dialog during Find: 在查找过程中显示消息对话框。
    • Highlight Current Line: 高亮当前行。
    • Highlight matching and mismatched braces: 高亮匹配和不匹配的括号。
    • Print with syntax coloring: 使用语法高亮打印。
    • Colored Editor Tabs: 对编辑器标签进行颜色区分。
  3. File & Project Handling:
    • Create Backup files (*.BAK): 创建备份文件。
    • Automatic reload of externally modified files: 自动重新加载外部修改过的文件。
    • Save Project before entering Debug: 进入调试前保存项目。
    • Save Files before entering Debug: 进入调试前保存文件。
    • Auto save modified File every 5 Minutes: 每隔5分钟自动保存修改后的文件。
  4. Right Margin: 右侧的标尺位置,默认设为80个字符。
  5. C/C++ Files 和 ASM Files:
    • Use syntax coloring: 使用语法高亮。
    • Insert spaces for tabs: 将制表符替换为空格。
    • Tab size: 制表符大小,C/C++文件设为2,ASM文件设为4。
    • Show Line Numbers: 显示行号。
    • Use monospaced Font: 使用等宽字体。
    • Open with Outlining: 使用大纲视图打开文件。
  6. Other Files:
    • Insert spaces for tabs: 其他类型文件的制表符替换为空格。
    • Tab size: 制表符大小,设为4。
    • Show Line Numbers: 显示行号。
    • Use monospaced Font: 使用等宽字体。
  7. Function Display:
    • Display Modules: 显示模块。这可能会在代码编辑器中显示一个模块列表,方便快速访问和导航。
    • Scan function names in project files: 扫描项目文件中的函数名。这有助于构建一个函数索引,以便快速定位和跳转到特定的函数。
    • Scan function names in current editor files: 扫描当前编辑器文件中的函数名。这类似于扫描项目文件的功能,但是仅限于当前打开的文件。

6、设置->颜色和字体页面

  1. Colors & Fonts(颜色和字体)

    • All Editors:所有编辑器的颜色和字体设置,可以在这里统一更改所有编辑器的样式。
    • Asm Editor files:汇编语言编辑器文件的颜色和字体设置。
    • C/C++ Editor files:C/C++ 编辑器文件的颜色和字体设置。
    • Build Output Window:构建输出窗口的颜色和字体设置。
    • Debug (printf) Viewer:调试(printf)查看器的颜色和字体设置。
    • Disassembly Window:反汇编窗口的颜色和字体设置。
    • Editor Text files:编辑器文本文件的颜色和字体设置。
    • Logic Analyzer:逻辑分析仪的颜色和字体设置。
    • UART #1, #2, #3 Windows:串口1、2、3窗口的颜色和字体设置。
    • UART #1 Window:串口1窗口的颜色和字体设置。
    • UART #2 Window:串口2窗口的颜色和字体设置。
    • UART #3 Window:串口3窗口的颜色和字体设置。
  2. Element(元素)

    • Caret Line:光标所在行的颜色和字体设置。
    • Text Selection:文本选区的颜色和字体设置。
    • Right Margin:右侧标尺的颜色和字体设置。
  3. Font(字体)

    • Font:字体名称。
    • Size:字体大小。
    • Style:字体风格(如粗体、斜体等)。
  4. Colors(颜色)

    • Foreground:前景色,用于文字的颜色。
    • Background:背景色,用于编辑区域的背景颜色。
  5. Sample(示例)

    • XiAaBbYy:这是一个样本文本,用于预览所选字体和颜色的效果。

通过这个界面,可以自定义编辑器的外观,例如改变字体大小、颜色、背景色等,以满足个人喜好和视觉舒适度的需求。

7、 设置关键字的文本文件类型(突出自定义关键字)

  1. Text File Types(文本文件类型):
    • 这一部分允许用户选择要设置关键字的文本文件类型
    • “Editor Text files”,表示用户将为编辑器文本文件设置关键字。
    • 其他还包括Asm Editor files(汇编编辑器文件)和C/C++ Editor files(C/C++编辑器文件)。
  2. User Keywords(用户关键词):
    • 这一区域让用户输入他们希望突出显示的关键字。用户可以在这一栏中输入自己定义的关键词,这些关键词将在编辑器中以特殊的方式显示,比如用不同颜色高亮显示,便于识别和区分。用户可以通过点击旁边的“+”按钮来添加新的关键词,也可以删除已有的关键词。

 8、快捷键设置

  1. Select a Command(选择一个命令):

    • 这里列出了许多可用的命令,涵盖了诸如调试、执行分析等功能。用户可以从这个列表中选择一个命令来为其指定快捷键。
  2. Description(描述):

    • 对应于每个命令的描述,帮助用户了解其作用。
  3. Assigned Shortcuts(分配的快捷键):

    • 这个区域显示了已经分配给选定命令的快捷键。如果尚未分配,则会显示“None”。
  4. Create Shortcut(创建快捷键):

    • 点击此按钮后,用户可以为所选命令创建一个新的快捷键组合。
  5. Remove Shortcut(移除快捷键):

    • 如果某个命令已经有分配的快捷键,点击此按钮可以将其移除。
  6. Reset All Shortcuts(重置所有快捷键):

    • 点击此按钮可以将所有命令的快捷键恢复为默认值。
  7. 底部的OK和Cancel按钮:

    • OK:确认并应用所做的设置更改。
    • Cancel:取消任何未保存的更改并关闭窗口。

这个界面允许用户根据自己的习惯和偏好来定制快捷键,提高工作效率。例如,用户可以为“Debug:Run to Cursor Line”(调试:运行至光标行)命令创建一个快捷键,这样就可以更快地执行这个动作而无需每次都从菜单中寻找。

9、 文本模版功能/代码补全配置

  1. Show Code Completion List for(显示代码补全列表):

    • Struct / Class Members:结构/类成员。勾选此项后,当输入结构或类成员时,编辑器会提供自动补全建议。
    • Function Parameters:函数参数。勾选此项后,编辑器会在编写函数调用时提供参数提示。
    • Symbols after 3 Characters:输入3个字符后显示符号。这意味着当你开始输入至少3个字符后,编辑器才会开始提供代码补全建议。
    • ENTER/TAB as fill-up character:使用Enter或Tab作为填充字符。启用此选项后,按下Enter或Tab键可以接受当前的代码补全建议。
  2. Dynamic Syntax Checking(动态语法检查):

    • Enable:启用动态语法检查。勾选后,编辑器会实时检查代码的语法错误。
    • Source Browser Information (AC6):源码浏览器信息更新频率。此处设置了每3秒自动更新一次。
  3. Text Templates(文本模板):

    • Text File Types:选择模板适用的文本文件类型,这里是C/C++编辑器文件。
    • Templates:列出了一些常用的模板,如#define、#include、Header、continue、do和enum。这些是预定义的代码片段,可以帮助快速插入常见的代码块。
    • Text:显示了当前选择的模板的内容,这里是#define。

这个界面允许用户自定义代码补全行为和模板设置,提升编程效率。例如,用户可以根据需要调整代码补全的触发条件,以及启用或禁用动态语法检查。同时,还可以利用预定义的模板快速生成常用代码段,减少手动输入的时间。

10、其他功能设置

  1. UVSOCK (TCP/IP Settings(UVSOCK(TCP/IP)设置):

    • Enabled(启用):这是一个复选框,用于开启或关闭UVSOCK服务。如果选中,那么程序将会使用TCP/IP协议通过端口4823进行通信。
    • Port(端口):这是用于设置UVSOCK服务监听的端口号,默认为4823。
  2. Startup(启动):

    • Show splash screen(显示启动画面):勾选此选项后,程序在启动时会显示启动画面。
    • Open most recent project(打开最近的项目):勾选此选项后,程序会在启动时自动打开上次退出时使用的项目。
  3. Debug(调试):

    • Do not open matching source file after Run Stop(停止运行后不要打开匹配的源文件):这是一个复选框,如果选中,那么在调试结束后不会自动打开相应的源代码文件。
  4. Parallel Build Configuration(并行构建配置):

    • Disable Parallel Build(禁用并行构建):这是一个复选框,如果选中,那么程序将禁用并行构建功能。
    • Number of parallel jobs(并行任务数量):这是一个滑动条,用于设置并行构建时的最大并发任务数,当前设置为14。

三、View(视窗)栏目内功能

  1. Status Bar(状态栏):

    • 显示当前编辑器的状态信息,如光标位置、文件编码、文件类型等。
    • 还包括编译构建的状态、调试器的状态等。
  2. Toolbars(工具栏):

    • 提供快速访问常用功能的按钮,如新建文件、保存文件、运行程序、调试程序等。
    • 可以自定义显示哪些按钮。
  3. Project Window(项目窗口):

    • 列出当前项目的文件结构。
    • 允许用户管理项目文件,如添加、删除文件或目录。
    • 可以查看项目属性和设置。
  4. Books Window(书籍窗口):

    • 通常用于显示文档、教程或帮助文件。
    • 可以包含在线文档链接或本地文档资源。
  5. Functions Window(函数窗口):

    • 显示当前文件中的函数列表,便于导航。
    • 通常可以双击跳转到特定函数定义的位置。
  6. Templates Window(模板窗口):

    • 提供代码模板,帮助快速编写常见代码结构。
    • 可以插入预定义的代码段,减少重复劳动。
  7. Source Browser Window(源浏览器窗口):

    • 显示整个项目的源代码结构。
    • 用于搜索类、函数或其他符号的定义。
    • 通常支持模糊搜索和快速导航。
  8. Build Output Window(构建输出窗口):

    • 显示编译构建过程中产生的输出信息。
    • 包括编译器警告和错误信息。
  9. Error List Window(错误列表窗口):

    • 列出所有编译错误和警告。
    • 提供错误信息的详细说明和链接到错误发生的具体位置。
  10. Find In Files Window(文件查找窗口):

    • 用于在多个文件中搜索文本。
    • 支持正则表达式和替换功能。

 四、Project(工程)栏目内功能

1、Project栏目总体

1、New μVision Project... 和 New Multi-Project Workspace...: 创建新项目或多项目工作区。
2、Open Project...: 打开已有的项目。
3、Close Project: 关闭当前项目。
4、Import 和 Export: 导入和导出项目。
5、Manage: 管理项目。
    Project items...: 让用户管理项目中的文件和文件夹,包括添加、删除、重命名和移动项目文件。
    Multi-Project Workspace...: 创建多项目工作空间,允许在一个工作空间内管理多个项目。
    Run-Time Environment...: 配置运行时环境设置,如库、头文件路径、编译器选项等。
    Select Software Packs...: 选择软件包,让用户从一系列预先打包好的软件组件中选择所需的库和驱动程序。
    Reload Software Packs: 重新加载已经安装的软件包,可能是为了刷新或更新已安装的软件包列表。
    Pack Installer...: 安装新的软件包,通常包含特定硬件平台的驱动程序、库和其他支持文件。
    Migrate to Version 5 Format...: 将现有项目迁移到新版格式,可能是指将旧版μVision项目转换为新版μVision格式,以兼容较新的IDE版本。
6、Select Device for Target ...: 选择目标设备。
7、Remove Item: 删除项目中的项目项。
8、Options for Target 'DHT11'...: 配置目标'DHT11'的选项。Alt+F7快捷键。
9、Clean targets: 清理目标,清除之前构建的结果。
10、Build Target: 构建目标。F7快捷键。
11、Rebuild all target files: 重新构建所有的目标文件。
12、Batch Build: 批处理构建。
13、Batch Setup...: 设置批处理构建。
14、Translate D:\hqyj\STM32\STM32_Beginner\DHT11\Core\Src\main.c Ctrl+F7: 编译指定路径下的main.c文件。Ctrl+F7快捷键。
15、Stop build: 停止构建。

2、配置目标,内详情(魔术棒)

2.1 Device配置工程所使用的芯片

 2.2 Target目标配置相关参数

  1. Device: 设备选择,这里是STM32G030C8Tx。

  2. Xtal (MHz): 指定晶振频率,目前未定义。

  3. Operating system: 操作系统选择,此处为空,表示没有操作系统。

  4. System Viewer File: 系统视图文件,用于生成系统视图文件的选项,目前未设置。

  5. Use Custom File: 使用自定义文件,如果勾选,则可以从外部文件读取系统视图数据。

  6. Code Generation: 代码生成选项,包括:

    • ARM Compiler: 使用默认的编译器版本5。
    • Use MicroLIB: 使用MicroLIB,一种精简版的标准库。
    • Big Endian: 大端模式。
    • Use Cross-Module Optimization: 开启跨模块优化。
  7. Read/Only Memory Areas: 只读内存区域,包括ROM1, ROM2, ROM3, IROM1, IROM2。

  8. Read/Write Memory Areas: 读写内存区域,包括RAM1, RAM2, RAM3, IRAM1, IRAM2。

    对于只读和读写内存区域,用户可以指定起始地址和大小。在这个例子中:

    • IROM1: 起始于0x80000000,大小为0x10000字节。
    • IRAM1: 起始于0x20000000,大小为0x2000字节。

这些设置允许开发者精确地配置其应用程序的存储布局,包括代码和数据的存放位置。这对于嵌入式系统非常重要,因为它们通常具有有限的内存资源。开发者可以根据硬件特性来分配不同的内存区域给代码和数据。

 2.3 Output输出配置页

  1. Select Folder for Objects...: 选择对象文件的存放目录。
  2. Name of Executable: 输出可执行文件的名字,此处为"DHT11"。
  3. Create Executable: 创建可执行文件,即最终的二进制程序。
  4. Debug Information: 创建调试信息,用于配合调试器使用。
  5. Create HEX File: 创建HEX文件,这是一种标准的十六进制格式,用于烧录到目标硬件。
  6. Browse Information: 创建浏览信息,有助于代码阅读和分析。
  7. Create Library: 创建静态库文件,方便其他项目引用。

这些设置决定了编译后生成的文件类型和存放位置。开发者可以选择是否生成可执行文件、调试信息、HEX文件和库文件。这些选项对于不同阶段的开发过程都很重要:可执行文件用于运行程序,调试信息用于调试,HEX文件用于烧录到目标硬件,而库文件则可以在其他项目中复用。

  2.4 Listing列表功能配置

  1. Select Folder for Listings...: 选择列表文件的存放目录。
  2. Page Width and Page Length: 列表文件的页面宽度和长度,用于控制打印输出的格式。
  3. Assembler Listing: 生成汇编语言列表文件,扩展名为".lst"。
  4. Cross Reference: 交叉参考列表,提供函数调用关系的详细信息。
  5. C Compiler Listing: C编译器列表文件,扩展名".txt",但在此处未被选择。
  6. C Preprocessor Listing: C预处理器列表文件,扩展名".i",也未被选择。
  7. Linker Listing: 链接器列表文件,名称为"DHT11.map"。
  8. Memory Map: 内存映射列表,显示程序在内存中的分布情况。
  9. Symbols: 符号列表,列出所有符号及其地址。
  10. Size Info: 大小信息,显示各段的大小。
  11. Callgraph: 调用图,展示函数之间的调用关系。
  12. Cross Reference: 交叉参考列表,提供变量和函数的使用情况。
  13. Totals Info: 总计信息,汇总各段的大小。
  14. Unused Sections Info: 未使用的段信息,显示未使用的内存区域。
  15. Veneers Info: Veneers信息,显示链接器生成的辅助函数。

这些设置决定哪些类型的列表文件会在编译过程中生成。列表文件可以帮助开发者理解代码结构、定位错误和优化性能。例如,内存映射文件显示了程序如何分布在内存中,调用图展示了函数间的依赖关系,符号列表则列出了所有全局变量和函数的位置。

  2.5 User用户功能配置 

  1. Command Items: 提供了三个类别,分别是Before Compile C/C++ File(在编译C/C++文件前)、Before Build/Rebuild(在构建/重建前)和After Build/Rebuild(在构建/重建后),用户可以在这里添加自定义的命令。
  2. User Command: 用户可以输入自己的命令,比如执行脚本或者工具。
  3. Not Specified: 当前没有指定任何自定义命令。
  4. Run #1 和 Run #2: 允许用户添加两个独立的命令序列,以便在编译或构建前后执行。
  5. Run 'After-Build' Conditionally: 如果勾选此选项,在满足某些条件时有条件地运行“After-Build”命令。
  6. Beep When Complete: 在构建完成后发出蜂鸣声提示。
  7. Start Debugging: 启动调试,如果勾选此选项,构建完成后会自动开始调试。

  2.6 C/C++选项配置  

  1. Preprocessor Symbols: 定义和取消定义宏,如USE_HAL_DRIVERSTM32G030xx
  2. Language / Code Generation: 编译器的语言和代码生成选项。
    • Optimization: 选择了Level 3优化级别,这是最高级别的优化。
    • Optimize for Time: 优化以提升速度。
    • Plain Char is Signed: 将字符类型设为有符号。
    • One ELF Section per Function: 每个函数一个ELF段。
    • Read-Write Position Independent: 读写位置无关。
    • C99 Mode: 使用C99标准。
    • GNU extensions: 使用GNU扩展。
  3. Include Paths: 包含路径列表,指定了头文件搜索路径。
  4. Misc Controls: 杂项控制,可能包含额外的编译器选项。
  5. Compiler control string: 编译器控制字符串,这里是一系列编译器参数。

这些设置影响着编译器的行为和生成的代码质量。例如,优化级别会影响代码的大小和性能;C99模式启用了一些新的C语言特性;包含路径告诉编译器在哪里查找头文件;编译器控制字符串是传递给编译器的一组选项,用于控制编译行为。

 2.7 Asm选项配置  

  1. Conditional Assembly Control Symbols: 定义和取消定义汇编器控制符号。
  2. Language / Code Generation: 汇编器的语言和代码生成选项。
    • Thumb Mode: 使用Thumb指令集。
    • No Warnings: 关闭警告。
    • Execute-only Code: 仅执行代码。
    • No Auto Includes: 禁止自动包含。
  3. Include Paths: 指定头文件搜索路径。
  4. Misc Controls: 杂项控制,可能包含额外的汇编器选项。
  5. Assembler control string: 汇编器控制字符串,这里是一系列汇编器参数。

这些设置影响着汇编器的行为和生成的代码质量。例如,Thumb模式使用更紧凑的指令集;关闭警告可能会忽略一些潜在的问题;包含路径告诉汇编器在哪里查找头文件;汇编器控制字符串是传递给汇编器的一组选项,用于控制汇编行为。

 2.8 链接器选项设置

  1. Use Memory Layout from Target Dialog: 使用目标对话框中的内存布局。
  2. Make RW Sections Position Independent: 创建可重定位的R/W节区。
  3. Make RO Sections Position Independent: 创建可重定位的R/O节区。
  4. Don't Search Standard Libraries: 不搜索标准库。
  5. Report 'might fail' Conditions as Errors: 报告可能出现失败的情况作为错误。
  6. Scatter File: 分散加载文件,用于描述内存布局。
  7. Misc controls: 杂项控制,可能包含额外的链接器选项。
  8. Linker control string: 链接器控制字符串,这里是一系列链接器参数。

这些设置影响着链接器的行为和生成的可执行文件。例如,内存布局决定了程序在目标设备上的存储方式;分散加载文件描述了程序在内存中的分布;链接器控制字符串是传递给链接器的一组选项,用于控制链接行为。

 2.9 Debug选项设置 

  1. Use Simulator : 使用软件模拟器进行调试。
  2. Limit Speed to Real-Time: 限制速度到实时。
  3. Load Application at Startup: 开始时加载应用程序。
  4. Restore Debug Session Settings: 恢复调试会话设置。
    • Breakpoints:恢复断点。
    • Toolbox:恢复工具箱。
    • Watch Windows & Performance Analyzer:恢复监视窗口和性能分析器。
    • Memory Display:恢复内存显示。
    • System Viewer:恢复系统查看器。
  5. CPU DLL and Dialog DLL: 这些是用于仿真器支持的动态链接库。
  6. Driver DLL: 用于驱动支持的动态链接库。
  7. Warn if outdated Executable is loaded: 加载过期的可执行文件时发出警告。

  2.10Utilities(功能)选项设置 

  1. Configure Flash Menu Command: 设置闪存编程命令。
    • Use Target Driver for Flash Programming: 使用目标驱动器进行闪存编程。
    • Use Debug Driver: 使用调试驱动器。
    • Update Target before Debugging: 在调试前更新目标。
    • Init File: 初始化文件。
    • Use External Tool for Flash Programming: 使用外部工具进行闪存编程。
  2. Configure Image File Processing (FCARM): 设置图像文件处理(FCARM)。
    • Output File: 输出文件。
    • Add Output File to Group: 添加输出文件到指定的组。
    • Image Files Root Folder: 图像文件根目录。

 五、Flash栏目内功能

  1. Download: 下载按钮通常用于将编译好的程序下载到目标设备。点击这个按钮后,IDE会将编译生成的目标文件(.hex)通过调试接口(如JTAG或SWD)传输到目标设备的闪存中运行。这一步骤通常是在完成编译和链接之后进行的,使得开发人员能够在硬件上运行和测试他们的代码。

  2. Erase: 擦除按钮用于清除目标设备的闪存内容。这通常包括擦除整个闪存,以便为新程序腾出空间。在重新编程设备之前,开发者有时候需要先擦除闪存来确保没有遗留的数据干扰新程序的运行。

  3. Configure Flash Tools...: 配置闪存工具按钮允许用户自定义如何进行闪存编程。点击这个按钮后,会出现一个新的对话框,让用户配置闪存编程的具体细节,比如使用的编程算法、编程步骤等。这对于不同的设备和编程需求来说是非常有用的,因为不同设备可能有不同的编程要求和流程。通过配置闪存工具,用户可以根据自己的需求定制编程过程,以适应特定的硬件和软件环境。

六、Debug栏目内功能(大多数内容在进入调试模式时才能使用)

  1. Start/Stop Debug Session: 开始或停止调试会话。点击开始后,调试器将加载并准备执行程序;点击停止则会结束当前的调试会话。

  2. Energy Measurement without Debug: 在不进行调试的情况下测量能量消耗。此功能通常用于评估代码在实际运行中的功耗情况。

  3. Reset CPU: 重置处理器。这会导致处理器回到启动状态,通常用于清除所有运行状态,以便从头开始执行。

  4. Run: 运行程序直到遇到断点或程序结束。这是最常见的运行方式。

  5. Stop: 停止程序执行。在调试过程中,可以随时使用此按钮来暂停程序。

  6. Step: 单步执行。每次点击,程序就会执行当前行的下一条指令,如果当前行包含函数调用,则会进入该函数内部。

  7. Step Over: 跨过当前行的代码。如果当前行包含了函数调用,则不会进入该函数内部,而是直接执行完该函数并继续执行下一行代码。

  8. Step Out: 退出当前函数调用。如果当前处于一个函数内部,点击此按钮将使程序执行到该函数的结束并返回到调用它的位置。

  9. Run to Cursor Line: 执行程序直到光标所在行。这有助于快速跳转到某个特定的代码位置进行检查。

  10. Show Next Statement: 显示下一步将要执行的语句。

  11. Breakpoints...: 管理断点设置。这里可以添加、删除或编辑断点。

  12. Insert/Remove Breakpoint: 在当前行插入或移除一个断点。断点用于暂停程序执行,以便检查程序状态。

  13. Enable/Disable Breakpoint: 启用或禁用当前选定的断点。这有助于控制哪些断点是活动的。

  14. Disable All Breakpoints in current Target/Kill All Breakpoints in Current Target: 分别禁用和彻底删除当前目标中的所有断点。

  15. OS Support: 提供操作系统级别的支持,例如模拟操作系统行为或与真实操作系统交互。

  16. Execution Profiling: 对程序执行情况进行性能分析,帮助识别瓶颈。

  17. Memory Map...: 显示内存映射图,展示程序在内存中的布局,包括代码段、数据段和其他内存区域。

  18. Inline Assembly...: 允许在源代码中插入汇编语言代码。这对于优化某些部分的代码非常有用。

  19. Function Editor (Open Ini File)...: 编辑函数相关的配置文件,通常用于配置函数的行为或属性。

七、Tools工具栏内功能

  1. Set up PC-Lint...: 这个选项用于设置和配置PC-Lint工具。PC-Lint是一个强大的静态代码分析工具,它可以检测C/C++代码中的潜在错误、风格问题和编码规范违反。点击这个按钮后,用户可以设置PC-Lint的选项,如规则级别、输入文件、输出格式等。

  2. Lint all C/C++ Source Files: 这个选项一次性运行PC-Lint工具对所有的C/C++源文件进行分析。点击后,IDE会扫描所有源文件并报告任何发现的问题。

  3. Configure Merge Tool...: 这个选项用于设置合并工具。合并工具通常用于比较和整合多个版本的代码,解决冲突。点击后,用户可以配置合并工具的参数,如比较算法、差异显示样式等。

  4. Customize Tools Menu...: 这个选项允许用户自定义工具菜单。点击后,用户可以选择添加、删除或重新排列工具栏上的工具,以满足个人喜好或工作流的需求。

八、SVCS栏目内功能

"Configure Software Version Control...",它通常用于设置和配置软件版本控制系统(SVCS),如Git、Subversion(SVN)、Mercurial等。点击这个按钮后,用户可以设置SVCS的相关选项,如仓库地址、用户名、密码、分支策略等。配置好后,用户可以利用SVCS进行代码版本控制,包括提交、拉取、合并、回滚等操作。这对于多人合作开发和代码历史追踪非常重要。

  1. Template File: 模板文件。在这里可以指定一个模板文件,用于初始化新的项目或版本控制操作。

  2. User Name: 用户名。填写你在版本控制系统中的用户名。

  3. Database: 数据库。填写版本控制数据库的URL或路径。

  4. Project Ident: 项目标识符。这通常是一个唯一的ID,用来区分不同的项目。

  5. Menu Content: 菜单内容。在这个区域,你可以自定义版本控制菜单的内容,比如添加或删除一些常用的操作。

  6. Query for: 查询类型。可以选择查询评论、修订号或检查点。

  7. Command: 命令。填写版本控制系统对应的命令行命令。

  8. Arguments: 参数。填写命令行参数,根据具体的命令进行设置。

  9. Environment: 环境变量。可以设置环境变量,以便版本控制系统正常工作。

  10. Initial Folder: 初始文件夹。指定版本控制操作的初始工作目录。

通过设置这些选项,用户可以自定义版本控制系统的操作,使其更好地适应自己的工作习惯和需求。

八、Window栏目内功能

Reset View to Defaults: 将视图重置为默认。点击这个选项后,IDE会恢复到初始的窗口布局,所有打开的文档和面板都会被关闭,只留下基本的视图。

 

  1. Reset: 重置。点击这个按钮后,IDE会重新初始化窗口布局,但不会关闭当前项目。这会影响当前模式下的窗口布局,即仅限于当前的编辑或调试模式。

  2. Restart: 重启。点击这个按钮后,IDE会关闭当前项目并以默认布局重新启动。这不仅会影响到当前模式,还会覆盖编辑和调试模式的布局。

 

  1. Split: 分割视图。这个选项允许用户将窗口分割成两个或更多部分,便于同时查看和编辑多个文件。

  2. Close All: 关闭所有窗口。点击后,IDE会关闭所有打开的文档和面板,只保留主窗口。

 九、Help栏目内功能

  1. μVision Help: μVision帮助。点击后,用户可以查阅关于μVision IDE的基本指南和教程。

  1. 左侧导航栏:列出各种开发工具和相关文档的链接,方便用户快速定位所需信息。

  2. 顶部标题:Arm Development Tools - Arm Keil

  3. 简介:Keil MDK是最全面的基于Arm Cortex-M微控制器的软件开发解决方案,包括IDE、C/C++编译器、调试器、软件包管理器和CMSIS软件。

  4. 表格:列出了Keil MDK组件及其相关用户指南或产品页面的链接。

  5. 注意:特定功能的可用性取决于激活的Keil MDK版本。更多信息可在Keil MDK产品页面找到。

  6. 右侧内容:详细介绍各开发工具的功能和特性。

  7. 底部版权信息:版权所有 © Arm Limited (或其关联公司),保留所有权利。

  8. 左侧导航栏中的子项

    • uVision:μVision IDE用户指南
    • uVision Debugger:μVision调试器用户指南
    • Arm Compiler for Embedded:嵌入式Arm C/C++编译器用户指南
    • CMSIS Software and Middleware:CMSIS软件和中间件
    • Arm Processor Support:Arm处理器支持
    • Support and Maintenance:支持和服务
    • Technical Support available:技术支持可用
  9. USB调试/跟踪适配器:ULINKpro、ULINKplus和ULINK2的描述和比较。

  10. 版权信息:版权所有 © Arm Limited (或其关联公司),保留所有权利。

 

 

  1. Open Books Window: 打开书籍窗口。这个选项可以打开一个窗口,里面包含有关μVision IDE和相关技术的电子书和文档。

 

  1. Simulated Peripherals for STM32G030C8Tx: STM32G030C8Tx的模拟外设。点击后,用户可以访问STM32G030C8Tx芯片的模拟外设列表,了解如何在仿真环境下使用这些外设。

  2. Contact Support: 联系支持。这个选项提供了联系技术支持的方式,用户可以在遇到问题时寻求帮助。

  3. Check for Update: 检查更新。点击后,IDE会自动检查是否有新的版本发布,如果有,用户可以下载并安装最新版。

  4. About μVision...: 关于μVision。点击后,用户可以看到μVision IDE的版本信息和其他相关信息。

 十、工具栏

十一、仿真调试界面 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

缓存学习

缓存基本概念 概念 对于缓存,最普遍的理解是能让打开某些页面速度更快的工具。从技术角度来看,其本质上是因为缓存是基于内存建立的,而内存的读写速度相比之于硬盘快了xx倍,因此用内存来代替硬盘作为读写的介质当然能大大提高访…

亲测解决OneDrive: Proxy Authentication Error - 2606

这个问题由网络配置有误引起,解决方法是换网络或者关闭代理。 解决方法 换一个网络,比如手机wifi。如果开了代理可以把代理关了。 原版笔记 use vanilla network

RK3588——Linux系统烧录(以Firefly的Core-3588L为例)

Firefly的Core-3588L官网 1. 硬件连接 首先先用Type-C 一端数据线板子的OTG,另一端连接电脑的USB。 按住设备上的 RECOVERY (恢复)键并保持,连接电源,保持2秒左右,松开RECOVERY (恢复&#xff…

图模型训练

一、依赖安装 网址:pyg-team/pytorch_geometric: Graph Neural Network Library for PyTorch (github.com) 找到此处,点击here进入依赖安装界面 找到自己安装的torch版本并点击,,进入安装依赖 二、用库自带的数据集 代码&#x…

WCT系列(二):SyncTransactionQueue类详解

SyncTransactionQueue类: 接上一回的WindowContainerTransaction类讲解,上一篇博客根据TaskView.java中的updateTaskVisibility()方法分析了WindowContainerTransaction的功能及使用。本次继续上一篇的思路,主要拆解syncTransactionQueue类。…

【JUC】06-可重入锁

可重入锁:又称递归锁。在外层使用锁后,内层仍然可以使用,并不发生死锁,这样的锁就叫可重入锁。synchronized默认是一个可重入锁。 public class Demo01 {public synchronized void m1() {System.out.println(Thread.currentThrea…

软件函数过期-软件开发故障处理-开发语言升级-全栈软件架构师-软件修仙界掌握几十门开发语言

一、软件界通用关键字 obsolete,deprecated,deprecation 二、多语言全栈,所有语言混合开发是什么?十几门开发语言 组合1、php/java/aspJSCandroid 平台物联网设备,智能音箱 组合2:C#PHPPYTHON 组合3&am…

云计算的三大服务模式:IaaS、PaaS、SaaS的深入解析

在数字化转型的浪潮中,云计算以其独特的灵活性、可扩展性和成本效益,正逐渐成为企业IT架构的核心。云计算提供了三种主要的服务模式,分别是基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务…

【算法/学习】双指针

✨ 少年要迎着朝阳,活得肆无忌惮 🌏 📃个人主页:island1314 🔥个人专栏:算法学习 🚀 欢迎关注:👍点赞 &a…

挑战1G内存!如何在千万记录中找到最热TOP10查询串?

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! 哈喽大家好!我是你们的技术小伙伴小米,今天又来和大家分享一个非常实用的算法题!假设我们现在有1000w个查询记录,这些记录中有很多重复的内容,但去…

内存碎片问题—容器启动状态卡在ContainerCreating

线上发现部分容器处于ContainerCreating状态: 查看kubelet日志: [rootdc07-prod-k8s-node /root] journalctl -u kubelet Jul 01 00:45:30 prod-k8s-node kubelet[12227]: I0701 00:45:30.491326 12227 kubelet.go:1908] SyncLoop (ADD, "api"): &quo…

RK3568笔记五十五:yolov10训练部署测试

若该文为原创文章,转载请注明原文出处。 yolov8还没熟悉,yolov10就出来了,本篇记录使用yolov10训练自己的数据,并部署到rk3568上。 参考大佬的博客yolov10 瑞芯微RKNN、地平线Horizon芯片部署、TensorRT部署,部署工程难度小、模型推理速度快_yolov10 rknn-CSDN博客 一、…

【网络编程】基于UDP的TFTP文件传输

1)tftp协议概述 简单文件传输协议,适用于在网络上进行文件传输的一套标准协议,使用UDP传输 特点: 是应用层协议 基于UDP协议实现 数据传输模式 octet:二进制模式(常用) mail:已经不再…

深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(还在等什么!!!超详解!!!)

目录 🍔 前言 🍔 图像基础知识 1. 像素和通道的理解 2. 小节 🍔 卷积层 1. 卷积计算 2. Padding 3. Stride 4. 多通道卷积计算 5. 多卷积核卷积计算 6. 特征图大小 7. PyTorch 卷积层 API 7. 小节 🍔 池化层 1. 池…

WEB之文件上传

一:思维导图 二:相关问题解答 1,什么是文件上传漏洞? 文件上传漏洞是一种常见的网络安全问题,它发生在网络应用程序允许用户上传文件到服务器的功能中。如果这一功能没有得到适当的安全控制和验证,攻击者就可以利用…

web开发,过滤器,前后端交互

目录 web开发概述 web开发环境搭建 Servlet概述 Servlet的作用: Servlet创建和使用 Servlet生命周期 http请求 过滤器 过滤器的使用场景: 通过Filter接口来实现: 前后端项目之间的交互: 1、同步请求 2、异步请求 优化…

利用telnet发送QQ邮箱的电子邮件时遇到的问题(2024最新)

问题1:即使在控制面板启用telnet客户端也无法使用telnet 解决:使用管理员权限打开cmd,执行命令:dism /online /Enable-Feature /FeatureName:TelnetClient,之后根据弹出信息键入Y重启即可 参考链接:https:…

开源新宠:RAG2SQL工具,超越Text2SQL的7K Star之作

查询数据库离不开SQL,那如何快速构建符合自己期望的SQL呢?AI发展带来了Text2SQL的能力,众多产品纷纷提供了很好的支持。 今天我们分享一个开源项目,它在Text2SQL的基础上还要继续提高,通过加入RAG的能力进一步增强&am…

虹软科技25届校招笔试算法 A卷

目录 1. 第一题2. 第二题3. 论述题 ⏰ 时间:2024/08/18 🔄 输入输出:ACM格式 ⏳ 时长:2h 本试卷分为不定项选择,编程题,必做论述题和选做论述题,这里只展示编程题和必做论述题,一共三…

代码随想录算法训练营_day17

题目信息 654. 最大二叉树 题目链接: https://leetcode.cn/problems/maximum-binary-tree/题目描述: 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。递归地在最大值 左边 的 子数组前…