当前位置: 首页 > news >正文

IAR仿真调试

1. 硬件连接

  • JTAG与SWD接口:IAR支持JTAG和SWD两种下载器和单片机之间的连接方式。JTAG使用标准的20Pin接口,而SWD则更为简化,只需要四根线(GND、TCK、TMS、RST(可选))。
  • 连接方法:如果使用龙邱下载器,按照龙邱核心板的下载接口丝印层与下载器排线的凸口对应连接。如果使用其他下载器,需要参考核心板原理图找到下载口部分,并按照引脚对应连接。

2. 软件配置

  • IAR设置:IAR并不知道你使用什么下载器,因此需要手动选择。常见的下载器有JLink-V9和DAPLink等。
  • 优化等级:在IAR中,可以通过调整编译器的优化等级来影响调试效果。例如,将优化等级调低(如选择Medium或None)可以让全局变量、静态局部变量、局部变量的值在调试时更容易查看。
  • Driver选择:在Debugger设置中,需要选择正确的仿真器Driver,如ST-LINK。
  • 下载设置:在Download选项中,可以勾选Verify Download和Use flash loader来开启下载校验。
  • 接口选择:对于ST-Link,可以选择SWD作为调试接口。

3. 调试操作

  • 进入调试状态:点击Download and Debug按钮(快捷键Ctrl+D)进入调试状态。如果使用模拟器(Simulator),则无需连接设备。如果使用ST-Link连接设备,则开启调试时会烧录程序。
  • 调试窗口:调试窗口通常在View中打开,包括各种寄存器、全局变量等的显示。
  • 调试操作:常用的调试操作包括Step Over(F10)逐过程、Step Into(F11)逐条执行程序指令、Go(F5)直接把程序执行到最后等。工具栏上也提供了相应的调试图标。
  • 断点设置:在Debug过程中,可以使用断点+全速运行的方法让程序运行到指定位置,方便单步调试和分析。
  • 结束调试:点击Stop Debugging(一个红色×号)结束调试。

4. 其他注意事项

  • 路径设置:在IAR中添加路径时,建议使用相对路径而不是绝对路径,以避免工程位置改变后找不到文件的问题。
  • 宏定义:在Defined symbols中添加必要的宏定义,根据自己的需求添加如USE_STDPERIPH_DRIVER、STM32F40_41xxx等。
  • 链接文件:在Linker–Config–Linker configuration file中添加链接文件,并勾选Override default以重设默认文件。

通过以上步骤和设置,可以有效地进行IAR仿真调试。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Ubuntu部署开源网关Apache APISIX
  • Facebook革新:数字社交的下一个阶段
  • 【内存管理】内存管理概述
  • UnityXR Interaction Toolkit 如何使用XRHand手部识别
  • Vue学习|Vue快速入门、常用指令、生命周期、Ajax、Axios
  • 【数据结构与算法】使用单链表实现队列:原理、步骤与应用
  • conntrack如何限制您的k8s网关
  • web入门(1)---6.10
  • html5实现个人网站源码
  • Ruoyi5.x RuoYi-Vue-Plus新建Translation翻译类
  • 2002NOIP普及组真题 3. 产生数
  • cefsharp124.x升级125.x(cef125.0.21/Chromium 125.0.6422.142)
  • LeetCode-day08-881. 救生艇
  • centos使用docker快速安装nginx
  • Day 25 二叉树的终止
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • Effective Java 笔记(一)
  • es6要点
  • Java多线程(4):使用线程池执行定时任务
  • React系列之 Redux 架构模式
  • Swift 中的尾递归和蹦床
  • 从0实现一个tiny react(三)生命周期
  • 代理模式
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 基于 Babel 的 npm 包最小化设置
  • 近期前端发展计划
  • 深入 Nginx 之配置篇
  • 王永庆:技术创新改变教育未来
  • 网页视频流m3u8/ts视频下载
  • 微信开源mars源码分析1—上层samples分析
  • 我的面试准备过程--容器(更新中)
  • 异常机制详解
  • 用quicker-worker.js轻松跑一个大数据遍历
  • Java总结 - String - 这篇请使劲喷我
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • "无招胜有招"nbsp;史上最全的互…
  • #162 (Div. 2)
  • #if #elif #endif
  • #if 1...#endif
  • #大学#套接字
  • (26)4.7 字符函数和字符串函数
  • (leetcode学习)236. 二叉树的最近公共祖先
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (pytorch进阶之路)扩散概率模型
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (转)拼包函数及网络封包的异常处理(含代码)
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET delegate 委托 、 Event 事件
  • .Net IOC框架入门之一 Unity
  • .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态
  • .netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项