找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3294|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

Proteus模擬調(diào)試

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:71407 發(fā)表于 2014-12-31 16:26 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
(一)        一般電路的模擬調(diào)試
這里設(shè)計(jì)一個(gè)簡(jiǎn)單的電路,我們通過(guò)這個(gè)電路來(lái)演示一下怎么進(jìn)行模擬調(diào)試的。電路圖如圖3所示。設(shè)計(jì)這個(gè)電路圖的時(shí)候需要在“Category(器件種類)”里找到“BATTERY(電池)”、“FUSE(保險(xiǎn)絲)”、“LAMP(燈泡)”、“POT—LIN(滑動(dòng)變阻器)”、“SWITCH(開關(guān))”這幾個(gè)元器件并添加到對(duì)象選擇器里。另外我們還需要一個(gè)虛擬儀器-電流表。點(diǎn)擊虛擬儀表按鈕 ,在對(duì)象選擇器找到“DC AMMETER(電流表)”,添加到原理圖編輯區(qū)。按照?qǐng)D3布置元器件,并連接好。我們?cè)谶M(jìn)行模擬之前還需要設(shè)置各個(gè)對(duì)象的屬性。選中電源B1,再點(diǎn)擊左鍵,出現(xiàn)了屬性對(duì)話框,如圖4所示。在“Component Reference”后面填上電源的名稱;在“Voltage”后面填上電源的電動(dòng)勢(shì)的值,這里我們?cè)O(shè)置為12V;在“Internal Resistance”后面填上內(nèi)電阻的值1歐姆。其它的元器件的屬性設(shè)置如下:滑動(dòng)變阻器的阻值為50歐姆;燈泡的電阻是10歐姆,額定電壓是12V;保險(xiǎn)絲的額定電流是1A,內(nèi)電阻是0.1歐姆。
點(diǎn)擊菜單欄的“Debug(調(diào)試)”下的 或者點(diǎn)擊模擬調(diào)試按鈕的運(yùn)行按鈕 ,也可以按下快捷鍵“Ctrl+F12”進(jìn)入模擬調(diào)試狀態(tài)。把鼠標(biāo)指針移到開關(guān)的 這個(gè)時(shí)候出現(xiàn)了一個(gè)“+”號(hào),點(diǎn)擊一下,就合上了開關(guān),如果想打開開關(guān)鼠標(biāo)指針移到    將出現(xiàn)一個(gè)“-”號(hào),點(diǎn)擊一下就會(huì)打開開關(guān)的。開關(guān)合上以后我們就發(fā)現(xiàn)燈泡已經(jīng)點(diǎn)亮了,電流表也有了示數(shù)。把鼠標(biāo)指針移到滑動(dòng)變阻器附近的 分別點(diǎn)擊,使電阻變大或者變小,這個(gè)時(shí)候我們會(huì)發(fā)現(xiàn)燈泡的亮暗程度發(fā)生了變化,電流表的示數(shù)也發(fā)生了變化。如果電流超過(guò)了保險(xiǎn)絲的額定電流,這個(gè)時(shí)候保險(xiǎn)絲就會(huì)熔斷的?上г谡{(diào)試狀態(tài)下沒有修復(fù)的命令。我們可以這樣修復(fù)的:按 按鈕停止調(diào)試,然后再進(jìn)入調(diào)試狀態(tài),保險(xiǎn)絲就修復(fù)好了。
(二)、單片機(jī)電路的模擬
★ 電路設(shè)計(jì) 首先我們?cè)O(shè)計(jì)一個(gè)簡(jiǎn)單的單片機(jī)的電路,如圖5所示。電路的核心是單片機(jī)AT89C52,C1、C2和晶振X1構(gòu)成典型的單片機(jī)上電復(fù)位電路;八個(gè)發(fā)光二極管負(fù)極接到單片機(jī)的P2口,二極管的正極通過(guò)限流電阻接到電源的正極,這樣的話,當(dāng)單片機(jī)是低電平時(shí),點(diǎn)亮發(fā)光二極管,單片機(jī)是高電平的時(shí)候,發(fā)光二極管熄滅。四個(gè)按鍵一端接到單片機(jī)的P3.2、P3.3、P3.4、P3.5腳,另一端接地,當(dāng)按下按鍵時(shí)相應(yīng)的單片機(jī)I/O口就接到了低電平。
★ 電路功能 按下按鍵K1時(shí),八個(gè)發(fā)光二極管從LED1到LED8開始輪流發(fā)光,有向下流動(dòng)的效果。當(dāng)按下按鍵K2時(shí)發(fā)光二極管停止發(fā)光。在二極管流動(dòng)發(fā)光的情況下按下按鍵K3,發(fā)光二極管會(huì)向下流動(dòng);按下按鍵K4發(fā)光二極管將向上流動(dòng)。
★ 程序設(shè)計(jì) 程序主要有按鍵檢測(cè)子程序、按鍵處理子程序、流動(dòng)發(fā)光子程序等組成。設(shè)計(jì)好的程序見本刊網(wǎng)站。
★ 程序的編輯 ISIS有自己編輯器的,不過(guò)其功能不敢恭維,我們還是用Ultra Edit吧。點(diǎn)擊菜單欄的“Source”,在下拉菜單點(diǎn)擊“Setup External Text Editor(設(shè)置外部的文本編輯器)”,出現(xiàn)一個(gè)對(duì)話框如圖6所示。在出現(xiàn)的對(duì)話框里點(diǎn)擊“Browse(瀏覽)”按鈕,找到你安裝Ultra Edit的目錄,選中“Uedit32.exe”,點(diǎn)擊打開。其它的可以默認(rèn),最后點(diǎn)擊“OK”,這樣我們就可以在Ultra Edit編輯文件了。
★程序的編譯 ISIS有自帶的編譯器,有ASM的、PIC的、AVR的匯編器等。當(dāng)然我們也可以添加新的編譯器,比如可以加上Keil的C編譯器的,方法如下:點(diǎn)擊菜單欄的“Source”,在下拉菜單點(diǎn)擊“ Define Code Generation Tools(定義代碼編譯工具)”,出現(xiàn)一個(gè)對(duì)話框,如圖7所示。點(diǎn)擊“NEW” 按鈕,在出現(xiàn)的對(duì)話框里找到你安裝Keil目錄下的C51/BIN下的C51.EXE,點(diǎn)擊打開。然后,在Source Extn 后面添寫上“C”;在Obj. Extn后面填上“HEX”;在command
Line后面填上“1%”;其它的默認(rèn)就可以。同樣你也可以把Keil的匯編器添加上,它也在Keil目錄下的C51/BIN文件夾里,是A51.EXE。此時(shí)要在Source Extn 后面添寫上“ASM”,因?yàn)樗幾g的是后綴是ASM的匯編源程序。在Ultra Edit里打開筆者設(shè)計(jì)的huayang.asm文件,然后我們?cè)贗SIS也添加上這個(gè)文件,方法如下:點(diǎn)擊菜單欄的“Source”,在下拉菜單點(diǎn)擊“Add/Remove Source Files(添加或刪除源程序)”,出現(xiàn)一個(gè)對(duì)話框,如圖8所示。點(diǎn)擊對(duì)話框的“NEW”按鈕,在出現(xiàn)的對(duì)話框找到文件huayang.asm,點(diǎn)擊打開;在“Code Generation Tools”的下面找到“ASEM51”,然后點(diǎn)擊“OK”按鈕。設(shè)置完畢我們就可以編譯了,點(diǎn)擊菜單欄的“Source”,在下拉菜單點(diǎn)擊“Build All”,過(guò)一會(huì),編譯的結(jié)果的對(duì)話框(BUILD Log)就出現(xiàn)在我們的面前了,如圖9所示。如果有錯(cuò)誤,在對(duì)話框會(huì)告訴我們是那一行出現(xiàn)了問題,可惜的是,點(diǎn)擊出錯(cuò)的提示,不能跳到出錯(cuò)地方,但是能出現(xiàn)出錯(cuò)的行號(hào),我們?cè)赨ltra Edit添加上行號(hào)了,就知道是什么地方出錯(cuò)了。
★   模擬調(diào)試  到現(xiàn)在,我們編譯得到的結(jié)果還和ISIS原理圖中的單片機(jī)沒有關(guān)系呢。選中單片機(jī)AT89C52,左鍵點(diǎn)擊,在出現(xiàn)的對(duì)話框里點(diǎn)擊Program File后面的 按鈕,找到剛才編譯得到HEX文件,然后點(diǎn)擊“OK”按鈕。好了,我們終于可以模擬了。點(diǎn)擊模擬調(diào)試按鈕的運(yùn)行按鈕 ,進(jìn)入調(diào)試狀態(tài)。點(diǎn)擊按鍵K1,看到發(fā)光觀依次點(diǎn)亮了嗎?也試試其它的按鍵,看看效果。
我們還可以單步模擬調(diào)試,點(diǎn)擊 ,進(jìn)入單步調(diào)試狀態(tài),這個(gè)時(shí)候應(yīng)該出現(xiàn)如圖10所示對(duì)話框。在這個(gè)對(duì)話框里,我們可以設(shè)置斷點(diǎn)的。鼠標(biāo)點(diǎn)擊一下程序語(yǔ)句,此時(shí)這個(gè)語(yǔ)句變?yōu)楹谏,點(diǎn)擊右鍵,出現(xiàn)一個(gè)菜單,點(diǎn)擊 按鈕,就在相應(yīng)的語(yǔ)句設(shè)置了斷點(diǎn),當(dāng)然你也可以點(diǎn)擊右上角的 按鈕,也可以設(shè)置斷點(diǎn)的。點(diǎn)擊 按鈕可以取消斷點(diǎn)。
在單步模擬調(diào)試狀態(tài)下,點(diǎn)擊菜單欄的“Debug”,在下拉菜單的最下面我們看到了如圖11的情形。點(diǎn)擊Simulation Log會(huì)出現(xiàn)和模擬調(diào)試有關(guān)的信息;點(diǎn)擊8051 CPU FSR Memory會(huì)出現(xiàn)特殊功能寄存器(FSR)窗口;點(diǎn)擊8051 CPU Registers出現(xiàn)一般寄存器窗口;8051 CPU Internal

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表