历史上的今天
返回首页

历史上的今天

今天是:2024年10月08日(星期二)

正在发生

2021年10月08日 | AVRStudio仿真调试快速入门

2021-10-08 来源:eefocus

● AVRStudio的安装

  到 ATMEL 官方网站: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725 下载安装。


  ● AVRStudio之建立、打开相关调试文件

  --使用汇编语言,软件仿真

  若使用汇编语言进行源代码的编写,由于AVRSTUDIO自带ASM编译器,可以直接建立、打开。

  接着, 进行代码编写,之后按  进行编译。


  --使用ICCAVR,软件仿真

  若使用C进行编写,由于AVRSTUDIO不带C编译器,所以需要打开相应的调试文件。

  打开*.COF(使用ICCAVR编译器编写源代码)或*.D90文件(使用IAR编译器编写源代码)。这类文件与您需要调试的*.C文件所处同一文件夹。下面以ICCAVR为例,进行介绍。

  接着,保存*.aps文件,改文件将记录目标芯片、文件路径等信息。

  在打开项目文件的时候,如下图:选择“AVR Simulator”,右边选择实际使用的器件型号,之后点击“Finish”即可进行软件仿真。

  选择完成后,即可进行仿真调试了。

  --使用JTAGICE仿真器,硬件仿真

  与软件仿真不同的是:在打开项目文件的时候,如下图:选择“JTAG ICE”,其它的步骤与软件仿真一致,见上。


  --使用JTAG ICE mkII仿真器,硬件仿真

  与软件仿真不同的是:在打开项目文件的时候,如下图:选择“JTAG ICE”,其它的步骤与软件仿真一致,见上。


  ● AVRStudio之调试程序


下面简单介绍使用AVRStudio进行仿真调试


调试控制栏

调试控制栏可以控制程序的执行状态,所有的调试控制都可以由菜单,快捷键和调试工具栏实现。


注意!如果在目标文件中含有有效的源码级信息,所有的调试操作将一直继续执行,直到到达第一条用户源代码语句.如果没有遇到用户源代码语句,程序将继续执行。如果要停止程序的运行,必须在发出停止命令前转换到反汇编模式。

1.开始调试(Start Debugging)

此命令将启动调试模式,并使所有的调试控制命令处于有效。通常在调试模式下不能编辑程序。此命令将连接调试平台,装载目标文件并执行复位操作。


2.停止调试(Stop Debugging)

此命令将停止调试过程,并断开与调试平台的连接,进入编辑模式.


3.复位(Reset)(SHIFT+F5) 

此命令可以让目标程序复位。当程序正在运行时,执行此命令的话程序将停止运行。如果用户是在源级模式中,程序会在复位完成后,继续运行直到第一条用户的源代码语句处。复位命令执行后,所有窗口中的信息都将更新。


4.运行(Run)(F5) 

调试菜单中的运行命令将启动(重启动)程序。程序将一直运行直到被用户停止或遇到一个断点。只有当程序处于停止运行状态时才能执行此命令。


5.暂停(Break)(CTRL-F5) 

调试菜单中的暂停命令将停止程序运行。当程序停止时,所有窗口中的信息都将更新。只有当程序处在运行状态时才能执行此命令。


6.单步执行(Single step, Trace Into)(F11)

调试菜单中的跟踪命令将控制程序只执行一条指令。当 AVR Studio 是在源代码级模式时,可执行一条源代码语句。当在反汇编级模式时,可执行一条反汇编指令。当指令执行完成后,所有窗口中的信息都将更新。


7.逐过程(Step Over)(F10)

调试菜单中的逐过程命令只执行一条指令。如果此条指令包含一个函数调用/子程序调用,该函数/子程序也会同时执行。如果在逐过程命令中遇到用户设置的断点,程序运行将被挂起。在逐过程命令执行完毕后,所有窗口中的信息才会被更新。


8.跳出(Step Out)(SHIFT+F11) 

调试菜单中的跳出命令会使程序一直运行,直到当前函数结束。如果遇到用户设置的断点,程序运行将被挂起。当程序处在最外层(如主函数)时,此时执行跳出命令,程序将继续运行,直到遇到一个断点或被用户停止。在该命令执行完成后,所有窗口中的信息都将更新。


a.运行到光标处(Run To Cursor)(F7) 

