GDB调试步骤与常用命令
一、 调试流程概览# 步骤 命令 说明 1. 编译带调试信息 g++ -g program.cpp -o program 生成包含调试信息的可执行文件 2. 启动调试器 gdb program.exe 启动 GDB 并加载程序 3. 设置断点 break main 或 b 15 在函数或行号设置断点 4. 运行程序 run 开始执行程序 5. 控制执行 next, step, continue 单步执行或继续 6. 检查变量 print variable 查看变量值 7. 退出调试 quit 退出 GDB 详细调试步骤#1. 编译带调试信息的程序#首先使用 -g 选项编译,生成包含调试信息的可执行文件: 123456789# 基本编译(包含调试信息)g++ -g main.cpp -o main.exe# 推荐编译选项(调试版本)g++ -g -O0 -Wall -Wextra -std=c++17 main.cpp -o main.exe# 如果有多个源文件g++ -g -O0 *.cpp -o...
Windows下搭建Vscode + Ozone + CubeMX + Arm GNU Toolchain + Makefile STM32开发环境
一、 安装Vscode、Ozone和CubeMX#略. 二、安装Arm GNU Toolchain# 下载地址:Arm GNU Toolchain 下载arm-gnu-toolchain-15.2.rel1-mingw-w64-x86_64-arm-none-eabi.msi最好安装到D盘,也可以下载.zip,自己设置环境变量 输入arm-none-eabi-gcc -v看下环境是否设置成功 三、安装chocolatey# 管理员模式运行PowerShell,然后输入以下代码 12345# 设置安装目录[System.Environment]::SetEnvironmentVariable('ChocolateyInstall', 'D:\Your\ChocolateyPath', 'Machine')# 安装chocolateySet-ExecutionPolicy Bypass -Scope Process -Force;...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick Start#Create a new post#1$ hexo new "My New Post" More info: Writing Run server#1$ hexo server More info: Server Generate static files#1$ hexo generate More info: Generating Deploy to remote sites#1$ hexo deploy More info: Deployment
JLink刷固件
JLinK刷固件教程 jlink刷固件及解决报错克隆问题 2.然后打开SEGGER . J-Link v7.22b文件夹中的J-Flash Lite v7.22b 3.第一步点击红色箭头处的三个点,选择jlink固件/OB-STM32_V754_Addr-0x8000000_Change date to to 30-02-02(Licensed-CBT6-128K_USE).hex 4.烧写完成后打开jlink制固件教程(解诀报错盗版克隆)\SEGGER - J-Link v7.22b\J-Link Comander v7.22b 5.最后就是输入license JLink提取固件教程 附录 JLinK刷固件教程#解决市面上购买到的盗版jlink使用Ozone时的报错问题(采用重刷固件及添加License的方式) 需要准备一个能正常使用的jlink(提示盗版的也可以) jlink刷固件及解决报错克隆问题#1.首先将jlink与被刷入的jlink连接 3.3 -> 3.3 GND -> GND SWCLK...
Ubuntu下的STM32开发环境搭建(Vscode + CubeMX + Ozone)
Ubuntu系统搭建Vscode + CubeMx + Ozone嵌入式开发环境# 一、换源#1. 备份源列表# sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak 2. 命令行打开source.list文件# sudo gedit /etc/apt/sources.list 3. 修改source.list文件,更换源# 我个人更推荐使用中科大源 1234567891011# 中科大镜像源deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiversedeb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe...
STM32时钟体系、SetSysClock、PLL、时钟源
目录 一、时钟体系 1、参考手册 2、时钟源 3、时钟树 一、时钟体系#为单片机提供一个时钟信号(非常稳定),该信号可以用于各种时钟域的同步,包括系统时钟、HCLK、PCLK1、PCLK2、I2S时钟、USB PHY时钟、以太网PHY时钟等。STM32的时钟系统由外部晶振、PLL(锁相环)和内部 RC 振荡器组成 其作用包括: 为处理器提供准确的时钟信号,保证处理器、总线和外设的正确工作。 通过 PLL 的倍频功能,产生多种频率的时钟信号,满足不同外设的时钟需求。 通过时钟系统提供的时钟分频器、预分频器等功能,进一步调整时钟频率,以适应不同的应用场景。 时钟系统在 STM32 的系统中扮演着关键的角色,它的稳定性和精度对整个系统的性能影响很大 1、参考手册#STM32F4xx 中文参考手册.pdf 第 106 页 2、时钟源#STM32F407IG可以使用三种不同的时钟源来驱动*系统时钟 (SYSCLK)*,CPU 运行的最高频率为 168MHz。 HSI(High-Speed...
RoboMaster
RMUC总决赛 深圳-春茧#