Keil仿真窗体2

再看上一章的图:

 

Project Window 就是我们经常看到的KEILC界面位于左边的工程区,没什么好介绍的。

Output Window 输出窗口,用的不是很多,不过有个比较好的功能,就是运行中插入指令(不知道这么说是否规范:)大家看这个框上的输入栏:

在上面可以写语句的哦,例如:EA=1,那么EA就变了1咯,P1=0X0,如果P1上接了LED,就会亮,是不是很方便??

Source Browser 文件信息浏览,这里可以看到你的工程有些什么函数,变量,宏等等等的信息,我下面的是打开了DX的DEMO程序的Source Browser,对于一个大型工程来说,这个窗口让你浏览到所有的信息的功能,对于调试和维护来说是很有用的。

 

好了,继续说VIEW上的其它功能,Source Browser后面的一堆东西诸如Disassembly Window和Watch & Call Stack Window等都是前面章节说过的了,往下看还有Workbook Mode,其实是一种比较方便的浏览模式,选了它后就可以以工作页的模式浏览你的代码文件了,说你不懂的话,就看效果吧:

懂了吧??

再往下看就是Include Dependencies 选择了后就可以显示每个C文件所包含的H头文件了。一般都选上的。

然后就是option了,一般都不去动他的了,除非你觉得显示的字体和颜色不合你心意,就去动它吧。

好了,把VIEW窗的东西都说完了,以下就是说Project Window了,

 

Project Window有3页,这里只说说中间那页Regs,其实也没什么的,一看就知道是寄存器的值了,说说那个SP,就是你当前的SP指针了,sp_max就是SP到过的最深的位置,当你程序运行一段时间后,就可以看看这个sp_max大概知道堆栈最深到哪里。

PC就是当前的PC指针咯,然后下面的states就是程序已经运行了多少个机器周期,再下面的sec就是运行的时间,这个时间跟你之前设置的晶振值是有关的,如果你的晶振值是12M,那么你可以看到states 和 sec 数字上是一样的,很简单,因为12M的机器周期是1US嘛。

接下来介绍片上外围仿真菜单了:

 

peripheral就是外围的意思了。要注意的是,如果你在开始建立工程的时候选择了不同的CPU,这个菜单可能是有所不同的哦,上面的就是atmel公司的at89c52,以下这个是SST的代表产品:SST89E564RD的peripheral:

 

看到了吧,多了个SPI接口的。其实这个peripheral菜单里面的东西是根据不同的51单片机而有所不同的,看到这里大家应该感觉到KEIL的强大功能了吧。KEIL每次升级,除了编译器的改进外,更多的是加进不同MCU的支持。发展到现在,基本上市场上能买到的51,99% KEIL的芯片库都会有。

好了,废话不说,来看看Interrupt菜单的东西:

 

其实一目了然,就是中断表啦,这里对应的每个中断的名字,对应的向量地址,是否有中断请求,中断是否允许,优先级等东西,窗口下面的栏目就是每个中断对应的一些标志。

正如上面所说,当你选择不同单片机的时候,这里的形式也有所不同,我选的是AT89C52,所以就多出一个Timer2,P1.1/T2EX出来了,关于T2,以后回有详细的章节说明。

接着是IO:

 

这个不用我多说了吧,不过大家看看2051的IO:

 

IO仿真窗有个要说一下的地方:

 

大家看到了,有钩的是代表1,没钩的代表0。对于上面的P1,它有两排钩钩的,下排的就是管脚状态,上排的是端口锁存器状态,某些时候锁存的值并不是管脚的值,例如说,你置P10为‘1’,但实际上外围的P10已经是接到地上的了,那么锁存的就是1,但管脚的却是0,懂了么?

再看看串口窗:

 

有人弄的单片机程序总不知道串口的实际波特率被自己设为多少了,其实可以通过软件仿真的这个串口看到的。你看到那个‘audrate’就是波特率了,实际应该是‘baudrate’干吗印少了个b我就不知道了。

再来就是TIMER窗,根据单片机不同,会出现不同数目的TIMER,这里以TIMER0为例:

 

其实都不用多说些什么,都是TIMER的设置状态而已。

这里解说一下,上面的几个外围窗的东西都会根据你的程序的运行状态而改变的,例如你设置了定时器0,那么对应的窗口,也就是上面的那个,各个值就会有所改变,最明显的就是TH0,TL0的值,在运行中会不停的自加。外围窗上的东西大部分都是可以在仿真过程中认为修改的,例如你想定时器在下一个机器周期马上进入中断,那么你可以把TH0,TL0的值都该为0xff,那么再单步一下它就中断来了,有或者你索性在TR0上面打个钩,也就是直接置中断标志,那也会产生中断。对于INT的下降沿中断,可以打开对应的P32,P33的IO窗口,然后把IO脚置1后再置0,就会产生中断咯。是不是很方便呢:)

好了,KEIL软仿真技巧基本教到这里,对于聪明的初学者,到这阶段应该能基本熟练KEIL的操作了吧?之后我们正式开始以程序设计为主了,后面的内容将会更多地解说程序设计的一些思想和技巧。如果C语言没过关,单片机基础没扎实的朋友们,请多复习一下相关的书籍。下一章,将是我们单片机软件工程师之路的起点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值