调试菜单中的运行到光标处命令,将使程序运行到源代码窗口中光标指示的语句处停止。此时如果遇到用户的断点,程序的运行将不会被挂起。如果程序运行永远达不到光标指示处的语句,程序将一直继续运行,直到被用户停止。当此命令结束后,所有窗口中的信息都将更新。由于此命令是与光标位置有关,所以只有当源代码窗口激活时才有效。


b.自动运行(Auto Step) 

调试菜单中的的自动运行命令将重复执行跟踪指令。当 AVR Studio 处在源代码级模式时,每次执行一条源指令,处在反汇编级模式时,每次执行一条汇编指令,随后所有窗口中的信息都将更新,接者自动执行下一条语句或指令。使用自动运行命令时,程序的运行将一直持续的单步运行,直到遇到一个用户设置的断点或被用户停止。


c.设置清除断点


d.清除所有断点


e.快速观察窗口


推荐阅读

史海拾趣

Gustav Klauke GmbH公司的发展小趣事

Gustav Klauke GmbH在电子行业中的五个发展故事

故事一:创立与电气时代的崛起

1879年,Gustav Klauke GmbH在德国雷姆沙伊德成立,正值第二次工业革命带来的“电气时代”大爆发。创始人Gustav Klauke凭借其对精工品质的执着追求,将公司的业务聚焦于电气连接技术和电缆作业工具的研发。随着全球电气工业的迅速发展,Klauke迅速成为该领域的佼佼者,为供电系统的各个环节提供可靠且实用的解决方案,满足了社会对电气产品日益增长的多元化需求。

故事二:产品创新与多元化发展

历经百年开拓,Klauke的产品线不断丰富和完善。从最初的钟表维修钳子,到电缆接线端子的生产,再到电池驱动的液压工具的研发,Klauke始终走在行业前沿。特别是1994年推出的首款电池驱动液压工具,标志着公司在电气连接技术上的重大突破。至今,Klauke已拥有多达280种工具,2000多个型号,超过10000个优质部件,广泛应用于电力、铁路和工业等多个领域。

故事三:品质与认证的国际认可

Klauke深知电气连接作业对安全可靠性的极高要求,因此始终将产品质量放在首位。公司不仅拥有IEC(国际电工委员会)、UL(美国保险商试验所)、DNV(挪威船级社)和GL(德国劳氏船级社)等特殊行业的权威资质认证,还通过严格的产品测试报告,确保每一款产品都能达到国际最高标准。这种对品质的坚持,让Klauke在全球客户中赢得了极高的信誉和口碑。

故事四:全球化布局与业务拓展

随着全球市场的不断扩大,Klauke积极实施全球化战略。从德国本土出发,公司在全球范围内设立了多个分公司和销售办事处,如印度、奥地利、西班牙等。同时,公司还通过并购和合作等方式,不断拓展业务领域和市场份额。例如,2018年Gustav Klauke GmbH被艾默生收购,现隶属于“专业工具”部门,这一举措进一步提升了公司在全球电气工具市场的竞争力。

故事五:未来展望与技术创新

面对未来,Klauke继续秉承德国精工品质的优良传统,致力于技术创新和服务优化。公司正密切关注物联网和工业4.0等下一代趋势,并制定相应的战略计划。例如,新型电池供电液压工具配备了蓝牙接口,实现了移动数据读取和工具配置的便捷性。此外,Klauke还计划推出更多高适应性、精准性的电气连接解决方案,以更好地满足全球日益多元的施工作业需求。展望未来,Klauke将继续向下一个百年目标迈进,为电子行业的发展贡献更多力量。

西安航天民芯公司的发展小趣事

在宇航领域,动力电池管理芯片的性能要求极高。西安航天民芯凭借其在集成电路设计领域的深厚积累,成功研发出全国第一颗宇航级动力电池管理芯片。这一突破不仅打破了国外垄断的局面,也为中国宇航事业的发展做出了重要贡献。

晶群科技(Gem-micro)公司的发展小趣事

随着新能源汽车市场的蓬勃发展,西安航天民芯敏锐地捕捉到了这一机遇。公司投入大量资源进行新能源汽车BMS管理芯片的研发,并成功推出了国内首款新能源汽车专用BMS管理芯片。这一创新产品填补了国内空白,为公司在新能源汽车领域赢得了先机。

HBH-Microwave公司的发展小趣事

HBH-Microwave的故事始于对高性能微波组件的执着追求。在成立初期,公司便聚焦于设计并制造能够满足严苛应用需求的微波放大器。通过不断的技术研发,HBH成功推出了HA6013型号的高功率放大器,该产品在17.0至18.0 GHz频段内表现出色,迅速在通信和雷达领域获得认可。这一创新不仅巩固了HBH在微波技术领域的地位,也为后续产品的开发奠定了坚实的技术基础。

