当前位置:网站首页>JTAG debugging source level debugging of arm bare board debugging
JTAG debugging source level debugging of arm bare board debugging
2022-07-25 06:08:00 【Chen Hongwei】
Catalog
1 Prerequisites for source level debugging
2 Use the command line for source level debugging
3 Use eclipse Source level debugging
1 Prerequisites for source level debugging
Source level debugging has 3 Prerequisites


Because when debugging at the source level , Our program is already located at his link address , That is, it has been repositioned , Then we need to change the previous procedure , We need to comment out the code of initialization memory and relocation in the previous program , So who class initializes our SDRAM, Who can download the program to the link address , This is by openOCD To do the .

2 Use the command line for source level debugging
Here's just an experience , Because this program is not suitable for debugging .


As we said before, the premise of debugging is that it has been initialized and relocated , So here we first download one init The program completes initialization , Then debug our program ,
Then we found our SDRAM It's ready to write , Then download the code , our arm-elf-gdb With our openOCD Link .

Then start debugging ,si(step instruction)

It is still inconvenient to debug with commands , Next we use eclipse, It's right gdb Another layer of packaging .
3 Use eclipse Source level debugging






Let's order debug I went to debug ,load Direct load , But we need to initialize the memory first ,
And then again debug.

Report errors

Because Chinese directories are not supported , Delete and rebuild the project , Copy the program to a non Chinese Directory , Then repeat the above steps , Recreate project .

Then you can debug in the window ,

4 summary

边栏推荐
- How to play a data mining game entry Edition
- Data too long for column ‘data‘ at row 1以及设置成longblob造成的乱码解决。node-mysql
- VIM configuring golang development environment
- context must be a dict rather解决
- Idea commonly used 10 shortcut keys
- QT qtextedit setting qscrollbar style sheet does not take effect solution
- Calculate BDP value and wnd value
- Ffmpeg notes (I) fundamentals of audio and video
- "Everyday Mathematics" serial 61: March 1
- ARM裸板调试之JTAG调试源码级调试
猜你喜欢

【Unity3D】UGUI回调函数

Android interview question: why do activities rebuild ViewModel and still exist—— Jetpack series (3)

HTB-Devel

New developments in Data Governance: what is the impact of the EU's Data Governance Research Report on China

sqlilabs less-29

【Node】服务端口被占用Error: listen EADDRINUSE: address already in use :::9000-如何关闭node启动的端口

Unity model simplification / consolidation one click plug-in

Unity Animator动画与状态机
![(16)[系统调用]追踪系统调用(3环)](/img/b0/011351361135fd9f8e2d0d31749f73.png)
(16)[系统调用]追踪系统调用(3环)

Mechanism and principle of multihead attention and masked attention
随机推荐
The macro definition of embedded C language development and the skills of finding the maximum value of two numbers
10. Rendering Basics
【每日一练】day(14)
Singing "Seven Mile fragrance" askew -- pay tribute to Jay
Productivity tool in the new era -- flowus information flow comprehensive evaluation
R language uses LM function to build multiple linear regression model and write regression equation according to model coefficient
Prometheus operator configures promethesrule alarm rules
Matlab drawing example: 5: Biaxial graph
PMP Exam is easy to confuse concept discrimination skills! Don't lose points after reading!
(16) [system call] track system call (3 rings)
What does PK, NN, Qu, B, UN, ZF, AI, G mean when creating tables in MySQL
sqlilabs less-28~less-8a
PostgreSQL learning 04 PG_ hint_ Plan installation and use, SQL optimization knowledge
(牛客多校二)G-Link with Monotonic Subsequence(构造题)
【C语言】指针和数组的深入理解(第一期)
R language uses data.table function to create data.table data (use: operator to create continuous numeric vector)
Sword finger offer 54. the k-th node of the binary search tree
新时代生产力工具——FlowUs 息流全方位评测
R language Visual scatter diagram, geom using ggrep package_ text_ The repl function avoids overlapping labels between data points (set the hJust parameter to show that labels of all data points are a
Msys2 common configuration