Proteus亲密接触
2013-02-23
标签: Proteus

关注 Proteus有一段时间了,今天终于自己动手仿真了一次。刚开始用还不太习惯这个东东。比如一般类似软件都是左键选取,右键属性,而Proteus却相反,其大致操作:右键选取; 左击所选为其属性;右击所选为删除。另外左击所选时,根据位置的不同,可选择不同的属性,比如左击元件体,打开元件的属性,击元件下方的< text>则是为对应的属性……。

每个元件下面的这个感觉应该是放注释的,由于看着它不爽,总想将其去掉,开始采用的办法是让它为空格,即右击选中元件后,左击 ,在弹出对话框的Text一栏中后面加上一个空格。这样元件显示时就看不到文字。后来发现原来这个具有隐藏属性,在菜单Template中有个set design defaults,其中有个Show hidden text? 将其去掉就不会再显示的内容了。

还有个问题,不知道所用元件在哪个库里。初学没办法,只好在网上下载了一些别人的例子,察看其中元件的属性,记下其名字,再到自己的Design中在 Keywords里输入元件名查找,虽然有些麻烦,不过还挺有效。我想以后用熟了,哪个元件在什么库里应该就比较清楚了。

以前看的多数的Proteus的资料都是讲Proteus和Keil联合调试的,所以一直有个错觉,就是用Proteus仿真单片机必须要用Keil。经过今天的实战才明白原来不是这样,只要在MCU的属性中的"Program File"里选中用Keil或是其他什么软件生成的HEX文件(即要写入真正的板子上MCU的程序)即可,这样就相当于在电路里放了一块写好程序的 MCU。连好外围器件后就可以仿真了。

另外还发现,MCU的时钟电路(即晶振部分)也是可以不接的,同样可以在MCU的属性里设置,如在Clock Frequency 里设置为12MHz就可以了。对Proteus默认的颜色感觉不爽, 按理说应该可以自己设置一些颜色参数。经过一番摸索,发现元件的颜色,连线的颜色,背景颜色等都可以在Template菜单下对应项中设置。

仿真过程中还遇到了一个问题,我开始选用的发光二极管叫做LED,怎么运行它都不发光,但电平显示正常,又用电压表,电流表测了一下其值也是正常的。没办法,又看了一下例子,发现人家用的LED名字叫做LED-RED, 回到我的Design中以LED-为Keywords搜一下库,看下结果明白了,那个LED应该就是连电路时用的,仿真时不发光,若要其仿真时发光必须用有颜色属性的LED,我的实验中用到了LED-RED和LED-GREEN(红和绿)。

用Proteus搭建的电路图如下:

所用汇编程序如下:

org0000h

mova,#0feh

loop:movp0,a

lcall delay

rla

ajmploop

delay: movr7,#100;djnz为二周期指令,机器周期为振荡周期的12倍.所以延时时间为:

temp1: movr6,#02h;100×2×255×2×12×(1/12) =100ms,

temp2: movr5,#0ffh

djnzr5,$

djnzr6,temp2

djnzr7,temp1

ret

end

用Keil编译,将生成的HEX文件载入电路中的MCU,仿真结果如下(红为高电平,蓝为低电平):

可能会用到的工具/仪表
本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号