计算机网络----访问URL的过程

浏览器中输⼊url地址 —>显示主⻚的过程

  1. DNS解析(浏览器缓存->系统缓存–>路由器缓存->DNS缓存)
  2. 建立TCP连接
  3. 浏览器向web服务器发送HTTP请求(cookie也会随请求一起发送)
  4. 服务器处理请求并返回HTTP报⽂
  5. 浏览器解析渲染⻚⾯,显示HTML
  6. 连接结束

DNS域名解析 –> 发起TCP的三次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> 浏览器解析html代码,并请求html代码中的资源(如javascript、css、图片等) –> 浏览器对页面进行渲染呈现给用户–>连接结束

### 如何使用 OpenOCD 调试 STM32 微控制器 #### 工具链概述 OpenOCD 是一款开源的硬件调试工具,支持多种微控制器和开发板。它可以通过 JTAG 或 SWD 接口连接到目标设备并提供 GDB 远程调试功能[^2]。 --- #### 安装必要的软件环境 为了配置 OpenOCD调试 STM32 微控制器,需要先安装以下组件: 1. **STM32CubeMX**: 用于生成初始化代码。注意该工具依赖 Java Runtime Environment (JRE),因此需提前安装最新版 JRE[^1]。 2. **GNU Arm Embedded Toolchain**: 提供 GCC 和 GDB 编译器/调试器。 3. **OpenOCD**: 主要负责与硬件通信。 4. **VSCode 插件**(可选): 如果偏好集成开发环境,则可通过插件简化操作流程。 --- #### 配置 OpenOCD 以下是具体步骤说明: ##### 1. 下载并安装 OpenOCD 在 Linux 系统下,通常通过包管理器获取 OpenOCD。例如 Ubuntu 可运行命令 `sudo apt-get install openocd`。对于其他平台,请访问官方文档确认兼容性和安装指南。 ##### 2. 准备配置文件 每种型号的 STM32 单片机都需要对应的配置脚本才能正常工作。这些文件一般位于 `/usr/share/openocd/scripts/target/` 中。如果未找到特定芯片的支持文件,可以从社区资源补充或手动创建。 示例路径如下所示: ```bash /usr/share/openocd/scripts/interface/stlink.cfg # ST-Link 驱动设置 /usr/share/openocd/scripts/target/stm32f1x.cfg # 对应 F1 系列 MCU 的定义 ``` ##### 3. 启动 OpenOCD 服务 打开终端窗口执行启动指令,指定接口及目标参数: ```bash openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg ``` 此过程会建立监听端口,默认为 TCP 3333(Telnet 控制台)以及 TCP 6666(GDB Server)。此时保持后台持续运行状态以便后续调用[^3]。 --- #### 设置 GDB 调试环境 完成上述准备工作之后,还需借助 GNU Debugger 实现源码级跟踪分析等功能。 ##### 加载 ELF 文件至内存位置 假设已编译好项目镜像名为 `project.elf` ,则按照下面方式加载: ```gdb target remote :6666 # 建立远程链接 monitor reset halt # 复位停止 CPU 执行流 load # 将二进制数据写入闪存区 continue # 继续运行应用程序直至断点触发 ``` ##### 断点控制语句示范 利用简单的 C++ 示例展示基本语法结构: ```cpp int main() { int a = 5; int b = 7; // 设定此处作为暂停观察变量值变化情况的位置 printf("%d\n",a+b); } ``` 对应输入命令序列如下所列: ```gdb break main.cpp:3 # 在第3行处设立临时中断标志 run # 开始新一轮测试周期直到遇到预定条件为止 print a # 查看当前局部存储单元内的数值状况 step # 单步前进查看下一步逻辑走向 quit # 结束整个会话退出界面返回初始态 ``` --- #### 整合 VS Code 流程(扩展阅读) 若倾向于图形化交互体验而非纯命令行模式的话,推荐考虑 Visual Studio Code 方案。其内置丰富的拓展市场可供挑选适合个人习惯的最佳实践方案。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值