微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 浅谈三种单片机程序调试方法

浅谈三种单片机程序调试方法

时间:11-24 来源:互联网 点击:
一、仿真器调试(硬件仿真)
最近咱们学院购买了广州致远电子有限公司的周立功DP-51PROC试验仪,上周四下午,我们去倒腾了一番,感觉这试验仪对学习51系列单片机还是蛮有用处的,特别是结合其仿真器进行调试程序还是很好的。


产品官网介绍http://www.embedtools.com/pro_kaifa/51/51proc.asp

周立功博客:http://blog.sina.com.cn/armfans

这仪器虽然每次弄起来挺麻烦的,但是能完成一些学习中不能在软件中仿真的实验。

通过keil 2借助试验仪上的使用TKSMonitor51仿真器,能在keil里实时调试。貌似这台机子1200左右吧。

二、软件仿真之外部调试

硬件能仿真调试,软件也能,以Proteus 7为例,安装keil驱动后就能在keil里进行远程调试,不需要物理的调试连接线(This plug-in for the Keil IDE allows you to use the Keil debugging environment to single step code running on simulated hardware inside Proteus VSM. Think of it as like working with an In Circuit Emulator or Debugger (ICE or ICD) but without any physical hardware.)


keil驱动官网下载地址http://www.labcenter.com/support/vdmkeil.cfm但是注意:官网下的驱动不能用!!!安装不了!!!

我再给出网盘下载地址吧:http://www.dbank.com/linkwaitaudit.html只支持keil 2和keil 3

操作如下:

1.依然生成Hex文件,并加载到芯片中

2.在keil 中选择调试如图:



3.好了,现在跟DP-51PROC中一样了直接在keil中点调试就行了。如图:


当然如果不是用keil作为编译器的话,比如Matlab编译的话,也可以在Matlab中调试。在Matlab中调试或许就不叫远程调试了,因为以Proteus为例,根本就不需要打开Proteus软件,所有工作均在Matlab中完成。

三、软件仿真之内部调试

一般的仿真软件都支持内部调试,以Proteus为例,就支持好几种调试源文件。

具体操作:

1.不再是加载Hex文件了,用keil编译之前先在output选项卡的可执行文件名项的工程名字后加上.omf 如图:


2.然后在Proteus里加载omf文件。


3.在Proteus里点逐帧运行,或者直接点调试,如果没出现调试框,可以点芯片右键调出源代码。


总结:最后一项是串行通信实验,把一个单片机块复制一份然后把两单片机串行接口互联。通过keil生成的omf调试文件来进行调试,相比于前两项是最简单最方便的方法。因为不需要昂贵的仿真器,不需要安装额外的驱动,而且能试现多芯片多工程多源代码调试。这是前两项所不能比的,因此这是一种低成本、方便高效的方法。但是有些硬件不能在程序中很好的仿真,还需要借助硬件调试。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top