diff --git a/IAR/IAR.md b/IAR/IAR.md index caeface..79f5cbd 100644 --- a/IAR/IAR.md +++ b/IAR/IAR.md @@ -165,6 +165,12 @@ General Options 界面,选择32bit或64bit,选择fpu功能是否开启。 - 跨平台兼容性支持。 - 调试与生产版本的快速切换。 +STM32F103xB文件的作用: + +核心作用:通过条件编译启用设备特定代码。 + +包含正确的设备头文件,启用外设驱动和内存映射 + #### 3.4链接文件 Linker页面设置链接文件。 @@ -271,7 +277,7 @@ CMSIS提供 Cortex-M 处理器内核的底层访问接口,包括: ### 6.静态库的封装和调用 1. 新建项目,同时设置.h和.c文件,进行内部程序的编写。注意减少外部依赖,能够直接移植调用。 -2. 写完之后点击option进行设置,选择General,OutPut选择library,然后make编译生成.lib文件,使用时复制.lib文件到项目内. +2. 写完之后点击option进行设置,选择General,OutPut选择library,然后make编译生成.lib文件,使用时复制.lib文件到项目内。 3. 在option内进行配置,然后选择Linker -- > Library,将静态库.lib文件添加,同时添加头文件,返回工程重新编译。 4. 可以发现静态库的函数可以在工程里面进行调用。 @@ -325,7 +331,7 @@ CMSIS提供 Cortex-M 处理器内核的底层访问接口,包括: | **断点条件 Watch** | 条件触发与监视结合 | 捕获特定状态 | 条件满足时 | | | | **Live Watch** | 允许在程序运行过程中实时跟踪变量值,而无需暂停 CPU 执行。 | 实时系统调试 | 自动 | | | | **Local Watch(局部监视)** | 主要用于跟踪程序中**局部变量**的变化 | 查看局部函数内的局部变量 | 自动 | | | -| | | | | | | +| **Statics Watch** | 监视程序内的静态窗口 | | | | | ### 9.寄存器信息 @@ -333,7 +339,17 @@ CMSIS提供 Cortex-M 处理器内核的底层访问接口,包括: image-20250708152951214 - r0~r3 主要用于子程序间传递参数, r4~r11 主要用于保存局部变量,但在 Thumb 程序中,通常只能使用 r4~r7 来保存局部变量; r12 用作子程序间scratch 寄存器,即 ip 寄存器; r13 通常用做栈指针,即 sp; r14 寄存器又被称为连接寄存器(lr),用于保存子程序以及中断的返回地址; r15 用作程序计数器(pc),由于 ARM 采用了流水线机制,当正确读取了 PC 的值后,该值为当前指令地址加 8 个字节,即 PC 指向当前指令的下两条指令地址。 + **r0~r3**: 主要用于子程序间传递参数。 + + **r4~r11** :主要用于保存局部变量,但在 Thumb 程序中,通常只能使用 r4~r7 来保存局部变量。 + + **r12** :用作子程序间scratch 寄存器,即 ip 寄存器。 + + **r13**: 通常用做栈指针,即 sp。 + + **r14**: 寄存器又被称为连接寄存器(lr),用于保存子程序以及中断的返回地址。 + + **r15** :用作程序计数器(pc),由于 ARM 采用了流水线机制,当正确读取了 PC 的值后,该值为当前指令地址加 8 个字节,即 PC 指向当前指令的下两条指令地址。 CPSR和SPSR都是程序状态寄存器,其中SPSR是用来保存中断前的CPSR中的值,以便在中断返回之后恢复处理器程序状态。s diff --git a/Source Insight/Source Insight.md b/Source Insight/Source Insight.md index cf12501..2228907 100644 --- a/Source Insight/Source Insight.md +++ b/Source Insight/Source Insight.md @@ -58,8 +58,6 @@ 在VIew菜单进行想要的窗口打开或关闭即可。 -##### - | 窗口 | 名称 | 作用 | | :-----------------: | :------------: | :-----------------------------------------------------: | | **Relation Window** | **关系窗口** | **函数调用关系**, **变量引用关系**,**继承与实现关系** | diff --git a/Sourcetree/Pictures/image-20250716161140946.png b/Sourcetree/Pictures/image-20250716161140946.png new file mode 100644 index 0000000..2655a1f Binary files /dev/null and b/Sourcetree/Pictures/image-20250716161140946.png differ diff --git a/Sourcetree/Pictures/image-20250716161244066.png b/Sourcetree/Pictures/image-20250716161244066.png new file mode 100644 index 0000000..386be24 Binary files /dev/null and b/Sourcetree/Pictures/image-20250716161244066.png differ diff --git a/Sourcetree/Pictures/image-20250716161350905.png b/Sourcetree/Pictures/image-20250716161350905.png new file mode 100644 index 0000000..cedc5f7 Binary files /dev/null and b/Sourcetree/Pictures/image-20250716161350905.png differ diff --git a/Sourcetree/Pictures/image-20250716161506019.png b/Sourcetree/Pictures/image-20250716161506019.png new file mode 100644 index 0000000..40424de Binary files /dev/null and b/Sourcetree/Pictures/image-20250716161506019.png differ diff --git a/Sourcetree/Sourcetree.md b/Sourcetree/Sourcetree.md index c8f4b75..a5f3437 100644 --- a/Sourcetree/Sourcetree.md +++ b/Sourcetree/Sourcetree.md @@ -134,6 +134,10 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 image-20250708161231708 +如果选择新建本地分支并对远程分支进行跟踪,可以选择在远程文件中检出新分支到本地。 + +![image-20250716161350905](./Pictures/image-20250716161350905.png) + #### 3.2合并分支 合并分支指将多个分支进行统一,或者将分支的内容同步至其他分支。 @@ -169,11 +173,11 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 #### 3.4切换分支 -直接左侧分支双击即可 +直接左侧分支双击即可或者选择检出分支。 image-20250708161314068 -或者选择检出分支。 + #### 3.5制造冲突 @@ -202,7 +206,7 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 #### 3.8推送 -将本地内容推送到云端。 +将本地内容推送到远程仓库。 image-20250708161414737 @@ -210,7 +214,7 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 #### 4.1书写忽略文件 -添加.gitignore 文件,可以将不想让仓库获取的文件写入里面。 +文件夹内手动添加.gitignore 文件或者点击设置,选择忽略项,可以将不想让仓库追踪的文件写入里面。 ![image-20250715132116446](./Pictures/image-20250715132116446.png) @@ -238,9 +242,33 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 image-20250708161435985 +**应用补丁的四种情况**: + +**1. 分支上的 `1.txt` 内容与补丁内容完全一致** + +- **表现**:补丁内容已经存在于文件中,Git 会检测到没有变化,通常补丁应用无效或跳过这部分,不会重复添加。 +- **结果**:补丁不产生新改动,应用成功但无实际更改。 + +**2. 分支上的 `1.txt` 是空文件** + +- **表现**:补丁中添加的内容(`+1`)会被完整地添加到空文件中。 +- **结果**:文件由空变成包含补丁内容,补丁完全应用成功。 + +**3. 分支上的 `1.txt` 内容与补丁内容部分一致** + +- **表现**:补丁中新增的内容与已有部分有重叠,Git 会尝试合并,可能成功应用新增部分,或者产生冲突需要手动解决。 +- **结果**:补丁部分应用成功,冲突部分需人工介入。 + +**4. 分支中没有 `1.txt` 文件** + +- **表现**:如果补丁涉及新增文件,Git 会直接创建 `1.txt` 并写入补丁内容;如果补丁只修改文件而文件不存在,则应用失败报错。 +- 结果: + - 补丁新增文件时,文件被创建且内容写入。 + - 补丁修改文件但文件缺失时,补丁应用失败。 + #### 4.4删除补丁 -直接右键删除即可。 +选择补丁文件,直接右键删除即可。 #### 4.5贮藏 @@ -256,6 +284,12 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 image-20250711130039902 +丢弃操作只能对本地已包括的文件的更新内容进行丢弃,对于新添加的文件,因为不包含在我们的本地仓库中,无法进行丢弃操作。 + +(途中丢弃操作灰色,将其添加到暂存区时,可以丢弃,但是丢弃的只是提交这个操作) + +![image-20250716161244066](./Pictures/image-20250716161244066.png) + #### 4.7创建标签 标记提交。 @@ -268,6 +302,8 @@ Sourcetree 是一款由 Atlassian 开发的免费图形化版本控制客户端 右键删除标签即可。 +![image-20250716161506019](./Pictures/image-20250716161506019.png) + #### 4.9检出节点 检出节点可以分为检出本地分支和远程仓库分支