AVR仿真调试方法---AVR Studio与Proteus联合仿真调试
来源:互联网 发布:php手册安卓 编辑:程序博客网 时间:2024/05/16 06:34
一.WinAVR生成相应文件
只需要安装WinAVR。会生成相应文件,下载到目标板中运行。也可以把生成的elf或cof文件引入到Proteus中进行软件与硬件的仿真,单可单步调试。
1.制作makefile文件
(1)运行mfile, 弹出窗口;
(2)填入目标文件名称,TARGET = test
(3)选择Atmega128 CPU
(4)选择调试文件格式为DEBUG = dwarf-2
(5)保存到与本文件同一目录中,保存文件名为makefile
2.运行make all
**有1个运行错误,找不到timer_enable_int(_BV(TOIE0))
查找AVR目录,在D:\WinAVR-20100110\avr\include\compat\deprecated.h 中有这个函数定义,在头中加入这个.h文件。
3. 在本目录中,make all 通过!
***可以生成makefile文件;可能生成cof,elf,hex,bin文件。
***hex或bin用AVRISP工具下载到目标板中就可以全速运行了。
***目标板CPU中加入了bootloader会更好,AVRISP都不要了,只用PC机一个串口,就下载目标程序到目标板了。(见其它工程)
***也可以把生成的文件cof引用Proteus中进行软件与硬件的仿真,可单步执行。
***如果有硬件目标板;如果不需要单步调试,只用这个就可以了,以下内容都可以不看了。
二.AVR Studio中仿真
需要安装两个程序:WinAVR和AVR Studio。
可以只用AVR Studio而不用WinAVR的mfile, 但要安装WinAVR, AVR Studio能找到WinAVR就可以,XP下已经自动完成。
1.软件模拟仿真:在AVR Studio中自己的目录中建立工程,工程名为test,
(1)选择GCC AVR,
(2)选择AVR Simulator(选择Debug/Select Platform and Device/选择AVR Simulator).
(3)选择ATmega128,
(4)设置时钟
(5)编译 Build all
仿真运行,OK!
***只能从PC机上运行,仿真.c文件的运行,通过看AVR端口和AVR寄存器了解运行状态。
***可以调试程序的代码错误和逻辑错误。很好!
***可单步调试
***非实时。
2.在线实时仿真(与JTAG ICE连接): 选择Jtage ICE与目标板连接,在线实时仿真程序。
** .c的目标文件hex下载到实际的目标硬件板中,硬件是真实的,程序也是真实地在目标板中运行,运行状态上传到PC机中显示。
***可单步调试
***实时
***不足:需要JTAG ICE开发硬件,和目标板。
三.Proteus 中仿真
只需要安装WinAVR和Proteus两个程序, 或者WinAVR,AVR Studio和Proteus三个程序。
1.方法1(两个程序):引入WinAVR 生成cof文件到CPU中,用于在proteus中仿真。
***源文件.c与Proteus工程文件一定要放于同一个目录中。
***可单步调试软件硬件。
2.方法2(三个程序):引入AVR Studio生成的elf文件到Proteus中,elf在AVR Studio工程目录中。
***源文件.c与Proteus工程文件一定要放于同一个目录中。
***问题:.c源文件有两处,src目录中和proteus工程中,会不一致,不好。
解决方法:可以把AVR Studio工程、Proteus工程、C源文件等放于同一目录中,但这会很乱。
四.AVR Studio与Proteus联合仿真调试
需要安装WinAVR, AVR Studio, Proteus三个软件,在AVR Studio中启动Proteus。
三个独立目录结构:
.\src ----放.c .h源文件
.\AVRStudioPRJ\ ----放AVR Studio工程文件(会生成elf,hex等文件)
.\ProteusPRJ\ ----放Proteus工程文件
1.在AVR Studio中仿真(选择Debug/Select Platform and Device/选择Proteus VSM Viewer)
2.Proteus中CPU的程序选择AVR Studio生成的elf文件,可以带目录。
***源文件只放于一处 .\src中就可以了!保证源程序的一致性,但是,*进入Proteus调试是不能看到C源码的(前边说的不同目录的问题),但在AVR Studio中可以看到。
***可以软件和硬件同时仿真运行
***可单步调试
***非实时。
五.如何选择调试方法
可以混合使用!!!根据你项目的情况来选择。
其它:
PIM---Physical Interface Mode
(1)COMPIM---Real RS232 Com to real VTerm connncetion --OK!
(2)Winpcap---real Nic to virul Nic connnection --OK!
(2)Virual USB---virtual USB ---不稳定!要使用Winpcap
问题:1. Proteus VSM SDK 方法
附:Keil for ARM也可以连接到Proteus中。 但Protous当前可支持的ARM有限。
只需要安装WinAVR。会生成相应文件,下载到目标板中运行。也可以把生成的elf或cof文件引入到Proteus中进行软件与硬件的仿真,单可单步调试。
1.制作makefile文件
(1)运行mfile, 弹出窗口;
(2)填入目标文件名称,TARGET = test
(3)选择Atmega128 CPU
(4)选择调试文件格式为DEBUG = dwarf-2
(5)保存到与本文件同一目录中,保存文件名为makefile
2.运行make all
**有1个运行错误,找不到timer_enable_int(_BV(TOIE0))
查找AVR目录,在D:\WinAVR-20100110\avr\include\compat\deprecated.h 中有这个函数定义,在头中加入这个.h文件。
3. 在本目录中,make all 通过!
***可以生成makefile文件;可能生成cof,elf,hex,bin文件。
***hex或bin用AVRISP工具下载到目标板中就可以全速运行了。
***目标板CPU中加入了bootloader会更好,AVRISP都不要了,只用PC机一个串口,就下载目标程序到目标板了。(见其它工程)
***也可以把生成的文件cof引用Proteus中进行软件与硬件的仿真,可单步执行。
***如果有硬件目标板;如果不需要单步调试,只用这个就可以了,以下内容都可以不看了。
二.AVR Studio中仿真
需要安装两个程序:WinAVR和AVR Studio。
可以只用AVR Studio而不用WinAVR的mfile, 但要安装WinAVR, AVR Studio能找到WinAVR就可以,XP下已经自动完成。
1.软件模拟仿真:在AVR Studio中自己的目录中建立工程,工程名为test,
(1)选择GCC AVR,
(2)选择AVR Simulator(选择Debug/Select Platform and Device/选择AVR Simulator).
(3)选择ATmega128,
(4)设置时钟
(5)编译 Build all
仿真运行,OK!
***只能从PC机上运行,仿真.c文件的运行,通过看AVR端口和AVR寄存器了解运行状态。
***可以调试程序的代码错误和逻辑错误。很好!
***可单步调试
***非实时。
2.在线实时仿真(与JTAG ICE连接): 选择Jtage ICE与目标板连接,在线实时仿真程序。
** .c的目标文件hex下载到实际的目标硬件板中,硬件是真实的,程序也是真实地在目标板中运行,运行状态上传到PC机中显示。
***可单步调试
***实时
***不足:需要JTAG ICE开发硬件,和目标板。
三.Proteus 中仿真
只需要安装WinAVR和Proteus两个程序, 或者WinAVR,AVR Studio和Proteus三个程序。
1.方法1(两个程序):引入WinAVR 生成cof文件到CPU中,用于在proteus中仿真。
***源文件.c与Proteus工程文件一定要放于同一个目录中。
***可单步调试软件硬件。
2.方法2(三个程序):引入AVR Studio生成的elf文件到Proteus中,elf在AVR Studio工程目录中。
***源文件.c与Proteus工程文件一定要放于同一个目录中。
***问题:.c源文件有两处,src目录中和proteus工程中,会不一致,不好。
解决方法:可以把AVR Studio工程、Proteus工程、C源文件等放于同一目录中,但这会很乱。
四.AVR Studio与Proteus联合仿真调试
需要安装WinAVR, AVR Studio, Proteus三个软件,在AVR Studio中启动Proteus。
三个独立目录结构:
.\src ----放.c .h源文件
.\AVRStudioPRJ\ ----放AVR Studio工程文件(会生成elf,hex等文件)
.\ProteusPRJ\ ----放Proteus工程文件
1.在AVR Studio中仿真(选择Debug/Select Platform and Device/选择Proteus VSM Viewer)
2.Proteus中CPU的程序选择AVR Studio生成的elf文件,可以带目录。
***源文件只放于一处 .\src中就可以了!保证源程序的一致性,但是,*进入Proteus调试是不能看到C源码的(前边说的不同目录的问题),但在AVR Studio中可以看到。
***可以软件和硬件同时仿真运行
***可单步调试
***非实时。
五.如何选择调试方法
可以混合使用!!!根据你项目的情况来选择。
其它:
PIM---Physical Interface Mode
(1)COMPIM---Real RS232 Com to real VTerm connncetion --OK!
(2)Winpcap---real Nic to virul Nic connnection --OK!
(2)Virual USB---virtual USB ---不稳定!要使用Winpcap
问题:1. Proteus VSM SDK 方法
附:Keil for ARM也可以连接到Proteus中。 但Protous当前可支持的ARM有限。
- AVR仿真调试方法---AVR Studio与Proteus联合仿真调试
- keil与proteus联合仿真调试
- keil与proteus联合调试仿真
- Keil 与Proteus的联合仿真调试
- PROTEUS技巧-(1)-IAR AVR 与PROTEUS 的最佳仿真方式
- AVR STUDIO与PROTEUS的联调
- 基于Proteus的串口仿真调试
- Proteus7.3开始集成VSM AVR Studio Viewer,可以和AVR Studio集成调试
- Keil和Proteus联合仿真配置
- 单片机仿真软件 Proteus(纯软件时实仿真PIC,51,AVR,ARM7,MOTO芯片及其外围器件,多种虚拟仪器)论坛集
- OPNET与MATLAB的联合仿真方法
- OPNET与Matlab联合仿真方法
- ARM仿真调试技术
- ARM仿真调试技术
- ARM仿真调试技术
- Keil串口仿真调试
- 430仿真调试
- Keil仿真调试
- linux--apache--CGI
- js玩具——UI组件:Button 按钮
- Linux读书观
- ECshop加入购物车出错总结
- js玩具——UI组件:ObjectUtil 工具类
- AVR仿真调试方法---AVR Studio与Proteus联合仿真调试
- 怎样追踪解决内存溢出的问题
- Linux操作系统常用命令
- RedHat5下面Wireshark安装文件的安装顺序如下所示
- js玩具——UI组件:HtmlUIUtil htmlui工具类
- 惠普董事长称不出售PC部门
- 阿里巴巴通过仲裁拿回阿里云争议域名
- Proteus7.3开始集成VSM AVR Studio Viewer,可以和AVR Studio集成调试
- C++中的const