1、keil软件与软件与Proteus软件的联机调试软件的联机调试 张张 凯凯内容提要内容提要n1)目的目的n熟悉keil集成开发环境和Proteus仿真软件的使用,完成两个软件的联机调试,为下一步学习大好基础。n2)原理原理n分别在keil软件和Proteus软件中进行一些设置,两个软件便可以进行对同一个程序的联机调试。n3)过程过程n下面以点亮一个LED灯为例,来介绍整个过程。步骤一:建立步骤一:建立keil工程。工程。1)打开keil软件,如下图选择新建工程。2)将工程起名为oneled保存在新建的工程文件夹oneled中。3)选择CPU,我们这里选择Atmel公司的AT89S52 4)选好
2、芯片确定后,弹出提示框,问是否添加一些文件,我们这里选“否”。5)下面新建文本文档,用来编写源程序。按下界面上的图标进行建立,如下图所示。6)按下保存图标,保存新建的文件以“oneled.c”文件名保存在工程文件夹下。如下图。7)将新建的文件加入工程中。在Source Group 1上点鼠标右键,在弹出的菜单上选择Add Files选项 在弹出的对话框中选择工程文件夹下刚才新建的“oneled.c”文件。点击Add,再点击Close关闭对话框。在下图中可以看到文件已经加入到了Source Group 1中。按下最大化按钮,可使编辑框最大化。8)设置工程,让其编译时输出十六进制可执行文件。如图在
3、target 1上点右键选设置。如下图,将Create HEX File 选中,按确定退出。至此,工程文件已经建立设置完毕,在开始写源程序之前,我们先用Proteus软件设计出led灯的电路图。步骤二:设计电路图。步骤二:设计电路图。1)首先选择要用的器件。如下图,按下P 图标进行器件选择。输入单片机芯片名AT89C52,器件便会出现在右侧列表中。如下图。双击列表中的芯片名,它便会加入到主界面的器件表中,如下图。同样,我们在找到LED小灯。这里我们用亮时为黄色的小灯,如下图。2)开始画电路图。首先选中器件列表中的AT89C52,然后在设计区点鼠标左键,该器件就会出现。同样,加入LED灯,并用鼠
4、标在P0.0口与LED灯将二者联通。在左侧列表中如下图选中相应图标下的电源选项。在设计区加入电源,并按下图进行连接。到这里电路已将设计完毕,下面我们到Keil中进行相关程序的编写。步骤三:编辑,编译并运行程序。步骤三:编辑,编译并运行程序。对源程序进行编译。按下界面上的编译按键进行编译程序。如下图。可以看到编译成功,并生成了hex可执行文件,该文件在工程文件夹下。在Proteus中的单片机芯片上点鼠标右键,将其选中。如下图,选中的器件将变成红色。然后再在上面点鼠标左键,打开设置界面。如下图,我们点Program File后的图标,将生成的HEX可执行文件加入芯片中。我们选择工程文件夹下生成的十
5、六进制hex文件。加入文件成功,如下图。我们按下OK键退出。在设计板上其他地方点击鼠标右键,可以取消器件的选中状态。点击主界面左下角的运行按键,可以看到led小灯亮了起来。如下图。按下停止按键可停止执行。步骤四:联机调试。步骤四:联机调试。1)对两个软件进行一些设置。在keil软件工程的设置中在Debug界面进行如下图的选择。在Proteus中按下图选中相关选项。3)选择oneled源程序界面,按下单步执行按键,出现黄色箭头指向源程序的主函数的第一行。4)再次按下单步执行按键,“P00=0;”此条语句便执行了,可以看到右边的led灯已经亮了。5)再次按下调试按键,停止调试。6)在关闭Proteus之前,将文件保存,一般都保存到工程文件夹下,文件名与工程名相同。到这里,我们整个实验过程就全部结束了。下面我们看一下工程文件夹。1是源程序,2是Proteus软件设计的仿真电路图,3是keil工程文件,4是编译生成的十六进制可执行文件。其他的文件是建立工程时生成的。结结 束束