Fairchild Imaging公司的发展小趣事

Fairchild Imaging公司的历史可以追溯到1950年成立的Fairchild Camera & Instrument Company。这家公司自创立以来,就凭借其创新的技术和优质的产品,在许多重大的政府、国防项目中发挥了关键作用。随着公司业务的不断拓展,Fairchild Camera & Instrument Company逐渐将业务重心转向半导体和集成电路领域,并在此领域取得了显著成就。最终,Fairchild Imaging从Fairchild Camera & Instrument Company中独立出来,专注于高端成像技术的研发和应用。

ALLEN BRADLEY公司的发展小趣事

Fairchild Imaging公司的历史可以追溯到1950年成立的Fairchild Camera & Instrument Company。这家公司自创立以来,就凭借其创新的技术和优质的产品,在许多重大的政府、国防项目中发挥了关键作用。随着公司业务的不断拓展,Fairchild Camera & Instrument Company逐渐将业务重心转向半导体和集成电路领域,并在此领域取得了显著成就。最终,Fairchild Imaging从Fairchild Camera & Instrument Company中独立出来,专注于高端成像技术的研发和应用。

问答坊 | AI 解惑

PLD器件在红外遥控解码中的应用

摘 要: 介绍了红外遥控发射和接收的原理,提出了一种用PLD(可编程逻辑器件)进行解码的方案,并分别用EPROM和GAL实现。该方案思路新颖、原理简单、工作可靠,可用于各种以键盘扫描为输入方式的智能仪器系统中。       关键词 ...…

查看全部问答>

MCF52211 USB虚拟串口的例子

这个demo是在一个项目中用于测试的例程。测试MCF52211的USB模块,实现了CDC协议,从而在PC上虚拟出一个串口。MCF52211集成了一个USB OTG的模块,它是freescale coldfire v2核心的一款MCU。相关介绍请参考http://www.freescale.com …

查看全部问答>

代做毕业设计

代做电子类毕业设计,价格实惠,速度从优,服务至上,有兴趣联系QQ691423819…

查看全部问答>

为什么设计芯片时有的将芯片管脚使用1作为有效(及高电平有效),而有的却使用0为有效(及低电平有效)?

为什么设计芯片时有的将芯片管脚使用1作为有效(及高电平有效),而有的却使用0有效(及低电平有效)? 为什么不统一使用高电平有效或低电平有效?这样有什么好处? 是什么因素决定该管脚需采用高电平还是低电平有效的? /Jack…

查看全部问答>

驱动为何会装载后马上卸载?

写了个USB转COM口的驱动,但是为何系统启动过程中装载完驱动就迅速卸载? 打印信息, USBToCOM::Process Attach USBToCOM::Process Detach sources文件 RELEASETYPE=PLATFORM TARGETNAME=ucom TARGETTYPE=DYNLINK DLLENTRY=DllEntry DEF ...…

查看全部问答>

高亮度LED的可靠性试验以及失效模态

 LED模组和灯具的典型失效模式包含了不同层次的失效模式,涉及到LED封装结构以及工艺过程(如表1)。LED在实际使用中,由于复杂的环境以及封装工艺局限性从而使封装材料退化、荧光粉退化、金属电迁移、局部温度过高产生的热应力所引起的芯片和硅胶 ...…

查看全部问答>

STM8编绎报这个是什么意思

> Loading file E:\\车机项目\\A5V5_MA\\A5V5_v1\\Debug\\a5v5.s19 in PROGRAM MEMORY area  ... FILE : line 195: Address 0x1019 is out of range and is ignored! FILE : line 195: Address 0x101A is out of range and is i ...…

查看全部问答>

各位高手帮我看看我2812AD

我的2812怎么转换精度那么差,本来是3V的时候应该是4095的,但是我的片子转换出来是3953,并且2.75V的时候转换出来只有3652,与理想值几乎相差100。 这样是不是2812转换精度太差了?? 各位高手请指点一下小妹,谢谢啦…

查看全部问答>

PADS2007如何使用PADS2005中的元件封装库

PADS2007如何使用PADS2005中的元件封装库本人从事PCBLAYOUT现在转做PCB业务,专业生产铝基板和FR4板,希望大家多多关照。QQ: 520122524Skype:xcq185388740msn: xcq185388740@live.cn邮箱:xcq185388740@163.com…

查看全部问答>